birkir / homebridge-plugin-eufy-security

Eufy security homebridge plugin
Apache License 2.0
84 stars 18 forks source link

Nothing shows in Homebridge App #4

Open brent7320 opened 3 years ago

brent7320 commented 3 years ago

I have installed the plugin in homebridge and supplied valid credentials, no accessories ever appear. Are there any additional instructions we should be following? I have restarted Homebridge multiple times, nothing ever appears. This is a Battery 2K Doorbell.

Plugin version - 0.0.3 Homebridge - v1.2.3 NPM - 6.14.7

12/1/2020, 8:17:03 PM] [EufySecurityHomebridgePlugin] credentials found. reusing them...

birkir commented 3 years ago

Try the 0.1.1 version I just published. Start with homebridge -D and see if there are any logs

Techlover22 commented 3 years ago

I have installed the plugin in homebridge and supplied valid credentials, no accessories ever appear. Are there any additional instructions we should be following? I have restarted Homebridge multiple times, nothing ever appears. This is a Battery 2K Doorbell.

Plugin version - 0.0.3 Homebridge - v1.2.3 NPM - 6.14.7

12/1/2020, 8:17:03 PM] [EufySecurityHomebridgePlugin] credentials found. reusing them...

I'm having the same issue too.

Edit: I removed the log due to security reasons.

DaveM8686 commented 3 years ago

I've updated to 0.1.1 and I'm still having this exact issue, including the part where the only thing the log says is [EufySecurityHomebridgePlugin] credentials found. reusing them...

I have the original 2K Battery doorbell (the one that connects to the Home Base 2).

ktsi commented 3 years ago

Hi!

I have used a previous version of the plug-in with the exact same Doorbell. It worked after installing twice.

DaveM8686 commented 3 years ago

I've uninstalled and reinstalled so many times. I've installed while it's already installed. I've tried from the terminal and from the HomeBridge UI. I've restarted the server repeatedly. Set up a new guest account for the doorbell, turned off 2FA, nothing.

I'm running HomeBridge on a Synology NAS through Docker, if that makes a difference.

brent7320 commented 3 years ago

I'm having the same issue too. I'm sending you a zip of the home bridge.log file

homebridge.log.zip

You might want to take this attachment down and change your eufy password ASAP as it was in the above log file.

brent7320 commented 3 years ago

I ran homebridge in debug mode and below is the only additional information displayed in the logs.

[12/2/2020, 4:35:38 AM] [EufySecurityHomebridgePlugin] Initializing EufySecurityHomebridgePlugin platform... [12/2/2020, 4:35:38 AM] [EufySecurityHomebridgePlugin] Config { username: 'xxx@xxx.com', password: 'xxxxx', platform: 'EufySecurityHomebridgePlugin' } [12/2/2020, 4:35:38 AM] [EufySecurityHomebridgePlugin] Finished initializing platform: undefined

dshafik commented 3 years ago

I'm having this exact same issue. I spent some time debugging with log files and this like seems to be where it bails:

https://github.com/birkir/homebridge-plugin-eufy-security/blob/master/src/platform.ts#L82

I cannot get passed that. I do currently have 2FA turned off for testing. I have a wired doorbell, but I don't think it matters in this case.

brent7320 commented 3 years ago

I'm having this exact same issue. I spent some time debugging with log files and this like seems to be where it bails:

https://github.com/birkir/homebridge-plugin-eufy-security/blob/master/src/platform.ts#L82

I cannot get passed that. I do currently have 2FA turned off for testing. I have a wired doorbell, but I don't think it matters in this case.

I initially had 2FA turned on as well, but disabled for testing. Not sure if that has something to do with it not working or not.

DaveM8686 commented 3 years ago

Same! I had 2FA on at first, and it won't work for me. Even rolling back my config file and completely setting up the plug-in from scratch, it still says it found existing credentials and is reusing them. I think this is the problem.

raphb83 commented 3 years ago

I got same issue. Got the wired door bell. Installed version 0.1.1 of plugin. installing twice did not help.

Startup logs says:

