potmat / homebridge-google-nest-sdm

A Homebridge plugin for Google Nest devices that uses the Google Smart Device Management API. Supports Cameras, Doorbells, Displays, and Thermostats. Includes support for HomeKit Secure Video.
ISC License
142 stars 17 forks source link

Plugin initialization failed, there was a failure with event subscription #12

Closed TheBartoMan closed 2 years ago

TheBartoMan commented 2 years ago

I have 3 thermostats on my account.

I have followed the instructions, and I still get this error showing. (I have hidden my project code in the message below)

[homebridge-google-nest-sdm] Plugin initialization failed, there was a failure with event subscription. Did you read the readme: https://github.com/potmat/homebridge-google-nest-sdm#where-do-the-config-values-come-from StatusError: Requested project not found or user does not have access to it (project=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx). Make sure to specify the unique project identifier and not the Google Cloud Console display name. at MessageStream._onEnd (/homebridge/node_modules/homebridge-google-nest-sdm/node_modules/@google-cloud/pubsub/src/message-stream.ts:301:20) at MessageStream._onStatus (/homebridge/node_modules/homebridge-google-nest-sdm/node_modules/@google-cloud/pubsub/src/message-stream.ts:342:12) at ClientDuplexStreamImpl. (/homebridge/node_modules/homebridge-google-nest-sdm/node_modules/@google-cloud/pubsub/src/message-stream.ts:198:38) at Object.onceWrapper (node:events:510:26) at ClientDuplexStreamImpl.emit (node:events:390:28) at Object.onReceiveStatus (/homebridge/node_modules/homebridge-google-nest-sdm/node_modules/@grpc/grpc-js/src/client.ts:675:16) at Object.onReceiveStatus (/homebridge/node_modules/homebridge-google-nest-sdm/node_modules/@grpc/grpc-js/src/client-interceptors.ts:424:48) at /homebridge/node_modules/homebridge-google-nest-sdm/node_modules/@grpc/grpc-js/src/call-stream.ts:323:24 at processTicksAndRejections (node:internal/process/task_queues:78:11) { code: 5, details: 'Requested project not found or user does not have access to it (project=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx). Make sure to specify the unique project identifier and not the Google Cloud Console display name.', metadata: Metadata { internalRepr: Map(0) {}, options: {} }

potmat commented 2 years ago

Did you try using the gcpProjectId config value?

evk0122 commented 2 years ago

I had this error too. In my case it was the wrong PubSub Subscription ID. It must look like: "projects/your-gcp-project-id/subscriptions/your-subscriptionid"

It is confusing, because there is "Pub/Sub topic id" on Device Access Console, where you create project. This is not the one you need. You need the one from those command line calls explained in the installation manual.

I also added gcpProjectId - trying to add this one is also a good idea.

TheBartoMan commented 2 years ago

That worked perfectly thank you