Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

For Eufy Battery Doorbell "Start_Stream" Toggle No Longer Generates "Livestream" URL #78

Closed
pldmgg opened this issue Feb 15, 2021 · 4 comments
Assignees
Labels
bug Something isn't working fixed. waiting for feedback Issue should be fixed. Waiting on feedback

Comments

@pldmgg
Copy link

pldmgg commented Feb 15, 2021

Using version 0.2.0

When I attempt to toggle "start_stream" using the button in the "value" column, no value for "livestream" is generated. This only seems to be an issue with the Eufy Battery Doorbell (I have also tested Eufy Cam 2/2 Pro and they generate the "livestream" URL without issue).

Logs that are generated after attempting to toggle "start_stream" are as follows (earliest at the bottom):

eufy-security.0 | 2021-02-14 20:56:54.872 | error | (500) Camera.stopStream(): Response code not ok (code: 20023 msg: Failed to request.)
eufy-security.0 | 2021-02-14 20:56:48.157 | warn | (500) P2PClientProtocol.handleDataControl(): Not implemented - CONTROL message with commandId: CMD_SUB1G_REP_RUNTIME_STATE (2107) channel: 2 - data: 6400000018000000
eufy-security.0 | 2021-02-14 20:56:44.989 | warn | (500) P2PClientProtocol.handleDataControl(): Not implemented - CONTROL message with commandId: CMD_SUB1G_REP_RUNTIME_STATE (2107) channel: 1 - data: 4600000003000000
eufy-security.0 | 2021-02-14 20:55:54.696 | error | (500) EufySecurity.stationP2PCommandResult(): Station: T8010XXXXXXXX command CMD_DOORBELL_SET_PAYLOAD failed with error: ERROR_INVALID_COMMAND (-103)

I previously had version 0.1.4 installed and this was not an issue.

Please let me know if you need any additional details, and thank you so much for your work on this!

@bropat
Copy link
Owner

bropat commented Feb 15, 2021

Hi @pldmgg,
please activate the debug mode 2 of the adapter and reproduce the error. Then please send me the logfile (note: the logfile contains sensitive data; mainly the token, so redact it).
You can find my mail in the license description here.

@cratoo
Copy link

cratoo commented Feb 15, 2021

Having the same issue, so a debug output from my side:

