bropat / eufy-security-ws

Small server wrapper around eufy-security-client library to access it via a WebSocket.
MIT License
169 stars 24 forks source link

[Bug]: Error accepting invitation #261

Closed michaelmior closed 9 months ago

michaelmior commented 11 months ago

Version

1.6.4

Node version

16.20.1

Operating System type

Docker

Operating system version

23.0.6

Describe the bug

When I try to invite a user with auto accept turned on, the invitation is not accepted and the logs show an error.

To reproduce

  1. Start the server (in my case via the Home Assistant add-on)
  2. Invite the logged in user

Screenshots & Logfiles

s6-rc: info: service s6rc-oneshot-runner: starting
s6-rc: info: service s6rc-oneshot-runner successfully started
s6-rc: info: service fix-attrs: starting
s6-rc: info: service fix-attrs successfully started
s6-rc: info: service legacy-cont-init: starting
s6-rc: info: service legacy-cont-init successfully started
s6-rc: info: service legacy-services: starting
s6-rc: info: service legacy-services successfully started
2023-09-08 16:49:26.866  INFO  Eufy Security server listening on host 0.0.0.0, port 3000 
2023-09-08 16:49:28.102  INFO  No stations found. 
2023-09-08 16:49:28.270  INFO  No devices found. 
2023-09-08 16:49:30.874  INFO  Push notification connection successfully established 
2023-09-08 16:50:05.989  ERROR Data decryption error, invalidating session data and reconnecting... 
{
  error: {
    message: 'TypeError: The "data" argument must be of type string or an instance of Buffer, TypedArray, or DataView. Received an instance of Array',
    stacktrace: 'TypeError [ERR_INVALID_ARG_TYPE]: The "data" argument must be of type string or an instance of Buffer, TypedArray, or DataView. Received an instance of Array\n' +
      '    at new NodeError (node:internal/errors:387:5)\n' +
      '    at Decipheriv.update (node:internal/crypto/cipher:176:11)\n' +
      '    at decryptAPIData (/usr/src/app/node_modules/eufy-security-client/build/http/utils.js:184:16)\n' +
      '    at HTTPApi.decryptAPIData (/usr/src/app/node_modules/eufy-security-client/build/http/api.js:1067:60)\n' +
      '    at HTTPApi.getHouseInviteList (/usr/src/app/node_modules/eufy-security-client/build/http/api.js:1209:58)\n' +
      '    at processTicksAndRejections (node:internal/process/task_queues:96:5)\n' +
      '    at async EufySecurity.processInvitations (/usr/src/app/node_modules/eufy-security-client/build/eufysecurity.js:954:30)'
  }
}

Additional context

No response