2.12.2020, 15:47:47 (node:9291) UnhandledPromiseRejectionWarning: Error: Request failed: https://security-app-eu.eufylife.com/v1/passport/login -> 26052 - need validate code 2.12.2020, 15:47:47 at /home/hoobs/.hoobs/node_modules/eufy-node-client/build/http/http.utils.js:24:15 2.12.2020, 15:47:47 at Generator.next () 2.12.2020, 15:47:47 at fulfilled (/home/hoobs/.hoobs/node_modules/eufy-node-client/build/http/http.utils.js:5:58) 2.12.2020, 15:47:47 at runMicrotasks () 2.12.2020, 15:47:47 at processTicksAndRejections (internal/process/task_queues.js:97:5) 2.12.2020, 15:47:47 (node:9291) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag --unhandled-rejections=strict (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 1) 2.12.2020, 15:47:47 (node:9291) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

DaveM8686 commented 3 years ago

I actually tried deleting the "eufy-security-credentials.json" file and running again. It found the new credentials in this case, but still nothing showing in Home.

dshafik commented 3 years ago

@raphb83 do you have 2 Factor Auth (2FA) enabled? I believe I saw the same behavior when I did. Currently 2FA isn't supported.

dshafik commented 3 years ago

@DaveM8686 same here. I had hoped it was bad credentials due to the 2FA issue, but it didn't help.

Techlover22 commented 3 years ago

@raphb83 do you have 2 Factor Auth (2FA) enabled? I believe I saw the same behavior when I did. Currently 2FA isn't supported.

I'm having the same issue but without 2FA...

dshafik commented 3 years ago

With some more debugging and patience (takes 5+ minutes) I finally got an error out of: https://github.com/birkir/homebridge-plugin-eufy-security/blob/master/src/platform.ts#L82

{ RequestError: read ECONNRESET
    at ClientRequest.request.once (/homebridge/node_modules/homebridge-plugin-eufy-security/node_modules/got/dist/source/core/index.js:953:111)
    at Object.onceWrapper (events.js:286:20)
    at ClientRequest.emit (events.js:203:15)
    at ClientRequest.origin.emit.args (/homebridge/node_modules/homebridge-plugin-eufy-security/node_modules/@szmarczak/http-timer/dist/source/index.js:39:20)
    at TLSSocket.socketErrorListener (_http_client.js:401:9)
    at TLSSocket.emit (events.js:198:13)
    at emitErrorNT (internal/streams/destroy.js:91:8)
    at emitErrorAndCloseNT (internal/streams/destroy.js:59:3)
    at process._tickCallback (internal/process/next_tick.js:63:19)
    at TLSWrap.onStreamRead (internal/stream_base_commons.js:111:27)
  name: 'RequestError',
  code: 'ECONNRESET',
  timings:
   { start: 1606905673656,
     socket: 1606905673656,
     lookup: 1606905673674,
     connect: 1606905673762,
     secureConnect: 1606905675424,
     upload: 1606905673657,
     response: undefined,
     end: undefined,
     error: 1606905675794,
     abort: undefined,
     phases:
      { wait: 0,
        dns: 18,
        tcp: 88,
        tls: 1662,
        request: NaN,
        firstByte: undefined,
        download: undefined,
        total: 2138 } } }

This is a pretty opaque error in that it just means that the Eufy server abruptly closed the connection (probably due to a timeout after 5m!).

Because I catch that exception and return from the function, it then tries to find the devices, and results in this:

UnhandledPromiseRejectionWarning: RequestError: getaddrinfo EAI_AGAIN security-app.eufylife.com security-app.eufylife.com:443
    at ClientRequest.request.once (/homebridge/node_modules/homebridge-plugin-eufy-security/node_modules/got/dist/source/core/index.js:953:111)
    at Object.onceWrapper (events.js:286:20)
    at ClientRequest.emit (events.js:203:15)
    at ClientRequest.origin.emit.args (/homebridge/node_modules/homebridge-plugin-eufy-security/node_modules/@szmarczak/http-timer/dist/source/index.js:39:20)
    at TLSSocket.socketErrorListener (_http_client.js:401:9)
    at TLSSocket.emit (events.js:198:13)
    at emitErrorNT (internal/streams/destroy.js:91:8)
    at emitErrorAndCloseNT (internal/streams/destroy.js:59:3)
    at process._tickCallback (internal/process/next_tick.js:63:19)
    at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:56:26)