2021-02-15 10:04:57.576  - debug: eufy-security.0 (26235) Station.startLivestream(): P2P connection to station XXX present, start livestream for channel: 0.
2021-02-15 10:04:57.576  - debug: eufy-security.0 (26235) Station.startLivestream(): Using CMD_DOORBELL_SET_PAYLOAD for station XXX (main_sw_version: 2.1.5.7h)
2021-02-15 10:04:57.577  - debug: eufy-security.0 (26235) P2PClientProtocol._sendCommand(): sequence: 6 command_type: 1700 channel: 255 retries: 0 message_states.size: 1
2021-02-15 10:04:57.589  - debug: eufy-security.0 (26235) P2PClientProtocol.handleMsg(): ACK DATA - received from host 10.0.0.76:22281 for sequence 6
2021-02-15 10:04:57.601  - debug: eufy-security.0 (26235) P2PClientProtocol.handleMsg(): DATA DATA - received from host X.X.X.X:22281 - Processing sequence 6...
2021-02-15 10:04:57.602  - debug: eufy-security.0 (26235) P2PClientProtocol.handleData(): commandId: CMD_DOORBELL_SET_PAYLOAD (1700) - result: code: ERROR_INVALID_COMMAND (-103) message:  - data: 99ffffff0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
2021-02-15 10:04:57.603  - debug: eufy-security.0 (26235) P2PClientProtocol.handleData(): Result data for command received - message: {"sequence":6,"command_type":1700,"channel":255,"data":{"type":"Buffer","data":[209,0,0,6,88,90,89,72,164,6,116,1,0,0,1,0,255,0,0,0,123,34,99,111,109,109,97,110,100,84,121,112,101,34,58,49,48,48,48,44,34,100,97,116,97,34,58,123,34,97,99,99,111,117,110,116,95,105,100,34,58,34,54,52,53,48,53,52,100,51,99,97,49,57,55,98,49,101,49,102,55,51,54,49,100,52,98,54,102,48,50,102,102,102,48,49,50,99,51,98,53,57,34,44,34,101,110,99,114,121,112,116,107,101,121,34,58,34,57,49,55,99,48,97,57,53,101,48,55,101,57,57,100,97,102,98,99,101,98,55,98,98,100,102,52,53,57,55,50,102,52,49,97,49,53,51,57,55,101,57,101,48,49,57,53,51,101,97,102,55,97,97,48,102,102,51,57,98,55,102,101,48,50,52,48,53,99,51,55,56,56,99,100,53,49,97,51,98,48,53,48,98,55,49,52,51,53,57,49,48,99,102,53,57,101,100,101,50,56,48,101,100,56,50,54,98,98,99,57,49,48,99,54,99,50,102,99,52,100,51,56,99,54,53,50,49,100,48,57,98,99,99,54,101,99,54,57,56,97,102,53,52,51,51,49,51,55,101,97,52,57,102,57,51,50,52,48,49,97,56,101,49,98,52,99,52,98,102,57,99,50,99,102,55,51,53,99,53,102,98,101,99,52,102,50,53,100,97,99,49,48,53,99,55,49,97,56,102,57,50,56,100,101,56,99,100,55,101,98,56,55,102,49,97,48,49,50,50,48,52,99,48,50,102,53,100,56,101,102,56,48,52,54,50,49,53,98,99,57,102,101,54,53,98,50,98,97,49,52,100,52,48,49,51,34,44,34,115,116,114,101,97,109,116,121,112,101,34,58,49,125,125]},"retries":1,"acknowledged":true,"return_code":-133,"timeout":{"_idleTimeout":-1,"_idlePrev":null,"_idleNext":null,"_idleStart":2177706,"_onTimeout":null,"_repeat":null,"_destroyed":true}} result: ERROR_INVALID_COMMAND (-103)
2021-02-15 10:04:57.603  - debug: eufy-security.0 (26235) Station.onCommandResponse(): station: XXX command_type: 1700 channel: 255 return_code: ERROR_INVALID_COMMAND (-103)
2021-02-15 10:04:57.603  - error: eufy-security.0 (26235) EufySecurity.stationP2PCommandResult(): Station: XXX command CMD_DOORBELL_SET_PAYLOAD failed with error: ERROR_INVALID_COMMAND (-103)
2021-02-15 10:04:57.604  - debug: eufy-security.0 (26235) P2PClientProtocol.handleMsg(): DATA DATA - Received expected sequence (seqNo: 6 queuedData.size: 0)```

I didn't recognize a token. but redacted my station ID.

@bropat
Copy link
Owner

bropat commented Feb 15, 2021

@cratoo , @pldmgg
To fix the error "ERROR_INVALID_COMMAND (-103)", I see 2 possibilities:

  1. someone records the network traffic of the Eufy app during the start and stop of the livestream and sends it to me.
  2. Someone shares the doorbell as a guest from the Eufy app with my email address for the time of troubleshooting.

@bropat bropat self-assigned this Feb 15, 2021
@bropat bropat added bug Something isn't working work in progress Working on it labels Feb 15, 2021
bropat pushed a commit that referenced this issue Feb 15, 2021
Implemented fallback for failed P2P livestream to RTMP livestream
@bropat bropat added fixed. waiting for feedback Issue should be fixed. Waiting on feedback and removed work in progress Working on it labels Feb 15, 2021
@pldmgg
Copy link
Author

pldmgg commented Feb 16, 2021

Just tried version 0.2.2 and this is resolved. Thanks so much for your work on this!

@pldmgg pldmgg closed this as completed Feb 16, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working fixed. waiting for feedback Issue should be fixed. Waiting on feedback
Projects
None yet
Development

No branches or pull requests

3 participants