fuatakgun / eufy_security

Home Assistant integration to manage Eufy Security devices as cameras, home base stations, doorbells, motion and contact sensors.
877 stars 73 forks source link

None is not a valid DEVICE_TYPE? #884

Closed mjvracing closed 1 year ago

mjvracing commented 1 year ago

Please check existing (open or closed) issues before creating a new one. (https://github.com/fuatakgun/eufy_security/issues?q=is%3Aissue+)

If this is not an issue, you can use Discussions (https://github.com/fuatakgun/eufy_security/discussions) section.

Describe the bug

Eufy addon running and showing logged in with devices, but the integration fails to find any and the logs show "None is not a valid DEVICE_TYPE

To reproduce

Steps to reproduce the behavior:

  1. Set up eufy websockrt then Go to eufy security integration
  2. Set up integration to 127.0.0.1
  3. Apply
  4. See error in logs after Integration fails to initialise

Expected behavior

Devices get added to home assistant

Additional information

Go to Settings -> System -> Repairs -> Click on 3 dots (...) -> System Information and get Version and Installation Type to below fields;

Hardware Information;

Logger: custom_components.eufy_security_nonsleeper Source: custom_components/eufy_security_nonsleeper/websocket.py:58 Integration: eufy_security_nonsleeper First occurred: 22:31:21 (17 occurrences) Last logged: 22:39:39

eufy_security - Exception - process_messages: None is not a valid DEVICE_TYPE - traceback: Traceback (most recent call last): File "/config/custom_components/eufy_security_nonsleeper/websocket.py", line 56, in process_messages await self.on_message(msg) File "/config/custom_components/eufy_security_nonsleeper/websocket.py", line 67, in on_message await self.message_callback(message) File "/config/custom_components/eufy_security_nonsleeper/coordinator.py", line 314, in on_message await self.process_get_station_properties_response( File "/config/custom_components/eufy_security_nonsleeper/coordinator.py", line 265, in process_get_station_properties_response device.set_properties(properties) File "/config/custom_components/eufy_security_nonsleeper/const.py", line 390, in set_properties type = DEVICE_TYPE(self.type_raw) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.11/enum.py", line 711, in call return cls.new(cls, value) ^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.11/enum.py", line 1128, in new raise ve_exc ValueError: None is not a valid DEVICE_TYPE - message: WSMessage(type=<WSMsgType.TEXT: 1>, data='{"type":"result","success":true,"messageId":"get_station_properties","result":{"serialNumber":"T8010P232028156B","properties":{"name":"Eufy Homebase","model":"T8010","serialNumber":"T8010P232028156B","type":0,"hardwareVersion":"P0","softwareVersion":"3.2.9.5h","macAddress":"8C:85:80:4A:0C:AB","timeFormat":0,"alarmVolume":26,"alarm":false,"alarmType":0,"alarmArmed":false,"alarmArmDelay":0,"alarmDelay":0,"alarmDelayType":0,"lanIpAddress":"192.168.89.173","stationHomeSecuritySettings":{"account_id":"7064bb5374b59a760dfea2e03ef937e4dfe53f5a","count_down_alarm":{"channel_list":[],"delay_time":0},"count_down_arm":{"channel_list":[],"delay_time":0},"devices":[{"action":9,"device_channel":1},{"action":9,"device_channel":0}],"mode_id":1},"alarmTone":1,"stationAwaySecuritySettings":{"account_id":"7064bb5374b59a760dfea2e03ef937e4dfe53f5a","count_down_alarm":{"channel_list":[],"delay_time":0},"count_down_arm":{"channel_list":[],"delay_time":0},"devices":[{"action":9,"device_channel":1},{"action":9,"device_channel":0}],"mode_id":0},"stationCustom1SecuritySettings":{"account_id":"7064bb5374b59a760dfea2e03ef937e4dfe53f5a","count_down_alarm":{"channel_list":[],"delay_time":0},"count_down_arm":{"channel_list":[],"delay_time":0},"devices":[{"action":0,"device_channel":1},{"action":9,"device_channel":0}],"mode_id":3},"sdStatus":0,"notificationSwitchModeSchedule":true,"notificationSwitchModeGeofence":true,"notificationSwitchModeApp":true,"notificationSwitchModeKeypad":true,"promptVolume":16,"notificationStartAlarmDelay":true,"guardMode":2,"sdCapacity":14675,"sdCapacityAvailable":2914,"currentMode":1}}}', extra='') eufy_security - Exception - process_messages: None is not a valid DEVICE_TYPE - traceback: Traceback (most recent call last): File "/config/custom_components/eufy_security_nonsleeper/websocket.py", line 56, in process_messages await self.on_message(msg) File "/config/custom_components/eufy_security_nonsleeper/websocket.py", line 67, in on_message await self.message_callback(message) File "/config/custom_components/eufy_security_nonsleeper/coordinator.py", line 314, in on_message await self.process_get_station_properties_response( File "/config/custom_components/eufy_security_nonsleeper/coordinator.py", line 265, in process_get_station_properties_response device.set_properties(properties) File "/config/custom_components/eufy_security_nonsleeper/const.py", line 390, in set_properties type = DEVICE_TYPE(self.type_raw) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.11/enum.py", line 711, in call return cls.new(cls, value) ^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.11/enum.py", line 1128, in new raise ve_exc ValueError: None is not a valid DEVICE_TYPE - message: WSMessage(type=<WSMsgType.TEXT: 1>, data='{"type":"result","success":true,"messageId":"get_station_properties","result":{"serialNumber":"T8400P20202802EB","properties":{"name":"Cinema Room","model":"T8400","serialNumber":"T8400P20202802EB","type":30,"hardwareVersion":"P2","softwareVersion":"2.1.8.7","lanIpAddress":"192.168.89.229","macAddress":"8C85804A293E","timeFormat":0,"alarm":false,"alarmType":0,"guardMode":2,"currentMode":63}}}', extra='') eufy_security - Exception - process_messages: None is not a valid DEVICE_TYPE - traceback: Traceback (most recent call last): File "/config/custom_components/eufy_security_nonsleeper/websocket.py", line 56, in process_messages await self.on_message(msg) File "/config/custom_components/eufy_security_nonsleeper/websocket.py", line 67, in on_message await self.message_callback(message) File "/config/custom_components/eufy_security_nonsleeper/coordinator.py", line 314, in on_message await self.process_get_station_properties_response( File "/config/custom_components/eufy_security_nonsleeper/coordinator.py", line 265, in process_get_station_properties_response device.set_properties(properties) File "/config/custom_components/eufy_security_nonsleeper/const.py", line 390, in set_properties type = DEVICE_TYPE(self.type_raw) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.11/enum.py", line 711, in call return cls.new(cls, value) ^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.11/enum.py", line 1128, in new raise ve_exc ValueError: None is not a valid DEVICE_TYPE - message: WSMessage(type=<WSMsgType.TEXT: 1>, data='{"type":"result","success":true,"messageId":"get_station_properties","result":{"serialNumber":"T8400P2020284771","properties":{"name":"Hobby Room","model":"T8400","serialNumber":"T8400P2020284771","type":30,"hardwareVersion":"P2","softwareVersion":"2.1.8.7","lanIpAddress":"192.168.89.244","macAddress":"8C8580486004","timeFormat":0,"alarm":false,"alarmType":0,"guardMode":2,"currentMode":63}}}', extra='') eufy_security - Exception - process_messages: None is not a valid DEVICE_TYPE - traceback: Traceback (most recent call last): File "/config/custom_components/eufy_security_nonsleeper/websocket.py", line 56, in process_messages await self.on_message(msg) File "/config/custom_components/eufy_security_nonsleeper/websocket.py", line 67, in on_message await self.message_callback(message) File "/config/custom_components/eufy_security_nonsleeper/coordinator.py", line 304, in on_message await self.process_get_device_properties_response( File "/config/custom_components/eufy_security_nonsleeper/coordinator.py", line 247, in process_get_device_properties_response device.set_properties(properties) File "/config/custom_components/eufy_security_nonsleeper/const.py", line 390, in set_properties type = DEVICE_TYPE(self.type_raw) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.11/enum.py", line 711, in call return cls.new(cls, value) ^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.11/enum.py", line 1128, in new raise ve_exc ValueError: None is not a valid DEVICE_TYPE - message: WSMessage(type=<WSMsgType.TEXT: 1>, data='{"type":"result","success":true,"messageId":"get_device_properties","result":{"serialNumber":"T8210P0020282F6F","properties":{"motionDetected":false,"personDetected":false,"personName":"","ringing":false,"name":"Front Door","model":"T8210","serialNumber":"T8210P0020282F6F","type":7,"hardwareVersion":"T8210","softwareVersion":"2.2.3.9","stationSerialNumber":"T8010P232028156B","lastChargingDays":20,"lastChargingFalseEvents":0,"lastChargingRecordedEvents":0,"lastChargingTotalEvents":0,"batteryUsageLastWeek":0,"picture":{"data":{ype":{"ext":"jpg","mime":"image/jpeg"}},"recordingClipLength":0,"recordingRetriggerInterval":5,"recordingEndClipMotionStops":false,"snoozeTime":0,"snoozeStartTime":0,"snoozeHomebase":false,"snoozeStartChime":false,"snoozeMotion":false,"chimeHomebaseRingtoneType":0,"autoNightvision":true,"chimeIndoor":false,"videoStreamingQuality":5,"ringtoneVolume":68,"state":1,"notificationType":2,"notificationRing":true,"notificationMotion":true,"chargingStatus":2,"snooze":false,"wifiRssi":-52,"wifiSignalLevel":4,"statusLed":true,"watermark":2,"motionDetectionType":0,"enabled":true,"chimeHomebase":true,"batteryTemperature":19,"battery":89,"speakerVolume":100,"motionDetectionSensitivity":3,"motionDetection":true,"videoWdr":false,"chimeHomebaseRingtoneVolume":26,"audioRecording":true,"powerWorkingMode":0}}}', extra='') eufy_security - Exception - process_messages: 'connected' - traceback: Traceback (most recent call last): File "/config/custom_components/eufy_security_nonsleeper/websocket.py", line 56, in process_messages await self.on_message(msg) File "/config/custom_components/eufy_security_nonsleeper/websocket.py", line 67, in on_message await self.message_callback(message) File "/config/custom_components/eufy_security_nonsleeper/coordinator.py", line 295, in on_message await self.process_driver_connect_response(message["connected"]) ~~~^^^^^^^^^^^^^ KeyError: 'connected' - message: WSMessage(type=<WSMsgType.TEXT: 1>, data='{"type":"result","success":true,"messageId":"driver_connect","result":{"result":true}}', extra='')

Additional context

Add any other context about the problem goes here. Mainly, share everything as log files and use screenshots as last resort.

fuatakgun commented 1 year ago

integration failing on your side looks like a different integration (eufy_security_nonsleeper)

this integration is named as eufy_security

mjvracing commented 1 year ago

Many thanks - I'll take a look when I get home 👍

Sent from Outlook for Androidhttps://aka.ms/AAb9ysg


From: Fuat Akgün @.> Sent: Monday, August 14, 2023 3:10:06 PM To: fuatakgun/eufy_security @.> Cc: mjvracing @.>; Author @.> Subject: Re: [fuatakgun/eufy_security] None is not a valid DEVICE_TYPE? (Issue #884)

integration failing on your side looks like a different integration (eufy_security_nonsleeper)

this integration is named as eufy_security

— Reply to this email directly, view it on GitHubhttps://github.com/fuatakgun/eufy_security/issues/884#issuecomment-1677391707, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ATDSKRT5MHPNW3KPVJLS6FTXVIWT5ANCNFSM6AAAAAA3OF2TDI. You are receiving this because you authored the thread.Message ID: @.***>