(node:6518) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1)
(node:6518) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

This is a DNS issue. So I figured out the IP for security-app.eufylife.com (it's a CNAME to AWS, which then resolves to multiple IPs, I picked the first one), and added it to my /etc/hosts and now I get:

{ HTTPError: Response code 401 (Unauthorized)
    at Request.request.once (/homebridge/node_modules/homebridge-plugin-eufy-security/node_modules/got/dist/source/as-promise/index.js:117:42)
    at process._tickCallback (internal/process/next_tick.js:68:7)
  name: 'HTTPError',
  code: undefined,
  timings:
   { start: 1606957517771,
     socket: 1606957517771,
     lookup: 1606957517771,
     connect: 1606957517880,
     secureConnect: 1606957517984,
     upload: 1606957517771,
     response: 1606957518074,
     end: 1606957518074,
     error: undefined,
     abort: undefined,
     phases:
      { wait: 0,
        dns: 0,
        tcp: 109,
        tls: 104,
        request: NaN,
        firstByte: 303,
        download: 0,
        total: 303 } } }`

and when trying to find devices:

UnhandledPromiseRejectionWarning: HTTPError: Response code 401 (Unauthorized)
    at Request.request.once (/homebridge/node_modules/homebridge-plugin-eufy-security/node_modules/got/dist/source/as-promise/index.js:117:42)
    at process._tickCallback (internal/process/next_tick.js:68:7)
(node:7344) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1)
(node:7344) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

This might be caused by my docker-in-virtualbox-bridged-bridged networking, so I'd love to know if anyone else can confirm.

If you want to try yourself, edit node_modules/homebridge-plugin-security-eufy/dist/platform.js in your Homebridge installation directory, and look for this line around line 65 (I've added multiple debug lines above, not sure how many):

await this.httpService.registerPushToken(fcmToken);

and replace with:

        try {
                await this.httpService.registerPushToken(fcmToken);
        } catch (e) {
                this.log.debug("EXCEPTION!");
                this.log.debug(e);
                return;
        }
brent7320 commented 3 years ago

If you want to try yourself, edit node_modules/homebridge-plugin-security-eufy/dist/platform.js in your Homebridge installation directory, and look for this line around line 65 (I've added multiple debug lines above, not sure how many):


await this.httpService.registerPushToken(fcmToken);

and replace with:


        try {

                await this.httpService.registerPushToken(fcmToken);

        } catch (e) {

                this.log.debug("EXCEPTION!");

                this.log.debug(e);

                return;

        }

I was able to find my cached credential .Json file and I deleted it. After doing that and putting in the log statements you stated above, i was able to duplicate what you are seeing. I am not running this in docker though, this is homebridge running on an Ubuntu VM.


[12/3/2020, 2:39:03 AM] [EufySecurityHomebridgePlugin] EXCEPTION!
[12/3/2020, 2:39:03 AM] [EufySecurityHomebridgePlugin] { HTTPError: Response code 401 (Unauthorized)
    at Request.request.once (/usr/lib/node_modules/homebridge-plugin-eufy-security/node_modules/got/dist/source/as-promise/index.js:117:42)
    at process._tickCallback (internal/process/next_tick.js:68:7)
  name: 'HTTPError',
  code: undefined,
  timings:
   { start: 1606984743636,
     socket: 1606984743636,
     lookup: 1606984743664,
     connect: 1606984743703,
     secureConnect: 1606984743748,
     upload: 1606984743636,
     response: 1606984743794,
     end: 1606984743794,
     error: undefined,
     abort: undefined,
     phases:
      { wait: 0,
        dns: 28,
        tcp: 39,
        tls: 45,
        request: NaN,
        firstByte: 158,
        download: 0,
        total: 158 } } }
[12/3/2020, 2:39:03 AM] [EufySecurityHomebridgePlugin] Executed didFinishLaunching callback
(node:670387) UnhandledPromiseRejectionWarning: HTTPError: Response code 401 (Unauthorized)
    at Request.request.once (/usr/lib/node_modules/homebridge-plugin-eufy-security/node_modules/got/dist/source/as-promise/index.js:117:42)
    at process._tickCallback (internal/process/next_tick.js:68:7)
(node:670387) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1)
(node:670387) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
raphb83 commented 3 years ago

@raphb83 do you have 2 Factor Auth (2FA) enabled? I believe I saw the same behavior when I did. Currently 2FA isn't supported.

As far as i know i do not have 2FA enabled. Sorry about the question: where do i have to look if it is enabled?šŸ˜¬

hicksbjacob commented 3 years ago

I am having the same issue. I dont have 2FA enabled. after putting in my credentials and plug in nothing appears in accessories

asgertler commented 3 years ago

Also having this issue. On 0.1.1, just got my battery doorbell cam, no 2FA, but nothing shows up in Home.

cmfrazier commented 3 years ago

Getting this error when attempting to use the plugin image

cmfrazier commented 3 years ago

I deleted my eufy-security-credentials.json file as I had changed my password after turning off 2FA and I'm now getting this:

12/4/2020, 10:42:26] [EufySecurityHomebridgePlugin] credentials found. reusing them...
(node:31054) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 shutdown listeners added to [HomebridgeAPI]. Use emitter.setMaxListeners() to increase limit

and this

[12/4/2020, 10:37:59] [EufySecurityHomebridgePlugin] wait a short time (5sec)...
(node:30864) UnhandledPromiseRejectionWarning: HTTPError: Response code 401 (Unauthorized)
    at Request.<anonymous> (/usr/local/lib/node_modules/homebridge-plugin-eufy-security/node_modules/got/dist/source/as-promise/index.js:117:42)
    at runMicrotasks (<anonymous>)
    at processTicksAndRejections (internal/process/task_queues.js:97:5)
(node:30864) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag `--unhandled-rejections=strict` (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 4)
(node:30864) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
a-metasyntactic commented 3 years ago

If it's a 2FA related problem, you can try creating an new account and inviting to have read only access to the cameras/doorbells you want to expose. Then use that new account's credentials for this plugin and you can keep 2FA enabled for your admin account.

I'd suggest that's a better and more secure way of setting this up anyway.

DaveM8686 commented 3 years ago

If it's a 2FA related problem, you can try creating an new account and inviting to have read only access to the cameras/doorbells you want to expose. Then use that new account's credentials for this plugin and you can keep 2FA enabled for your admin account.

I'd suggest that's a better and more secure way of setting this up anyway.

Iā€™ve done this and it didnā€™t fix anything. I created a whole new account that never had 2FA, deleted the credentials file, uninstalled the plugin, then redid it all and itā€™s the same problem.

birkir commented 3 years ago

I added a option to disable push if you like (and fixed the issue that it blocks further code to run).

I also added some debug parameters so you should be able to report better logs for me.

cmfrazier commented 3 years ago

@birkir After updating and enabling debug

[12/5/2020, 12:23:32] [EufySecurityHomebridgePlugin] Initializing EufySecurityHomebridgePlugin platform...
[12/5/2020, 12:23:32] [EufySecurityHomebridgePlugin] Config {
  username: 'email-redacted',
  password: 'password-redacted',
  platform: 'EufySecurityHomebridgePlugin'
}
[12/5/2020, 12:23:32] [EufySecurityHomebridgePlugin] Finished initializing platform: undefined
[12/5/2020, 12:23:33] [EufySecurityHomebridgePlugin] push client disabled
[12/5/2020, 12:23:33] [EufySecurityHomebridgePlugin] Executed didFinishLaunching callback
(node:17243) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 shutdown listeners added to [HomebridgeAPI]. Use emitter.setMaxListeners() to increase limit
raphb83 commented 3 years ago

I added a option to disable push if you like (and fixed the issue that it blocks further code to run).

I also added some debug parameters so you should be able to report better logs for me.

Version 0.1.2 working with 2FA disabled and wired door bellšŸ˜ƒ Great

dshafik commented 3 years ago

I added a option to disable push if you like (and fixed the issue that it blocks further code to run).

What does this disable? Notifications?

I also added some debug parameters so you should be able to report better logs for me.

Great!

Here's my current (redacted) logs:

[12/5/2020, 12:32:44 PM] [EufySecurityHomebridgePlugin] Initializing EufySecurityHomebridgePlugin platform...
[12/5/2020, 12:32:44 PM] [EufySecurityHomebridgePlugin] Config {
  username: 'me@example.com',
  password: 'PASSWORDHERE',
  enablePush: false,
  platform: 'EufySecurityHomebridgePlugin'
}
[12/5/2020, 12:32:44 PM] [EufySecurityHomebridgePlugin] Finished initializing platform: undefined
[12/5/2020, 12:32:44 PM] [EufySecurityHomebridgePlugin] push client disabled
[12/5/2020, 12:32:44 PM] [EufySecurityHomebridgePlugin] Executed didFinishLaunching callback

(node:65778) UnhandledPromiseRejectionWarning: HTTPError: Response code 401 (Unauthorized)
    at Request.<anonymous> (/Users/dshafik/.nvm/versions/node/v14.15.1/lib/node_modules/homebridge-plugin-eufy-security/node_modules/got/dist/source/as-promise/index.js:117:42)
    at processTicksAndRejections (internal/process/task_queues.js:93:5)
(Use `node --trace-warnings ...` to show where the warning was created)
(node:65778) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag `--unhandled-rejections=strict` (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 1)
(node:65778) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

One issue that can be easily fixed is:

[12/5/2020, 12:32:44 PM] [EufySecurityHomebridgePlugin] Finished initializing platform: undefined

--       this.log.debug("Finished initializing platform:", this.config.name);
++       this.log.debug("Finished initializing platform:", this.config.platform);

But that's not going to impact anything of consequence.

DaveM8686 commented 3 years ago

Still nothing for me, with push on or off.

DaveM8686 commented 3 years ago

Is there a dependent package for this? Like a camera or doorbell one?

LikeYourMommaToldYou commented 3 years ago

I have the newest version. 0.1.2 and my logs look like this. EufySecurityHomebridgePlugin] failed to confirm push token (node:93803) UnhandledPromiseRejectionWarning: Error: Request failed: https://security-app.eufylife.com/v1/passport/login -> 26006 - 504 Gateway Timeout at /usr/local/lib/node_modules/homebridge-plugin-eufy-security/node_modules/eufy-node-client/build/http/http.utils.js:24:15 at Generator.next () at fulfilled (/usr/local/lib/node_modules/homebridge-plugin-eufy-security/node_modules/eufy-node-client/build/http/http.utils.js:5:58) at runMicrotasks () at processTicksAndRejections (internal/process/task_queues.js:97:5) (node:93803) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag --unhandled-rejections=strict (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 1) (node:93803) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

cmfrazier commented 3 years ago

@raphb83 how are you running Homebridge? Pi or other?

LikeYourMommaToldYou commented 3 years ago

I have it running on an iMac.

awhelme commented 3 years ago

I have the same error and logs running on a Mac Mini

dshafik commented 3 years ago

I am also using Mac, specifically a 2018 MbP with macOS Big Sur

Techlover22 commented 3 years ago

I have it running on my 2020 13" MacBook Pro running Big Sur.

raphb83 commented 3 years ago

@raphb83 how are you running Homebridge? Pi or other?

@cmfrazier running on hoobs. Only issue right now that there is no refresh every 10 seconds

awhelme commented 3 years ago

Now I'm getting:

failed to register push token HTTPError: Response code 401 (Unauthorized) at Request. (/usr/local/lib/node_modules/homebridge-plugin-eufy-security/node_modules/got/dist/source/as-promise/index.js:117:42) at runMicrotasks () at processTicksAndRejections (internal/process/task_queues.js:93:5) { code: undefined, timings: { start: 1607263228568, socket: 1607263228568, lookup: 1607263228569, connect: 1607263228647, secureConnect: 1607263228708, upload: 1607263228708, response: 1607263228768, end: 1607263228768, error: undefined, abort: undefined, phases: { wait: 0, dns: 1, tcp: 78, tls: 61, request: 0, firstByte: 60, download: 0, total: 200 } } }

AND other times I get

(node:15009) UnhandledPromiseRejectionWarning: Error: Request failed: https://security-app.eufylife.com/v1/passport/login -> -1 - Error 1184: the max activeConnnections size can not be max than maxconnections at /usr/local/lib/node_modules/homebridge-plugin-eufy-security/node_modules/eufy-node-client/build/http/http.utils.js:24:15 at Generator.next () at fulfilled (/usr/local/lib/node_modules/homebridge-plugin-eufy-security/node_modules/eufy-node-client/build/http/http.utils.js:5:58) at processTicksAndRejections (internal/process/task_queues.js:93:5) (Use node --trace-warnings ... to show where the warning was created) (node:15009) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag --unhandled-rejections=strict (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 1) (node:15009) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

Sounds like a password issue maybe? I've tried multiple accounts. If I turn off the push, nothing happens. Thanks for the help!

mrota83 commented 3 years ago

The plugin don't work with homebridge in docker synology :(. I have the eufy wired doorbell always in error and do not show in ios home app.

birkir commented 3 years ago

The plugin don't work with homebridge in docker synology :(. I have the eufy wired doorbell always in error and do not show in ios home app.

I have this plugin running on Synology.

Battery doorbell (with HomeBase 2). No support for wired yet.

LikeYourMommaToldYou commented 3 years ago

I have the battery doorbell, via Homebase 2 as well. In my case Homebridge is running (V1.2.3) on MacOS Big Sur on an iMac.

The Homebase is in HomeKit and also has an outside battery powered camera that has native HomeKit support.

As you can see above I am getting an error initializing the connection. I have tried with Push turned on and off.

mrota83 commented 3 years ago

The plugin don't work with homebridge in docker synology :(. I have the eufy wired doorbell always in error and do not show in ios home app.

I have this plugin running on Synology.

Battery doorbell (with HomeBase 2). No support for wired yet.

I thought the wired version was supported. Do you have plan to support wired version in future without homebase 2 ? Thank you for your work !

cmfrazier commented 3 years ago

@raphb83 appears to have his wired version working based on his comment. I guess we should clarify, is it the battery version but it's wired or is it the original wired doorbell?

raphb83 commented 3 years ago

@raphb83 appears to have his wired version working based on his comment. I guess we should clarify, is it the battery version but it's wired or is it the original wired doorbell?

It's the original wired doorbell (this one)

cmfrazier commented 3 years ago

@raphb83 would you mind posting your debug logs and config since your's appears to be working.

royaldunlin commented 3 years ago

Just installed this plugin today and am getting the following error:

(node:2439) UnhandledPromiseRejectionWarning: RequestError: getaddrinfo ENOTFOUND security-app.eufylife.com
    at ClientRequest.<anonymous> (/usr/lib/node_modules/homebridge-plugin-eufy-security/node_modules/got/dist/source/core/index.js:953:111)
    at Object.onceWrapper (events.js:421:26)
    at ClientRequest.emit (events.js:326:22)
    at ClientRequest.origin.emit (/usr/lib/node_modules/homebridge-plugin-eufy-security/node_modules/@szmarczak/http-timer/dist/source/index.js:39:20)
    at TLSSocket.socketErrorListener (_http_client.js:427:9)
    at TLSSocket.emit (events.js:314:20)
    at emitErrorNT (internal/streams/destroy.js:92:8)
    at emitErrorAndCloseNT (internal/streams/destroy.js:60:3)
    at processTicksAndRejections (internal/process/task_queues.js:84:21)
    at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:66:26)
(node:2439) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag `--unhandled-rejections=strict` (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 1)
(node:2439) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

I'm running on an Ubuntu VM.

sccrrich commented 3 years ago

I too am getting an error. Mine states ā€œfailed to confirm push tokenā€. No eufy doorbell or cameras show up. Any ideas?

cmfrazier commented 3 years ago

No change in logs using 0.1.3

royaldunlin commented 3 years ago

I now have a new error message with the update to 0.1.3:

(node:23082) UnhandledPromiseRejectionWarning: HTTPError: Response code 401 (Unauthorized)
    at Request.<anonymous> (/usr/lib/node_modules/homebridge-plugin-eufy-security/node_modules/got/dist/source/as-promise/index.js:117:42)
    at processTicksAndRejections (internal/process/task_queues.js:97:5)
(node:23082) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag `--unhandled-rejections=strict` (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 1)
(node:23082) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
raphb83 commented 3 years ago

@raphb83 would you mind posting your debug logs and config since your's appears to be working.

I will post debug logs and config as soon a I manage to run my hoobs in debug modešŸ˜¬