Code Monkey home page Code Monkey logo

iobroker.eusec's Introduction

Logo

ioBroker.euSec

NPM version Downloads Total Downloads Node version requirement Number of Installations (latest) Number of Installations (stable) Dependency Status Known Vulnerabilities

Tests: Test and Release

NPM

This is an ioBroker adapter that uses the eufy-security-client library to comunicate with Eufy devices.

If you appreciate my work and progress and want to support me, you can do it here:

ko-fi Donate

This project is not affiliated with Anker and Eufy (Eufy Security). It is a personal project that is maintained in spare time.

Description

This adapter allows to control Eufy security devices by connecting to the Eufy cloud servers and local/remote stations.

You need to provide your Cloud login credentials. The adapter connects to your cloud account and polls for all device data via HTTPS. Now a local or remote P2P connection to the Eufy stations/devices is also supported. However, a connection to the Eufy Cloud is always a prerequisite.

One Adapter instance will show all devices from one Eufy Cloud account and allows to control them.

Features

  • Supports local and remote p2p connection to station
  • Two factor authentication
  • Livestream as HLS stream (supports all platforms, but introduce a latency)
  • Last HLS live stream is always saved for later viewing
  • Downloads event video when push notification is received (async)
  • Takes jpeg thumbnail of the livestream or downloaded video
  • Base station:
    • States:
      • Configured Guard mode
      • Current Guard mode
      • Name
      • Model
      • Serial number
      • Software version
      • Hardware version
      • MAC address
      • LAN ip address
    • Actions:
      • Change guard mode
      • Trigger alarm sound
      • Reset alarm sound
      • Reboot station
    • Events:
      • Alarm mode change
  • Camera:
    • States:
      • Online / offline etc.
      • Battery %
      • Battery temperature
      • Name
      • Model
      • Serial number
      • Software version
      • Hardware version
      • MAC address
      • Wifi RSSI
      • Filtered false events since last charge
      • Saved/Recorded events since last charge
      • Total events since last charge
      • Used days since last charge
      • And lot's more...
    • Actions:
      • Start livestream (hls; supports also local livestream)
      • Stop livestream (hls)
      • Enable/disable device
      • Enable/disable auto night vision
      • Enable/disable led (only camera 2 products, indoor cameras, floodlight camera, solo cameras and doorbells)
      • Enable/disable anti-theft detection (only camera 2 products)
      • Enable/disable motion detection
      • Enable/disable pet detection (only indoor cameras)
      • Enable/disable sound detection (only indoor cameras)
      • Enable/disable RTSP stream (only camera2 products, indoor cameras and solo cameras)
      • Change video watermark setting
      • And lot's more...
    • Events:
      • Motion detected
      • Person detected
      • Ringing (only Doorbell)
      • Crying detected (only Indoor cameras)
      • Sound detected (only Indoor cameras)
      • Pet detected (only Indoor cameras)
  • Sensor:
    • Entry sensor:
      • States:
        • Online / offline etc.
        • Low battery
        • Name
        • Model
        • Serial number
        • Software version
        • Hardware version
      • Events:
        • Open / closed
    • Motion sensor:
      • States:
        • Online / offline etc.
        • Low battery
        • Name
        • Model
        • Serial number
        • Software version
        • Hardware version
      • Events:
        • Motion detected
  • Keypad:
    • States:
      • Online / offline etc.
      • Low battery
      • Name
      • Model
      • Serial number
      • Software version
      • Hardware version
  • Lock:
    • States:
      • Online / offline etc.
      • Battery %
      • Lock status
      • Name
      • Model
      • Serial number
      • Software version
      • Hardware version
      • Wifi RSSI
    • Actions:
      • Lock/unlock
  • more to come...

Documentation

Look here

Known working devices

Information about supported devices can be found here.

How to report issues and feature requests

Please use GitHub issues for this.

Best is to set the adapter to Debug log mode (see here). Then please get the logfile from disk (subdirectory "log" in ioBroker installation directory and not from Admin because Admin cuts the lines).

Changelog

1.2.1 (2023-11-04)

  • (bropat) Updated version of the package eufy-security-client (2.9.1)
  • (bropat) Further details can be found in the changelog of eufy-security-client (2.9.1)

1.2.0 (2023-11-04)

  • (bropat) Requires node version >= 18
  • (bropat) Added support for SmartTrack Link (T87B0) and SmartTrack Card (T87B2)
  • (bropat) Added support for SoloCam S220 (T8134)
  • (bropat) Fixed livestream issue
  • (bropat) Updated version of the package go2rtc-static (1.8.1)
  • (bropat) Updated version of the package eufy-security-client (2.9.0)
  • (bropat) Further details can be found in the changelog of eufy-security-client (2.9.0)

1.1.2 (2023-08-31)

  • (bropat) Updated version of the package eufy-security-client (2.8.1)
  • (bropat) Further details can be found in the changelog of eufy-security-client (2.8.1)

1.1.1 (2023-08-20)

  • (bropat) Fixed issue #365
  • (bropat) Fixed issue #363
  • (bropat) Updated version of the package ffmpeg-static (5.2.0)
  • (bropat) Updated version of the package eufy-security-client (2.8.0)
  • (bropat) Further details can be found in the changelog of eufy-security-client (2.8.0)

1.1.0 (2023-08-08)

  • (bropat) Added support for Wired Wall Light Cam S100 (T84A1; #332)
  • (bropat) Added support for Garage-Control Cam (T8452)
  • (bropat) Fixed issue #353
  • (bropat) Fixed issue #347
  • (bropat) Fixed issue #342
  • (bropat) Fixed issue #316
  • (bropat) Updated version of the package go2rtc-static (1.6.2)
  • (bropat) Updated version of the package eufy-security-client (2.7.1)
  • (bropat) Further details can be found in the changelog of eufy-security-client (2.7.1)

1.0.0 (2023-05-16)

  • (bropat) Notification pictures are supported again
  • (bropat) Implemented new livestream support using go2rtc (WebRTC/MSE, rtsp)
  • (bropat) Fixed issue #323
  • (bropat) Updated version of the package eufy-security-client (2.6.2)
  • (bropat) Further details can be found in the changelog of eufy-security-client (2.6.2)

Note: The download of event videos has been temporarily removed as decryption of these is not yet supported. It will be added back as soon as it is supported.

0.9.10 (2023-02-24)

  • (bropat) Requires node version >= 16
  • (bropat) Fixed issue #319
  • (bropat) Fixed issue #307
  • (bropat) Fixed issue #306
  • (bropat) Fixed issue #305
  • (bropat) Updated version of the package eufy-security-client (2.4.2)
  • (bropat) Further details can be found in the changelog of eufy-security-client (2.4.2)

Note: The download of notification images has been temporarily removed as decryption of these is not yet supported. It will be added back as soon as it is supported.

0.9.9 (2022-12-24)

  • (bropat) Fixed issue #311
  • (bropat) Fixed issue #312
  • (bropat) Updated version of the package eufy-security-client (2.4.0)
  • (bropat) Further details can be found in the changelog of eufy-security-client (2.4.0)

0.9.8 (2022-11-26)

  • (bropat) Fixed issue #300
  • (bropat) Updated version of the package eufy-security-client (2.3.0)
  • (bropat) Further details can be found in the changelog of eufy-security-client (2.3.0)

Note: Those who use 2FA will be prompted to do so again after this update.

0.9.7 (2022-11-12)

  • (bropat) Implemented Homebase Alarm (#271)
  • (bropat) Fixed issue #293
  • (bropat) Updated version of the package eufy-security-client (2.2.3)
  • (bropat) Further details can be found in the changelog of eufy-security-client (2.2.3)

0.9.6 (2022-11-06)

  • (bropat) Fixed issue #292
  • (bropat) Updated version of the package eufy-security-client (2.2.2)
  • (bropat) Further details can be found in the changelog of eufy-security-client (2.2.2)

0.9.5 (2022-11-05)

  • (bropat) Added new P2P feature: unlock smart safe products
  • (bropat) Added option to enable/disable "Automatically download picture" (#255)
  • (bropat) Fixed issue #269
  • (bropat) Updated version of the package eufy-security-client (2.2.1)
  • (bropat) Further details can be found in the changelog of eufy-security-client (2.2.1)

0.9.4 (2022-07-30)

  • (bropat) Updated version of the package eufy-security-client (2.1.2)
  • (bropat) Further details can be found in the changelog of eufy-security-client (2.1.2)

0.9.3 (2022-07-16)

  • (bropat) Updated version of the package eufy-security-client (2.1.1)
  • (bropat) Further details can be found in the changelog of eufy-security-client (2.1.1)

0.9.2 (2022-06-12)

  • (bropat) Updated version of the package eufy-security-client (2.1.0)
  • (bropat) Further details can be found in the changelog of eufy-security-client (2.1.0)

0.9.1 (2022-05-03)

  • (bropat) Updated version of the package eufy-security-client (2.0.1)
  • (bropat) Further details can be found in the changelog of eufy-security-client (2.0.1)

0.9.0 (2022-04-30)

  • (bropat) Requires node version >= 14.17
  • (bropat) Added support for Battery Doorbell Dual (T8213)
  • (bropat) Added support for Video Doorbell Dual (T8203)
  • (bropat) Added support for IndoorCam Mini (T8414)
  • (bropat) Fixed issue #250
  • (bropat) Fixed issue #238
  • (bropat) Fixed issue #236
  • (bropat) Fixed issue #231
  • (bropat) Fixed issue #229
  • (bropat) Fixed issue #208
  • (bropat) Updated version of the package eufy-security-client (2.0.0)
  • (bropat) Further details can be found in the changelog of eufy-security-client (2.0.0)

0.8.5 (2022-02-12)

  • (bropat) Fixed issue #222
  • (bropat) Updated version of the package eufy-security-client (1.6.6)
  • (bropat) Further details can be found in the changelog of eufy-security-client (1.6.6)

0.8.4 (2022-02-08)

  • (bropat) Fixed regression in authentication flow
  • (bropat) Fixed issue #228
  • (bropat) Updated version of the package eufy-security-client (1.6.5)
  • (bropat) Further details can be found in the changelog of eufy-security-client (1.6.5)

0.8.3 (2022-02-07)

  • (bropat) Updated version of the package eufy-security-client (1.6.4)
  • (bropat) Further details can be found in the changelog of eufy-security-client (1.6.4)
  • (bropat) Fixed issue #222
  • (bropat) Fixed issue #224
  • (bropat) Fixed issue #225

Note: Selecting the correct country in ioBroker is essential for the devices to be found (should match the setting in the Eufy app).

0.8.2 (2022-02-06)

  • (bropat) Renamed Adapter to ioBroker.euSec
  • (bropat) Updated version of the package eufy-security-client (1.6.3)
  • (bropat) Further details can be found in the changelog of eufy-security-client (1.6.3)
  • (bropat) Fixed issue #221

0.8.1 (2022-02-05)

  • (bropat) Fixed MQTT connection issue (error: 5; #219)
  • (bropat) Updated version of the package eufy-security-client (1.6.2)
  • (bropat) Further details can be found in the changelog of eufy-security-client (1.6.2)

0.8.0 (2022-02-05)

  • (bropat) Added support for Smart Lock Touch & Wifi (T8520; #138)
  • (bropat) Added option to enable/disable "Automatically download video" (#180; #203)
  • (bropat) Added new state to retrieve received captcha in HTML format "received_captcha_html" (#210)
  • (bropat) Updated version of the package eufy-security-client (1.6.1)
  • (bropat) Further details can be found in the changelog of eufy-security-client (1.6.1)
  • (bropat) Updated versions of the package dependencies
  • (bropat) Fixed issue #199
  • (bropat) Fixed issue #217
  • (bropat) Some other small bugfixes

0.7.5 (2021-12-05)

  • (bropat) Fixed issue #195
  • (bropat) Fixed issue #202

0.7.4 (2021-11-22)

  • (bropat) Implemented captcha authentication mechanism (API v2)
  • (bropat) Updated version of the package eufy-security-client (1.4.0)

0.7.3 (2021-11-20)

  • (bropat) Implemented new encrypted authentication mechanism (API v2)
  • (bropat) Dropped old plaintext authentication mechanism (API v1)
  • (bropat) Fixed issue #191
  • (bropat) Updated version of the package eufy-security-client (1.3.0)

Note: If you have 2FA enabled, you will need to authenticate again after this update.

0.7.2 (2021-11-16)

  • (bropat) Updated version of the package eufy-security-client (1.2.3)
  • (bropat) Further details can be found in the changelog of eufy-security-client (1.2.3)
  • (bropat) Changed ioBroker.admin dependency to ">=4.0.10"
  • (bropat) Updated versions of the package dependencies

0.7.1 (2021-10-23)

  • (bropat) Updated version of the package eufy-security-client (1.2.1)
  • (bropat) Further details can be found in the changelog of eufy-security-client (1.2.1)

0.7.0 (2021-10-17)

  • (bropat) Added support for Floodlight T8422
  • (bropat) Added support for SoloCam E40 (T8131)
  • (bropat) Added new properties for solo cameras: battery, batteryTemperature, wifiSignalLevel, state, chargingStatus, lastChargingDays, lastChargingRecordedEvents, lastChargingTotalEvents, batteryUsageLastWeek
  • (bropat) Fixed issue #169
  • (bropat) Fixed issue #167
  • (bropat) Fixed issue #151
  • (bropat) Fixed push notifications for solo cameras (motion and person detection)
  • (bropat) Updated version of the package eufy-security-client (1.2.0)
  • (bropat) Updated versions of the package dependencies
  • (bropat) Further details can be found in the changelog of eufy-security-client (1.2.0)

0.6.2 (2021-08-19)

  • (bropat) Updated version of the package eufy-security-client (1.1.2)

0.6.1 (2021-08-19)

  • (bropat) Fixed issue in the function responsible for the version upgrade (non-updatable states; issue #159)
  • (bropat) Tried to fix issue #157 and issue #140

0.6.0 (2021-08-13)

  • (bropat) Breaking Changes Switched to the new managed driver class - All states will be dropped and recreated (Note: some states where renamed)
  • (bropat) Supports Admin 5
  • (bropat) Added new adapter setting "Accept incoming invitations" to automatically accept device invitations
  • (bropat) Added new adapter setting "Alarm sound duration (sec)" used for triggering alarm sound on supported devices/stations (#76)
  • (bropat) Added enable/disable led setting for camera 1 products
  • (bropat) Added motion detection sensitivity setting for camera 1 products and wired doorbell
  • (bropat) Added motion detection type setting for camera 1 products
  • (bropat) Added motion audio recording setting for camera 1 products and wired doorbell
  • (bropat) Added ringtone volume setting for wired doorbell
  • (bropat) Added enable/disable indoor chime setting for wired doorbell (#100)
  • (bropat) Added notification ring setting for wired doorbell
  • (bropat) Added notification motion setting for wired doorbell
  • (bropat) Added video streaming quality setting for wired doorbell
  • (bropat) Added video recording quality setting for wired doorbell
  • (bropat) Added video HDR setting for wired doorbell
  • (bropat) Added video distortion correction setting for wired doorbell
  • (bropat) Added video ring recording setting for wired doorbell
  • (bropat) Added notification type setting for camera 1 products, solo cameras and wired doorbell
  • (bropat) Added chirp volume setting for entry sensor
  • (bropat) Added chirp tone setting for entry sensor
  • (bropat) Added pan an tilt functionality to supported indoor cameras (#129)
  • (bropat) Added error detection if stopping or starting stream that isn't running or already running
  • (bropat) Added new setting "acceptInvitations" to "EufySecurity" to accept invitations automatically
  • (bropat) Added floodlight camera light switch (#133)
  • (bropat) Added motion detection sensitivity for indoor cameras, solo cameras, floodlight cameras, camera 2 products and battery doorbells (#133)
  • (bropat) Added motion detection type for indoor cameras, solo cameras, floodlight cameras, camera 2 products and battery doorbells (#133)
  • (bropat) Added motion tracking for indoor camera pan & tilt cameras
  • (bropat) Added video stream quality setting for indoor cameras, solo cameras, floodlight cameras and battery doorbell (#133)
  • (bropat) Added video recording quality setting for indoor cameras
  • (bropat) Added WDR setting for battery doorbells
  • (bropat) Added microphone mute setting for indoor cameras, solo cameras, floodlight cameras, camera 2 products and battery doorbells (#133)
  • (bropat) Added audio recording setting for indoor cameras, solo cameras, floodlight cameras, camera 2 products and battery doorbells (#133)
  • (bropat) Added enable/disable speaker setting for indoor cameras, solo cameras, floodlight cameras, camera 2 products (#133)
  • (bropat) Added speaker volume setting for indoor cameras, solo cameras, floodlight cameras, camera 2 products and battery doorbells (#133)
  • (bropat) Added power source setting for camera 2 products cameras, eufy cameras and eufy E cameras
  • (bropat) Added power working mode setting for solo cameras, camera 2 products, battery doorbells, eufy cameras and eufy E cameras
  • (bropat) Added power custom working mode recording clip length setting for solo cameras, floodlight cameras, camera 2 products, battery doorbells, eufy cameras and eufy E cameras (#133)
  • (bropat) Added power custom working mode recording retrigger interval setting for solo cameras, floodlight cameras, camera 2 products, battery doorbells, eufy cameras and eufy E cameras (#133)
  • (bropat) Added power custom working mode recording ends if motion stops setting for solo cameras, floodlight cameras, camera 2 products, battery doorbells, eufy cameras and eufy E cameras (#133)
  • (bropat) Added video streaming quality setting for indoor cameras, solo cameras, floodlight cameras, 2c pro cameras and battery doorbells (#133)
  • (bropat) Added video recording quality setting for indoor 2k cameras and 2c pro cameras
  • (bropat) Added motion detection sensitivity setting for indoor cameras, floodlight cameras and camera 2 products (#133)
  • (bropat) Added enable/disable motion tracking setting for indoor pan & tilt cameras
  • (bropat) Added motion detection type setting for indoor cameras, solo cameras, floodlight cameras, camera 2 products and battery doorbells (#133)
  • (bropat) Added enable/disable WDR setting for battery doorbells
  • (bropat) Added ringtone volume setting for battery doorbells
  • (bropat) Added enable/disable chime indoor setting for battery doorbells (#100)
  • (bropat) Added enable/disable chime homebase setting for battery doorbells (#100)
  • (bropat) Added chime homebase ringtone volume setting for battery doorbells
  • (bropat) Added chime homebase ringtone type setting for battery doorbells
  • (bropat) Added notification type setting for solo cameras, floodlight cameras, camera 2 products, battery doorbells, eufy cameras and eufy E cameras (#133)
  • (bropat) Added enable/disable person notification setting for indoor cameras
  • (bropat) Added enable/disable pet notification setting for indoor cameras
  • (bropat) Added enable/disable all other motion notification setting for indoor cameras
  • (bropat) Added enable/disable all sound notification setting for indoor cameras
  • (bropat) Added enable/disable crying notification setting for indoor cameras
  • (bropat) Added enable/disable motion notification setting for battery doorbells
  • (bropat) Added enable/disable ring notification setting for battery doorbells
  • (bropat) Added trigger alarm sound for camera 2 products, indoor cameras, solo cameras (incl. new) and floodlight cameras (#76)
  • (bropat) Added reset alarm sound for camera 2 products, indoor cameras, solo cameras (incl. new) and floodlight cameras (#76)
  • (bropat) Added trigger alarm sound for homebase 1+2 (#76)
  • (bropat) Added reset alarm sound for homebase 1+2 (#76)
  • (bropat) Added alarm tone setting for homebase 1+2
  • (bropat) Added alarm volume setting for homebase 1+2
  • (bropat) Added prompt volume setting for homebase 1+2
  • (bropat) Added time format setting for homebase 1+2
  • (bropat) Added enable/disable switch mode app notification setting for homebase 1+2
  • (bropat) Added enable/disable switch mode geofence notification setting for homebase 1+2
  • (bropat) Added enable/disable switch mode schedule notification setting for homebase 1+2
  • (bropat) Added enable/disable switch mode keypad notification setting for homebase 1+2
  • (bropat) Added enable/disable start alarm delay notification setting for homebase 1+2
  • (bropat) Added new floodlight, solo and outdoor cameras (untested!)
  • (bropat) Added brightness light setting for 2c/2c pro cameras, new solo cameras and new outdoor cameras
  • (bropat) Added enable/disable light setting for 2c/2c pro cameras, new solo cameras and new outdoor cameras
  • (bropat) Added battery charging state for keypad devices
  • (bropat) Added wifi rssi state for keypad devices
  • (bropat) Added nightvision setting for devices supporting the "light" nightvision mode
  • (bropat) Added enable disable "switch mode with access code" for station with registered keypad
  • (bropat) Added enable disable "auto end alarm" for station with registered keypad
  • (bropat) Added enable disable "turn off alarm with button" for station with registered keypad
  • (bropat) Fixed issue #98
  • (bropat) Fixed issue #140
  • (bropat) Fixed issue #146
  • (bropat) Fixed issue #117
  • (bropat) Many small bugfixes
  • (bropat) Updated versions of the package dependencies

0.5.5 (2021-06-01)

  • (bropat) Fixed regression in p2p protocol

0.5.4 (2021-05-26)

  • (bropat) Fixed issue with video corruption in p2p livestream
  • (bropat) Updated versions of the package dependencies

0.5.3 (2021-05-14)

  • (bropat) Fixed issue #121
  • (bropat) Fixed push notification for indoor and floodlight cams (issue #130)
  • (bropat) Fixed refresh of properties/settings of standalone devices (issue #130)
  • (bropat) Updated versions of the package dependencies

0.5.2 (2021-04-02)

  • (bropat) Try to add support for FreeBSD - issue #106
  • (bropat) Updated package dependency ffmpeg-static for FreeBSD support

0.5.1 (2021-04-01)

  • (bropat) Fixed issue #105

0.5.0 (2021-03-30)

  • (bropat) Added support for smart lock products
  • (bropat) Added new P2P feature: lock/unlock smart lock products
  • (bropat) Optimized speed of P2P connection establishment
  • (bropat) New setting: P2P connection setup preference: local prefered, local only or quickest connection
  • (bropat) Dropped support for NodeJS 10.x (min. requirement 12)
  • (bropat) Updated versions of the package dependencies

0.4.3 (2021-03-19)

  • (bropat) Code enhancements for publishing the adapter to the central repository
  • (bropat) Updated versions of the package dependencies

0.4.2 (2021-03-14)

  • (bropat) Fixed roles of states according to ioBroker documentation

0.4.1 (2021-03-14)

  • (bropat) Removed legacy password encryption support for admin adapter (requires admin adapter >= 4.0.9)
  • (bropat) Added admin adapter as global dependency
  • (bropat) Updated license

0.4.0 (2021-03-11)

  • (bropat) Added handling of adapter updates with breaking changes
  • (bropat) Added new P2P feature: enable/disable pet detection for indoor cameras
  • (bropat) Added new P2P feature: enable/disable sound detection for indoor cameras
  • (bropat) Added new P2P feature: enable/disable led for wired doorbell
  • (bropat) Unlocked state: last_event_video_url
  • (bropat) Fixed parsing of push notification to download video events for battery doorbells and indoor cameras
  • (bropat) Fixed enable/disable device (for wired doorbells, indoor cameras, floodlight camera and solo cameras)
  • (bropat) Fixed enable/disable led (for battery doorbells, indoor cameras, floodlight camera and solo cameras)
  • (bropat) Fixed enable/disable motion detection (for indoor cameras, floodlight camera and solo cameras)
  • (bropat) Fixed change video watermark setting (for indoor cameras and floodlight camera)
  • (bropat) Updated versions of the package dependencies

0.3.1 (2021-03-06)

  • (bropat) Fixed regression on livestream with h265 codec

0.3.0 (2021-03-05)

  • (bropat) Implemented feature request #88: Enable/disable motion detection for camera products
  • (bropat) Implemented feature request #81: Enable/disable RTSP stream (added also RTSP stream url)
  • (bropat) Implemented asynchronous download of event videos when receiving a push notification
  • (bropat) Optimized ffmpeg implementation to only muxing video data to HLS
  • (bropat) Optimized HLS livestream video start delay (10-15 sec.)
  • (bropat) Fixed possible race condition with ffmpeg when using fallback to Eufy RTMP live stream
  • (bropat) Fixed issue with livestream when p2p connection is lost
  • (bropat) Updated versions of the package dependencies

0.2.5 (2021-02-20)

  • (bropat) Fixed possible race condition that brokes sometime the livestream
  • (bropat) Updated versions of the package dependencies

0.2.4 (2021-02-20)

  • (bropat) Fixed issue #86
  • (bropat) Fixed not correctly identifying if the livestream is still active or not

0.2.3 (2021-02-17)

  • (bropat) Fixed wired doorbell p2p livestream (should fix also indoor, floodlight and solo cameras)
  • (bropat) Fixed issue that treats known push notifications as unknown
  • (bropat) Fixed relative path for state last_event_pic_url
  • (bropat) Updated versions of the package dependencies

0.2.2 (2021-02-16)

  • (bropat) Fixed web extension settings for serving videos and pictures (issue #79)

0.2.1 (2021-02-15)

  • (bropat) Fixed device_enable state
  • (bropat) Fixed battery doorbell start livestream over p2p (issue #78)
  • (bropat) Implemented fallback for failed P2P livestream to RTMP livestream

0.2.0 (2021-02-14)

  • (bropat) Implemented P2P livestream over HLS
  • (bropat) Last livestream is always saved and is still available later
  • (bropat) Implemented device and station parameter refresh over P2P
  • (bropat) Revised push notification implementation
  • (bropat) Fixed issue #71 by implementing retry mechanism on HTTP error 404 (max. 5 retries with increasing delay)
  • (bropat) Fixed issue #12
  • (bropat) Eufy client library extracted as standalone library and adapters ported to new shared library: eufy-security-client
  • (bropat) Removed following states: last_captured_pic_url, last_captured_pic_html
  • (bropat) Updated versions of the package dependencies

0.1.5 (2021-01-14)

  • (bropat) Fixed issue #50 and #53
  • (bropat) Updated versions of the package dependencies

0.1.4 (2021-01-05)

  • (bropat) Fixed: Accept only valid modes for station guard mode (for invalid mode, an error is logged)
  • (bropat) Fixed reset of an event (motion, ringing, etc.)
  • (bropat) Updated versions of the package dependencies

0.1.3 (2021-01-02)

  • (bropat) Fixed issue #37 and #41
  • (bropat) Updated versions of the package dependencies

0.1.2 (2021-01-02)

  • (bropat) Revised captured_pic_url state (renamed to last_captured_pic_url and added last_captured_pic_html)
  • (bropat) Fixed p2p issue passing wrong user id (action_user_id instead of admin_user_id)
  • (bropat) Revised push notification to properly support doorbell notifications
  • (bropat) Updated versions of the package dependencies

0.1.1 (2020-12-29)

  • (bropat) Fixed issue #37
  • (bropat) Fixed version numbering
  • (bropat) Updated versions of the package dependencies

0.0.9 (2020-12-28)

  • (bropat) Finished implementation for feature request: #1
  • (bropat) Little progress for feature request: #5
  • (bropat) Now supports also cloud P2P communication if local P2P comunication isn't possible
  • (bropat) Implemented set Guard Mode with CMD_SET_PAYLOAD for certain devices
  • (bropat) Added back USA ip addresses for P2P cloud discovery
  • (bropat) Using the correct local time zone for communication with the Eufy Cloud
  • (bropat) HUB filtering by device type 0 (station) removed
  • (bropat) Added documentation for 2FA
  • (bropat) Updated versions of the package dependencies

0.0.8 (2020-12-13)

  • (bropat) Fixed issue #16
  • (bropat) P2P communication revisited
  • (bropat) Added reconnect functionality for P2P communication
  • (bropat) Added heartbeat for P2P communication
  • (bropat) Added local caching of last event picture as image url or html image (removed old state: last_camera_url)
  • (bropat) Updated versions of the package dependencies

0.0.7 (2020-12-08)

  • (bropat) Fixed issue #11

0.0.6 (2020-12-06)

  • (bropat) Fixed issue #13

0.0.5 (2020-12-05)

  • (bropat) Added event states for camera (motion detected, person detected)
  • (bropat) Added event states for entry sensor (open/closed)
  • (bropat) Added event states for motion sensor (motion detected)
  • (bropat) Added event states for doorbell (motion detected, person detected, ringing)
  • (bropat) Added event states for indoor camera (motion detected, person detected, crying detected, sound detected, pet detected)
  • (bropat) Added entry sensor state (online, offline, etc.)
  • (bropat) Added entry sensor low battery
  • (bropat) Added motion sensor state (online, offline, etc.)
  • (bropat) Added motion sensor low battery
  • (bropat) Added keypad state (online, offline, etc.)
  • (bropat) Added keypad low battery

0.0.4 (2020-12-03)

  • (bropat) Better exception handling
  • (bropat) Fixed push token handling
  • (bropat) Added push connection retry mechanism
  • (bropat) Added camera state (online, offline, etc.)
  • (bropat) Added camera wifi RSSI
  • (bropat) Added camera total events since last charge
  • (bropat) Added camera saved/recorded events since last charge
  • (bropat) Added camera filtered false events since last charge
  • (bropat) Added camera used days since last charge
  • (bropat) Added camera battery temperature

0.0.3 (2020-11-21)

  • (bropat) Fixed issue with push notification credentials initialization

0.0.2 (2020-11-21)

  • (bropat) Added push notification support for event notification (raw notifications!)
  • (bropat) Added 2FA (token renewal needs manual intervention)
  • (bropat) Added P2P communication with station (event: Alarm mode change)
  • (bropat) Added more device classes (sensors, locks, keypads) with no actions (at the moment! WIP!)
  • (bropat) Added all eufy camera devices release to date
  • (bropat) Added battery state to eufy cameras

0.0.1 (2020-10-04)

  • (bropat) initial release

License

MIT License

Copyright (c) 2020-2023 bropat [email protected]

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

iobroker.eusec's People

Contributors

bropat avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

iobroker.eusec's Issues

sensor.getState is not a function

Hi,

Version 0.0.5 hat bei mir noch Schwierigkeiten mit dem State der entry sensors und wird daher laufend restartet. 0.0.4 läuft stabil.

2020-12-06 13:07:18.143 - info: eufy-security.0 (14902) starting. Version 0.0.5 in /opt/iobroker/node_modules/iobroker.eufy-security, node: v14.15.1, js-controller: 3.1.6
2020-12-06 13:07:18.316 - info: eufy-security.0 (14902) Refresh data from cloud and schedule next refresh.
2020-12-06 13:07:18.546 - info: eufy-security.0 (14902) state eufy-security.0.T8010P232010033B.station.lan_ip_address changed: 134.101.209.130 (ack = true)
2020-12-06 13:07:18.559 - info: eufy-security.0 (14902) state eufy-security.0.T8010P232010033B.station.lan_ip_address changed: 192.168.2.126 (ack = true)
2020-12-06 13:07:18.955 - error: eufy-security.0 (14902) unhandled promise rejection: sensor.getState is not a function
2020-12-06 13:07:18.956 - error: eufy-security.0 (14902) TypeError: sensor.getState is not a function
2020-12-06 13:07:18.959 - info: eufy-security.0 (14902) Disconnect from station T8010P232010033B.
2020-12-06 13:07:18.961 - error: eufy-security.0 (14902) unhandled promise rejection: sensor.getState is not a function
2020-12-06 13:07:18.962 - error: eufy-security.0 (14902) TypeError: sensor.getState is not a function
2020-12-06 13:07:18.982 - error: eufy-security.0 (14902) unhandled promise rejection: sensor.getState is not a function
2020-12-06 13:07:18.983 - error: eufy-security.0 (14902) TypeError: sensor.getState is not a function
2020-12-06 13:07:18.984 - error: eufy-security.0 (14902) unhandled promise rejection: sensor.getState is not a function
2020-12-06 13:07:18.984 - error: eufy-security.0 (14902) TypeError: sensor.getState is not a function
2020-12-06 13:07:18.985 - error: eufy-security.0 (14902) unhandled promise rejection: sensor.getState is not a function
2020-12-06 13:07:18.986 - error: eufy-security.0 (14902) TypeError: sensor.getState is not a function
2020-12-06 13:07:18.986 - error: eufy-security.0 (14902) unhandled promise rejection: sensor.getState is not a function
2020-12-06 13:07:18.987 - error: eufy-security.0 (14902) TypeError: sensor.getState is not a function
2020-12-06 13:07:18.988 - error: eufy-security.0 (14902) unhandled promise rejection: sensor.getState is not a function
2020-12-06 13:07:18.988 - error: eufy-security.0 (14902) TypeError: sensor.getState is not a function
2020-12-06 13:07:18.989 - error: eufy-security.0 (14902) unhandled promise rejection: sensor.getState is not a function
2020-12-06 13:07:18.990 - error: eufy-security.0 (14902) TypeError: sensor.getState is not a function
2020-12-06 13:07:19.000 - info: eufy-security.0 (14902) terminating
2020-12-06 13:07:19.002 - info: eufy-security.0 (14902) Terminated (NO_ERROR): Without reason

Gruß,
Thomas

Cannot change the guard mode

Describe the bug
Hello,

I have a similar issue to this one, but what's worse is that I can't even change it from the Objects view.

To Reproduce
Steps to reproduce the behavior:

  1. Go to Objects
  2. Click on the value of 'guard_mode'
  3. Select Home from the dropdown list, and click on the tick icon
  4. After a few minutes, it changed back to the previous mode

Screenshots & Logfiles
eufy-security.0 2020-12-30 14:56:38.293 debug (10898) EufyP2PClientProtocol.handleData(): commandId: CMD_SET_PAYLOAD (1350) - result: ERROR_PPCS_TIME_OUT (-3) - msg: f1d00098d1000001585a59484605840000000100ff000100fdffffff000000000000000000000000
eufy-security.0 2020-12-30 14:56:38.293 debug (10898) EufyP2PClientProtocol.handleData(): Result data for command received - message: {"sequence":1,"command_type":1350,"nested_command_type":1224,"channel":255,"data":{"type":"Buffer","data":[209,0
eufy-security.0 2020-12-30 14:56:38.293 error (10898) EufySecurity.stationP2PCommandResult(): Station: T8010P13201XXXXXXXX command CMD_SET_ARMING failed with error: ERROR_PPCS_TIME_OUT (-3)
eufy-security.0 2020-12-30 14:56:38.292 debug (10898) Station.onCommandResponse(): station: T8010P13201XXXXXXXX command_type: 1224 channel: 255 return_code: ERROR_PPCS_TIME_OUT (-3)
eufy-security.0 2020-12-30 14:56:38.291 debug (10898) EufyP2PClientProtocol.handleMsg(): DATA - received from host 192.168.110.231:28654 - Processing DATA with sequence 1...
eufy-security.0 2020-12-30 14:56:29.752 debug (10898) system.adapter.admin.0: logging true
eufy-security.0 2020-12-30 14:56:26.499 debug (10898) EufyP2PClientProtocol.handleMsg(): ACK - received from host 192.168.110.231:28654 for datatype DATA sequence 1
eufy-security.0 2020-12-30 14:56:26.491 debug (10898) EufyP2PClientProtocol._sendCommand(): sequence: 1 command_type: 1350 channel: 255 retries: 0 message_states.size: 1
eufy-security.0 2020-12-30 14:56:26.491 debug (10898) Station.setGuardMode(): Using CMD_SET_PAYLOAD...
eufy-security.0 2020-12-30 14:56:26.491 debug (10898) Station.setGuardMode(): P2P connection to station T8010P13201XXXXXXXX present, send command mode: 1.
eufy-security.0 2020-12-30 14:56:26.490 info (10898) state eufy-security.0.T8010P13201XXXXXXXX.station.guard_mode changed: 1 (ack = false)

Versions:

  • Adapter version: 0.1.1
  • JS-Controller version: 3.1.6
  • Node version: 12.20.0
  • Operating system: Debian GNU/Linux 10 (buster)

I assume it's due to ERROR_PPCS_TIME_OUT, but why? I'm currently running your adapter in a dockerised version of ioBroker, could that be the issue?

Thanks.

Feature request: Support 2FA

Describe the bug
My eufy account has 2FA activated. The adapter only provides fields für User and password.

Screenshots & Logfiles
log.log

Versions:

  • Adapter version: 0.0.1
  • JS-Controller version: 3.1.6
  • Node version: 12.18.3
  • Operating system: linux (Doker)

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

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!

Home Assistant intergration

I was wondering if this adapter can be integrated with Home Assistant? The current implementations are limited. It would be great is this software can be used with all described features.

(19951) unhandled promise rejection: Request failed with status code 404

Hallo Bropat,

seit gestern bekomme ich keine Verbindung mehr zum Adapter. Im Log taucht immer folgender Fehler auf:

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().

(19951) unhandled promise rejection: Request failed with status code 404

(19951) Error: Request failed with status code 404 at createError (/opt/iobroker/node_modules/axios/lib/core/createError.js:16:15) at settle (/opt/iobroker/node_modules/axios/lib/core/settle.j

Status iobroker:
verbunden mit eufy, der Rest negativ (steht auf rot)

Folgendes habe ich schon versucht: Alle beteiligten Geräte neu gestartet. Adapter deinstalliert. Neueste Version (heute) installiert.

Was könnte das Problem sein? Habe an Hard- und Software prinzipiell nichts verändert.

Viele Grüße

Feature request: Link to last created video for each camera as mp4

First of all - THANK YOU!
Works so far.

Currently, the last detection is saved as a TS file.
This is referred to in M3u8.

It would be great to be able to send the last file created as a Telegram.

Likewise, a conversion as MP4 would be super
But this could be done as ffmpeg per script (by me)

Feature request - Homebridge

Hello... sorry to ask, maybe I'm making a silly question, since I'm totally new to NMP and Homebrigde as well. Is there any way I install this package on Homebridge? I really need to find a way to control Eufy door sensors on Apple HomeKit. Thanks

HomeAssistant integration?

Is there an opportunity for Home Assistant integration? There are other projects but none that appear to have the flexibility/capability this one does.

Feature Request: Ein- oder Ausschalten der Bewegungserkennung

Hallo,
habe eine Eufy Indoorcam 2K Pan&Tilt. Auch wenn Guard Mode auf Disarmed ist, die Bewegungserkennung ist immer noch aktiv. Im App gibt es die Möglichkeit diese auszuschalten. Im Adapter habe ich solche Möglichkeit nicht gefunden. Es wäre toll wenn es die Möglichkeit geben würde die Bewegungserkennung mittels Adapter Ein- oder Auszuschalten.

Nur eine Homebase wird als Objekt beim ersten Einrichten ordentlich angelegt

Describe the bug
Richtet man den Adapter das erste Mal ein, so erscheint nur eine Homebase mit den verbundenen Kameras korrekt unter den Objekten.
Meine zweite Homebase erscheint lediglich als "Datenpunkt" ohne weitere unterpunkte.

Expected behavior
Es sollten für jede Homebase entsprechende Ordner nebst verbundener Kameras erstellt und angezeigt werden.

Workaround
1 x ioBroker komplett restarten behebt das Problem

Renew token failing for push notifications

hi bropat,

The push notification token has expired and the renewal is failing for me. Is there a solution or workaround for this?
Logs:
2020-11-30 12:39:15.168 - debug: eufy-security.0 (5541) handleDevices(): count: 1
2020-11-30 12:39:15.172 - debug: eufy-security.0 (5541) onConnect(): save api_base - api_base: https://security-app-eu.eufylife.com/v1
2020-11-30 12:39:15.174 - debug: eufy-security.0 (5541) onConnect(): save token and expiration - token: xxxxx token_expiration: Wed Dec 30 2020 12:36:58 GMT+0100 (Central European Standard Time)
2020-11-30 12:39:15.184 - debug: eufy-security.0 (5541) EufySecurity.registerPushNotifications(): Renew push credentials...
2020-11-30 12:39:15.228 - info: eufy-security.0 (5541) state eufy-security.0.T8010XXXXXXXXXX.cameras.T8210XXXXXXXXXX.last_camera_url changed: https://zhixin-security-eu.s3.eu-central-1.amazonaws.com/thumb/2020/xx/xx/station/T8010XXXXXXXXXX/xxxxxxxxx.jpg?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=xxxxx&X-Amz-Date=20201130T113915Z&X-Amz-Expires=86400&X-Amz-SignedHeaders=host&X-Amz-Signature=xxxxx (ack = true)
2020-11-30 12:39:15.321 - error: eufy-security.0 (5541) PushRegisterService.renewFidToken(): error: Error: Request failed with status code 400
2020-11-30 12:39:15.322 - error: 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().
2020-11-30 12:39:15.322 - error: eufy-security.0 (5541) unhandled promise rejection: FID Token renewal failed with error: Error: Request failed with status code 400
2020-11-30 12:39:15.323 - error: eufy-security.0 (5541) Error: FID Token renewal failed with error: Error: Request failed with status code 400
at PushRegisterService. (/opt/iobroker/node_modules/iobroker.eufy-security/build/lib/eufy-security/push/register.js:106:23)
at Generator.throw ()
at rejected (/opt/iobroker/node_modules/iobroker.eufy-security/build/lib/eufy-security/push/register.js:6:65)
at process._tickCallback (internal/process/next_tick.js:68:7)
2020-11-30 12:39:15.325 - info: eufy-security.0 (5541) Disconnect from station T8010XXXXXXXXXX.

Thanks,
tomazmla

Feature Request: Motion detection

Describe the Feature
Eufycam generates a "motion detected" event. This event should be an alert object in iobroker.
In Apple Homekit every Eufy cam is also listed as an motion detector.

Eufy 1 and Homebase 1 working

Great work with the adapter!
Just letting you know, I've got the Eufy 1 Camera (T8111) and Homebase 1 (T8001) and both are working perfectly fine.

Zweite Bearbeitung im Adapter

Hi wollte nochmal drauf hinweisen das man nur einmal im Adapter die Zugangsdaten eingeben kann.Wenn man sie wieder auslöscht und neu eingibt, funktioniert das abspeichern nicht mehr

Feature request: RTSP stream toggle

Hi @bropat!

Many, many thanks for your much appreciated work on this.

I was wondering if the adapter can turn on/off the RTSP stream. There is an option in the iOS app to do that (please see attached screenshot).

IMG_6808

Thank you for looking into this.

Unable to View Any .m3u8 Streams

Using version 0.2.0

Toggling "start_stream" for Eufy Cam 2/2 Pro generates a livestream url tail similar to:

/eufy-security.0/T8010XXXXXXXXX/live/T8114XXXXXXXXX.m3u8

But when I try something similar to the following url, the stream does not actually load (it does not appear that this path actually exists on the webserver):

http://<IPAddress>:8082/eufy-security.0/T8010XXXXXXXXX/live/T8114XXXXXXXXXX.m3u8

I've tried with both VLC and in the Chrome browser.

(I can resolve other files via other paths like http://<IPAddress>:8082/eufy-security.0/T8210XXXXXXXXXX.jpg without issue)

Question: Local Livestream Clarification

Hey Bropat,

Awesome work on this eufy security extension! I know you are working on the wiki / docs but I had a question. The README file states that this supports

Start livestream (hls; supports also local livestream)
Stop livestream (hls)".

I have a Eufy wired 2k doorbell Wired Doorbell 2k (T8200). If you start the livestream, the livestream variable gives you a piece of a url in which you can use VLC to view. Is this livestream local or through the cloud (RTMP?). If this is through the local device directly, I would love to stream it continuously (almost like a poor mans RTSP stream). The only reason I have not done this is I am not sure if it is through the cloud (thus using my internet cap from my ISP). I have seen other Eufy extensions that will give you a URL but it is a cloud web address.

Thanks so much and sorry if this is a stupid question :).

"live" directory always empty, no m3u8 file

Describe the bug
After activation of the start stream button "live" directory always empty, no m3u8 file

To Reproduce
Steps to reproduce the behavior:

  1. Go to 'Objets'
  2. Click on 'eufy-security.0.T8010XXXXXXXXXXX.cameras.T8114XXXXXXXXXXX.start_stream' button.start

Expected behavior
The presence of the eufy-security.0/T8010XXXXXXXXXXX/live/T8114XXXXXXXXXXX.m3u8 file.

Screenshots & Logfiles
attached logfiles
LogEufy18022021.txt

Versions:

  • Adapter version: 0.2.3
  • JS-Controller version: 3.1.6
  • Node version: v14.15.3
  • Operating system: Ubuntu 20.04.1 LTS

Create MP4

Es ist möglich den rtsp stream in eine mp4 zu wandeln
ffmpeg -i rtsp://user:[email protected]/live3 -r 10 -t 60 -vcodec copy -acodec copy -y /opt/iobroker/OUT.mp4

Evtl kann das in den Adapter eingebunden werden

Leider ist der rtsp stream nicht immer abgreifbar
Da muss er erst wieder neu gestartet werden

Getting Unhandled promise rejection errors

Thanks for your work on this adapter.

I have installed it and am trying it out.

The adapter starts fine, but then I get some errors, and the adapter restarts over and over again. Here is the log:

host.[REDACTED] | 2020-12-24 17:24:55.513 | info | Restart adapter system.adapter.eufy-security.0 because enabled
-- | -- | -- | --
host.[REDACTED] | 2020-12-24 17:24:55.513 | info | instance system.adapter.eufy-security.0 terminated with code 0 (NO_ERROR)
eufy-security.0 | 2020-12-24 17:24:55.011 | error | (420) Error: Request failed with status code 404 at createError (/opt/iobroker/node_modules/iobroker.eufy-security/node_modules/axios/lib/core/createError.js:16:15) at settle (/opt/iobroker/no
eufy-security.0 | 2020-12-24 17:24:55.010 | error | (420) unhandled promise rejection: Request failed with status code 404
eufy-security.0 | 2020-12-24 17:24:55.010 | error | 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().
eufy-security.0 | 2020-12-24 17:24:54.974 | info | (420) Terminated (NO_ERROR): Without reason
eufy-security.0 | 2020-12-24 17:24:54.973 | info | (420) terminating
eufy-security.0 | 2020-12-24 17:24:54.964 | error | (420) Error: Request failed with status code 404 at createError (/opt/iobroker/node_modules/iobroker.eufy-security/node_modules/axios/lib/core/createError.js:16:15) at settle (/opt/iobroker/no
eufy-security.0 | 2020-12-24 17:24:54.964 | error | (420) unhandled promise rejection: Request failed with status code 404
eufy-security.0 | 2020-12-24 17:24:54.963 | error | 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().
eufy-security.0 | 2020-12-24 17:24:54.961 | info | (420) Disconnect from station [REDACTED].
eufy-security.0 | 2020-12-24 17:24:54.958 | error | (420) Error: Request failed with status code 404 at createError (/opt/iobroker/node_modules/iobroker.eufy-security/node_modules/axios/lib/core/createError.js:16:15) at settle (/opt/iobroker/no
eufy-security.0 | 2020-12-24 17:24:54.956 | error | (420) unhandled promise rejection: Request failed with status code 404
eufy-security.0 | 2020-12-24 17:24:54.955 | error | 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().
eufy-security.0 | 2020-12-24 17:24:53.031 | info | (420) state eufy-security.0.[REDACTED].station.lan_ip_address changed: [REDACTED] (ack = true)
eufy-security.0 | 2020-12-24 17:24:53.022 | info | (420) state eufy-security.0.[REDACTED].station.lan_ip_address changed: [REDACTED] (ack = true)
eufy-security.0 | 2020-12-24 17:24:52.027 | info | (420) Refresh data from cloud and schedule next refresh.
eufy-security.0 | 2020-12-24 17:24:51.902 | info | (420) starting. Version 0.0.8 in /opt/iobroker/node_modules/iobroker.eufy-security, node: v12.20.0, js-controller: 3.1.6
host.[REDACTED] | 2020-12-24 17:24:50.754 | info | instance system.adapter.eufy-security.0 started with pid 420
info.0 | 2020-12-24 17:24:49.612 | info | (119) starting. Version 1.7.10 in /opt/iobroker/node_modules/iobroker.info, node: v12.20.0, js-controller: 3.1.6

I did see it once get some data from the camera, but then it reverted back to this behavior.

Do you have any ideas what this may be?

Thanks

Versions:

  • Adapter version: 0.0.8
  • JS-Controller version: 3.1.6
  • Node version: v12.20.0
  • Operating system: Using docker: buanet/iobroker:latest

Endless loop: lan_ip_address changed, consumes 100% CPU

It's the first time that I'm trying out this adapter (and also my first time with iobroker). I have 3 EufyCam 2C Pros and I was able to add them to iobroker (latest stable from today) without a problem. After a few hours, the adapter "went crazy" and flipped the lan_ip_address in an endless loop, consuming 100% CPU:

2021-02-06 20:44:57.687  - info: mqtt.0 (21783) send2Server eufy-security.0.T8010N2320435969.station.lan_ip_address[iobroker/eufy-security/0/T8010N2320435969/station/lan_ip_address]
2021-02-06 20:44:57.688  - info: eufy-security.0 (23758) state eufy-security.0.T8010N2320435969.station.lan_ip_address changed: 192.168.178.45 (ack = true)
2021-02-06 20:44:57.691  - info: mqtt.0 (21783) send2Server eufy-security.0.T8010N2320435969.station.lan_ip_address[iobroker/eufy-security/0/T8010N2320435969/station/lan_ip_address]
2021-02-06 20:44:57.691  - info: eufy-security.0 (23758) state eufy-security.0.T8010N2320435969.station.lan_ip_address changed: 78.xxx.xxx.xxx (ack = true)
2021-02-06 20:44:57.694  - info: mqtt.0 (21783) send2Server eufy-security.0.T8010N2320435969.station.lan_ip_address[iobroker/eufy-security/0/T8010N2320435969/station/lan_ip_address]
2021-02-06 20:44:57.694  - info: eufy-security.0 (23758) state eufy-security.0.T8010N2320435969.station.lan_ip_address changed: 192.168.178.45 (ack = true)
2021-02-06 20:44:57.698  - info: mqtt.0 (21783) send2Server eufy-security.0.T8010N2320435969.station.lan_ip_address[iobroker/eufy-security/0/T8010N2320435969/station/lan_ip_address]
2021-02-06 20:44:57.698  - info: eufy-security.0 (23758) state eufy-security.0.T8010N2320435969.station.lan_ip_address changed: 78.xxx.xxx.xxx (ack = true)
2021-02-06 20:44:57.701  - info: mqtt.0 (21783) send2Server eufy-security.0.T8010N2320435969.station.lan_ip_address[iobroker/eufy-security/0/T8010N2320435969/station/lan_ip_address]
2021-02-06 20:44:57.701  - info: eufy-security.0 (23758) state eufy-security.0.T8010N2320435969.station.lan_ip_address changed: 192.168.178.45 (ack = true)
2021-02-06 20:44:57.705  - info: mqtt.0 (21783) send2Server eufy-security.0.T8010N2320435969.station.lan_ip_address[iobroker/eufy-security/0/T8010N2320435969/station/lan_ip_address]
2021-02-06 20:44:57.708  - info: eufy-security.0 (23758) state eufy-security.0.T8010N2320435969.station.lan_ip_address changed: 78.xxx.xxx.xxx (ack = true)
2021-02-06 20:44:57.708  - info: mqtt.0 (21783) send2Server eufy-security.0.T8010N2320435969.station.lan_ip_address[iobroker/eufy-security/0/T8010N2320435969/station/lan_ip_address]
2021-02-06 20:44:57.709  - info: eufy-security.0 (23758) state eufy-security.0.T8010N2320435969.station.lan_ip_address changed: 192.168.178.45 (ack = true)
2021-02-06 20:44:57.712  - info: mqtt.0 (21783) send2Server eufy-security.0.T8010N2320435969.station.lan_ip_address[iobroker/eufy-security/0/T8010N2320435969/station/lan_ip_address]
2021-02-06 20:44:57.712  - info: eufy-security.0 (23758) state eufy-security.0.T8010N2320435969.station.lan_ip_address changed: 78.xxx.xxx.xxx (ack = true)
2021-02-06 20:44:57.715  - info: mqtt.0 (21783) send2Server eufy-security.0.T8010N2320435969.station.lan_ip_address[iobroker/eufy-security/0/T8010N2320435969/station/lan_ip_address]
2021-02-06 20:44:57.716  - info: eufy-security.0 (23758) state eufy-security.0.T8010N2320435969.station.lan_ip_address changed: 192.168.178.45 (ack = true)
2021-02-06 20:44:57.719  - info: mqtt.0 (21783) send2Server eufy-security.0.T8010N2320435969.station.lan_ip_address[iobroker/eufy-security/0/T8010N2320435969/station/lan_ip_address]
2021-02-06 20:44:57.719  - info: eufy-security.0 (23758) state eufy-security.0.T8010N2320435969.station.lan_ip_address changed: 78.xxx.xxx.xxx (ack = true)
2021-02-06 20:44:57.722  - info: mqtt.0 (21783) send2Server eufy-security.0.T8010N2320435969.station.lan_ip_address[iobroker/eufy-security/0/T8010N2320435969/station/lan_ip_address]
2021-02-06 20:44:57.723  - info: eufy-security.0 (23758) state eufy-security.0.T8010N2320435969.station.lan_ip_address changed: 192.168.178.45 (ack = true)
2021-02-06 20:44:57.726  - info: mqtt.0 (21783) send2Server eufy-security.0.T8010N2320435969.station.lan_ip_address[iobroker/eufy-security/0/T8010N2320435969/station/lan_ip_address]
2021-02-06 20:44:57.726  - info: eufy-security.0 (23758) state eufy-security.0.T8010N2320435969.station.lan_ip_address changed: 78.xxx.xxx.xxx (ack = true)
2021-02-06 20:44:57.729  - info: mqtt.0 (21783) send2Server eufy-security.0.T8010N2320435969.station.lan_ip_address[iobroker/eufy-security/0/T8010N2320435969/station/lan_ip_address]
2021-02-06 20:44:57.729  - info: eufy-security.0 (23758) state eufy-security.0.T8010N2320435969.station.lan_ip_address changed: 192.168.178.45 (ack = true)
2021-02-06 20:44:57.733  - info: mqtt.0 (21783) send2Server eufy-security.0.T8010N2320435969.station.lan_ip_address[iobroker/eufy-security/0/T8010N2320435969/station/lan_ip_address]
2021-02-06 20:44:57.733  - info: eufy-security.0 (23758) state eufy-security.0.T8010N2320435969.station.lan_ip_address changed: 78.xxx.xxx.xxx (ack = true)
2021-02-06 20:44:57.736  - info: mqtt.0 (21783) send2Server eufy-security.0.T8010N2320435969.station.lan_ip_address[iobroker/eufy-security/0/T8010N2320435969/station/lan_ip_address]
2021-02-06 20:44:57.736  - info: eufy-security.0 (23758) state eufy-security.0.T8010N2320435969.station.lan_ip_address changed: 192.168.178.45 (ack = true)
2021-02-06 20:44:57.740  - info: mqtt.0 (21783) send2Server eufy-security.0.T8010N2320435969.station.lan_ip_address[iobroker/eufy-security/0/T8010N2320435969/station/lan_ip_address]
2021-02-06 20:44:57.740  - info: eufy-security.0 (23758) state eufy-security.0.T8010N2320435969.station.lan_ip_address changed: 78.xxx.xxx.xxx (ack = true)
2021-02-06 20:44:57.743  - info: mqtt.0 (21783) send2Server eufy-security.0.T8010N2320435969.station.lan_ip_address[iobroker/eufy-security/0/T8010N2320435969/station/lan_ip_address]
2021-02-06 20:44:57.743  - info: eufy-security.0 (23758) state eufy-security.0.T8010N2320435969.station.lan_ip_address changed: 192.168.178.45 (ack = true)
2021-02-06 20:44:57.747  - info: mqtt.0 (21783) send2Server eufy-security.0.T8010N2320435969.station.lan_ip_address[iobroker/eufy-security/0/T8010N2320435969/station/lan_ip_address]
2021-02-06 20:44:57.747  - info: eufy-security.0 (23758) state eufy-security.0.T8010N2320435969.station.lan_ip_address changed: 78.xxx.xxx.xxx (ack = true)
2021-02-06 20:44:57.750  - info: mqtt.0 (21783) send2Server eufy-security.0.T8010N2320435969.station.lan_ip_address[iobroker/eufy-security/0/T8010N2320435969/station/lan_ip_address]
2021-02-06 20:44:57.750  - info: eufy-security.0 (23758) state eufy-security.0.T8010N2320435969.station.lan_ip_address changed: 192.168.178.45 (ack = true)
2021-02-06 20:44:57.753  - info: mqtt.0 (21783) send2Server eufy-security.0.T8010N2320435969.station.lan_ip_address[iobroker/eufy-security/0/T8010N2320435969/station/lan_ip_address]
2021-02-06 20:44:57.754  - info: eufy-security.0 (23758) state eufy-security.0.T8010N2320435969.station.lan_ip_address changed: 78.xxx.xxx.xxx (ack = true)
2021-02-06 20:44:57.757  - info: mqtt.0 (21783) send2Server eufy-security.0.T8010N2320435969.station.lan_ip_address[iobroker/eufy-security/0/T8010N2320435969/station/lan_ip_address]
2021-02-06 20:44:57.758  - info: eufy-security.0 (23758) state eufy-security.0.T8010N2320435969.station.lan_ip_address changed: 192.168.178.45 (ack = true)
2021-02-06 20:44:57.761  - info: mqtt.0 (21783) send2Server eufy-security.0.T8010N2320435969.station.lan_ip_address[iobroker/eufy-security/0/T8010N2320435969/station/lan_ip_address]
2021-02-06 20:44:57.761  - info: eufy-security.0 (23758) state eufy-security.0.T8010N2320435969.station.lan_ip_address changed: 78.xxx.xxx.xxx (ack = true)
2021-02-06 20:44:57.764  - info: mqtt.0 (21783) send2Server eufy-security.0.T8010N2320435969.station.lan_ip_address[iobroker/eufy-security/0/T8010N2320435969/station/lan_ip_address]
2021-02-06 20:44:57.764  - info: eufy-security.0 (23758) state eufy-security.0.T8010N2320435969.station.lan_ip_address changed: 192.168.178.45 (ack = true)
2021-02-06 20:44:57.768  - info: mqtt.0 (21783) send2Server eufy-security.0.T8010N2320435969.station.lan_ip_address[iobroker/eufy-security/0/T8010N2320435969/station/lan_ip_address]
2021-02-06 20:44:57.768  - info: eufy-security.0 (23758) state eufy-security.0.T8010N2320435969.station.lan_ip_address changed: 78.xxx.xxx.xxx (ack = true)
2021-02-06 20:44:57.771  - info: mqtt.0 (21783) send2Server eufy-security.0.T8010N2320435969.station.lan_ip_address[iobroker/eufy-security/0/T8010N2320435969/station/lan_ip_address]
2021-02-06 20:44:57.771  - info: eufy-security.0 (23758) state eufy-security.0.T8010N2320435969.station.lan_ip_address changed: 192.168.178.45 (ack = true)
2021-02-06 20:44:57.775  - info: mqtt.0 (21783) send2Server eufy-security.0.T8010N2320435969.station.lan_ip_address[iobroker/eufy-security/0/T8010N2320435969/station/lan_ip_address]
2021-02-06 20:44:57.775  - info: eufy-security.0 (23758) state eufy-security.0.T8010N2320435969.station.lan_ip_address changed: 78.xxx.xxx.xxx (ack = true)
2021-02-06 20:44:57.778  - info: mqtt.0 (21783) send2Server eufy-security.0.T8010N2320435969.station.lan_ip_address[iobroker/eufy-security/0/T8010N2320435969/station/lan_ip_address]
2021-02-06 20:44:57.778  - info: eufy-security.0 (23758) state eufy-security.0.T8010N2320435969.station.lan_ip_address changed: 192.168.178.45 (ack = true)
2021-02-06 20:44:57.782  - info: mqtt.0 (21783) send2Server eufy-security.0.T8010N2320435969.station.lan_ip_address[iobroker/eufy-security/0/T8010N2320435969/station/lan_ip_address]
2021-02-06 20:44:57.782  - info: eufy-security.0 (23758) state eufy-security.0.T8010N2320435969.station.lan_ip_address changed: 78.xxx.xxx.xxx (ack = true)
2021-02-06 20:44:57.785  - info: mqtt.0 (21783) send2Server eufy-security.0.T8010N2320435969.station.lan_ip_address[iobroker/eufy-security/0/T8010N2320435969/station/lan_ip_address]
2021-02-06 20:44:57.785  - info: eufy-security.0 (23758) state eufy-security.0.T8010N2320435969.station.lan_ip_address changed: 192.168.178.45 (ack = true)
2021-02-06 20:44:57.788  - info: mqtt.0 (21783) send2Server eufy-security.0.T8010N2320435969.station.lan_ip_address[iobroker/eufy-security/0/T8010N2320435969/station/lan_ip_address]
2021-02-06 20:44:57.789  - info: eufy-security.0 (23758) state eufy-security.0.T8010N2320435969.station.lan_ip_address changed: 78.xxx.xxx.xxx (ack = true)
2021-02-06 20:44:57.792  - info: mqtt.0 (21783) send2Server eufy-security.0.T8010N2320435969.station.lan_ip_address[iobroker/eufy-security/0/T8010N2320435969/station/lan_ip_address]
2021-02-06 20:44:57.792  - info: eufy-security.0 (23758) state eufy-security.0.T8010N2320435969.station.lan_ip_address changed: 192.168.178.45 (ack = true)
2021-02-06 20:44:57.795  - info: mqtt.0 (21783) send2Server eufy-security.0.T8010N2320435969.station.lan_ip_address[iobroker/eufy-security/0/T8010N2320435969/station/lan_ip_address]
2021-02-06 20:44:57.796  - info: eufy-security.0 (23758) state eufy-security.0.T8010N2320435969.station.lan_ip_address changed: 78.xxx.xxx.xxx (ack = true)

And so on. Only a complete restart of iobroker ended this, after that things were back to normal. It flips between the internal and external IP address of the base. Any idea what may have caused this?

Platform: linux
os: linux
Architecture: arm
CPUs: 4
Speed: 1500 MHz
Model: ARMv7 Processor rev 3 (v7l)
RAM: 3.7 GB
System uptime: 5 T. 00:35:40
Node.js: v12.20.1
NPM: 6.14.10
Disk size: 29.0 GiB
Disk free: 25.1 GiB
adapters count: 326
Uptime: 00:06:45
Active instances: 5

Guard Mode can only be changed from Objects view (not via cli, mqtt...)

Describe the bug
I tried to change the Guard Mode via MQTT to build some kind of bridge between ioBroker and Home Assistant. But when I change the value of guard_mode from anywhere except the ioBroker Objects view it seems not to get submitted. The Object view shows new value, but it will be replaced by the old value on next pull.

I know you are not the HomeAssistant guy, but this can be broken down to a non HomeAssistant related issue.

To Reproduce
Easiest way is to reproduce via the iobroker command line.

Steps to reproduce the behavior:
0. Have homebase Guard Mode set to Home(1)

  1. Get access to a ioBroker CLI. (As I use docker, I simply run a fresh /bin/sh and attach myself
  2. run iobroker state set eufy-security.0.T8010NXXXXXXXXXX.station.guard_mode 0 true
    response: The state "eufy-security.0.T8010NXXXXXXXXXX.station.guard_mode" was set to "0" with flag ack=true
  3. Observe the change to the new Value at the Objects view
  4. Wait max. one pull interval
  5. Value changes back to old one

Expected behavior
Value should be set to new one, stay the new one and App should reflect the new value.

Screenshots & Logfiles
Only log line that shows up is:

eufy-security.0 | 2020-12-25 11:14:58.611 | info | (4299) state eufy-security.0.T8010NXXXXXXXXXX.station.guard_mode changed: 1 (ack = true)

Versions:

Additional context
I guess there is some trigger(?) missing as it seems the command is only setting the current state but not publishing the new state to the servers.

Grüße aus Frankfurt am Main
Max

Problème avec Jeedom

Bonjour,
J'ai installer sur mon raspberry Jeedom et Apache 3.8.3
J'ai ensuite installer eufy va ligne de commande et créé les commande python pour actionner les changements d'états mais j'ai ce retour

Erreur sur /var/www/html/plugins/script/data/maison.sh 2>&1 valeur retournée : 1. Détails : Traceback (most recent call last): File « /home/jeedom/Eufy/Maison.PY », line 8, in from eufy_security.types import GuardMode ModuleNotFoundError: No module named ‹ eufy_security.types ›

Je ne sais pas quoi faire, si une âme charitable veux bien m'aider...

Merci d’avoir pris le temps de me lire et de vos retour
Cordialement
Matthieu

Livestream of doorbell video is scrambled

If you start a live stream of the doorbell by clicking the state in iobroker.admin you get the relative url and if you start this in vlc, half of the picture is scrambled in a typical "broken stream" way.

Push Benachrichtigungen werden nicht mehr angezeigt

Bei den Cameras sind zahlreiche Datenpunkte hinzugekommen, allerdings kann ich seit der Version 0.0.5 ich die Push-Benachrichtigungen bei den Objekten nicht mehr finden. Ist das so gewollt? Push connection ist aktiviert.
Die Funktion war ganz hilfreich, da man sich den Inhalt direkt z.B. im VIS anzeigen lassen konnte.

Adapter cannot start

Describe the bug
After the installation the adapter cannot start and is not visible in ioBroker.

To Reproduce
Steps to reproduce the behavior:
Install Adapter from the command line.

Expected behavior
A clear and concise description of what you expected to happen.

Screenshots & Logfiles

souhl@node2:/opt/iobroker$ npm i iobroker.eufy-security
[sudo] password for souhl: 

> [email protected] postinstall /opt/iobroker/node_modules/protobuf-typescript
> node scripts/postinstall

npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected] (node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for [email protected]: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected] (node_modules/osx-temperature-sensor):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for [email protected]: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})

+ [email protected]
added 21 packages from 62 contributors in 4.791s

30 packages are looking for funding
  run `npm fund` for details
souhl@node2:/opt/iobroker/node_modules/iobroker.eufy-security/build$ node main.js 0 --debug
2020-12-11 19:20:27.868  - debug: eufy-security.0 (24207) Redis Objects: Use Redis connection: 127.0.0.1:9001
2020-12-11 19:20:27.881  - debug: eufy-security.0 (24207) Objects client ready ... initialize now
2020-12-11 19:20:27.884  - debug: eufy-security.0 (24207) Objects create System PubSub Client
2020-12-11 19:20:27.885  - debug: eufy-security.0 (24207) Objects create User PubSub Client
2020-12-11 19:20:27.885  - debug: eufy-security.0 (24207) Objects client initialize lua scripts
2020-12-11 19:20:27.891  - debug: eufy-security.0 (24207) Objects connected to redis: 127.0.0.1:9001
2020-12-11 19:20:27.893  - debug: eufy-security.0 (24207) objectDB connected
2020-12-11 19:20:27.894  - debug: eufy-security.0 (24207) Redis States: Use Redis connection: 127.0.0.1:9000
2020-12-11 19:20:27.897  - debug: eufy-security.0 (24207) States create User PubSub Client
2020-12-11 19:20:27.898  - debug: eufy-security.0 (24207) States create System PubSub Client
2020-12-11 19:20:27.903  - debug: eufy-security.0 (24207) States connected to redis: 127.0.0.1:9000
2020-12-11 19:20:27.903  - debug: eufy-security.0 (24207) statesDB connected
2020-12-11 19:20:27.906  - error: eufy-security.0 (24207) eufy-security.0 invalid config
2020-12-11 19:20:27.906  - warn: eufy-security.0 (24207) Terminated (INVALID_ADAPTER_CONFIG): Without reason

Versions:

  • Adapter version: 0.0.7
  • JS-Controller version: 3.1.6
  • Node version: v14.15.1
  • Operating system: 18.04.5 LTS (Bionic Beaver)

Additional context
Add any other context about the problem here.

Feature Request: Eufy Smart Lock w/ WiFi Bridge

Hello,

I've purchased one of Eufy's Smart Locks - Model T8500 (non-fingerprint), paired with their WiFi Bridge, and am hoping I can set this up with your adapter. This would be my first attempt at using ioBroker in general.

It would seem that changing the guard_mode value has no effect on the lock position, but I do get a push notification about the change regardless. I have set the loglevel to debug, and pulled the log, but don't see anything that stands out. I wasn't sure how to fully obfuscate personal information from the log; I'd be happy to go through them and manually remove information, or simply email the logs to @bropat if that is okay. If this integration can possibly be supported, I would be very happy to be used for testing.

Thank you for all your help.

CleanShot 2021-01-26 at 17 28 28

ERROR_INVALID_PARAM (-110)

Hi There,

I setup the eufy-security plugin (version 0.0.9) in ioBroker following this tutorial: https://blog.fuzzymistborn.com/controlling-eufy-security-devices-with-iobroker/

I can see all the status of my camera and home base successfully (Homebase 2 + eufyCam 2C).

image

When I try and set data, for example the guard_mode, the value fails to be set, with ioBroker showing the following error log:

2020-12-29 11:08:04.232 - info: eufy-security.0 (13227) state eufy-security.0.T8XXXXXXXXXXXX.station.guard_mode changed: 1 (ack = false)
2020-12-29 11:08:04.233 - debug: eufy-security.0 (13227) Station.setGuardMode(): P2P connection to station T8XXXXXXXXXXXX present, send command mode: 1.
2020-12-29 11:08:04.234 - debug: eufy-security.0 (13227) Station.setGuardMode(): Using CMD_SET_PAYLOAD...
2020-12-29 11:08:04.235 - debug: eufy-security.0 (13227) EufyP2PClientProtocol._sendCommand(): sequence: 0 command_type: 1350 channel: 255 retries: 0 message_states.size: 1
2020-12-29 11:08:04.243 - debug: eufy-security.0 (13227) EufyP2PClientProtocol.handleMsg(): ACK - received from host 10.13.37.21:18042 for datatype DATA sequence 0
2020-12-29 11:08:04.275 - debug: eufy-security.0 (13227) EufyP2PClientProtocol.handleMsg(): DATA - received from host 10.13.37.21:18042 - Processing DATA with sequence 0...
2020-12-29 11:08:04.276 - debug: eufy-security.0 (13227) Station.onCommandResponse(): station: T8XXXXXXXXXXXX command_type: 1224 channel: 255 return_code: ERROR_INVALID_PARAM (-110)
2020-12-29 11:08:04.277 - error: eufy-security.0 (13227) EufySecurity.stationP2PCommandResult(): Station: T8XXXXXXXXXXXX command CMD_SET_ARMING failed with error: ERROR_INVALID_PARAM (-110)
# trimmed the data object
2020-12-29 11:08:04.278 - debug: eufy-security.0 (13227) EufyP2PClientProtocol.handleData(): Result data for command received - message: {"sequence":0,"command_type":1350,"nested_command_type":1224,"channel":255,"data":{"type":"Buffer","data":[209,0,0,0,88,90,89,72,70,5,128,0,0,0,1,0,255,0,0,0,123,34,97,99,99,....]},"retries":1,"acknowledged":true,"return_code":-1,"timeout":{"_idleTimeout":-1,"_idlePrev":null,"_idleNext":null,"_idleStart":19351,"_onTimeout":null,"_repeat":null,"_destroyed":true}} result: ERROR_INVALID_PARAM (-110)
2020-12-29 11:08:04.278 - debug: eufy-security.0 (13227) EufyP2PClientProtocol.handleData(): commandId: 
# I trimmed the msg string
CMD_SET_PAYLOAD (1350) - result: ERROR_INVALID_PARAM (-110) - msg: f1d00098d1000000585a5948XXXXXXXXX

I can send the full data and msg strings, just wasn't sure if they contained secrets so trimmed them.

Appreciate your work on this integration! 👍

Snapshot bei Bewegegunserkennung mit 404

Describe the bug
Bei einer erkannten Bewegung versucht der Adapter den Snapshot abzuholen und bekommt einen 404.

To Reproduce
Steps to reproduce the behavior:

  1. Vor die Kamera treten.
  2. Push-Benachrichtigung abwarten
  3. Im Log nachsehen
  4. Fehler wie folgt:
error: eufy-security.0 (7675) saveImage(): getImage Error: Error: Request failed with status code 404 - url: https://security-app-eu.eufylife.com/v1/...
- info: eufy-security.0 (7675) state eufy-security.0.XXX.cameras.XXX.last_captured_pic_url changed: /eufy-security.0/last_captured_XXX.jpg (ack = true)

Expected behavior
Vermutlich ist der Adapter zu schnell und der Snapshot noch nicht verfügbar, denn beim nächsten Cloud Sync holt er ihn dann erfolgreich:

info: eufy-security.0 (7675) Refresh data from cloud and schedule next refresh.
...
info: eufy-security.0 (7675) state eufy-security.0.XXX.cameras.XXX.last_event_pic_html changed: <img src="data:image/jpg;base64,/9j/2wBDACA...

Versions:

  • Adapter version: 0.1.5

Feature request: Button zum aktualisieren des Snapshots einer Kamera

Hallo!

Im Moment wird beim Aufrufen der URL des Snapshots immer das letzte "Alarmbild" der entsprechenden Eufy gezeigt.
Toll wäre es, wenn man händisch ein aktuelles erstellen könnte. Dann könnte man dieses nämlich weiter verarbeiten und beispielsweise über Telegram versenden...

Grüße,
Thomas

(2716513) handlePushNotifications(): Error: Error: Request failed with status code 404

Hallo Bropat,

bei der aktuellen Version vom Adapter bleiben die Bewegungsstates (Person erkannt) "kleben" und funktionieren im Vergleich zu den älteren Versionen (glaub war auf 0.0.8 vorher) nicht mehr zuverlässig. Im LOG taucht immer wieder folgender Error auf:

(2716513) handlePushNotifications(): Error: Error: Request failed with status code 404

Wäre nett, wenn du dir das mal anschauen könntest. Danke :o)

Guard-mode wechselt nicht

Hallo,

Leider funktioniert es nach der Aktualisierung immer noch nicht. Ich habe ein Update auf die aktuelle version gemacht. Bei mir möchte ich den Status in Abhängigkeit meiner Alarmanlage wechseln. Mit meinem Workaround (Adapter Neustarten) klappt es.

Feature request: Alarm manuell über DP antriggern

Hallo und danke für die super Arbeit!

ist es möglich das man die Homebase2 antriggern kann so das die den Alarm auslöst? So könnte man sie in ioBroker in eine Alarmanlage oder in Wasserlecksensoren einbinden.

Feature request: Support devices without station

Hi, thanks for your great work. I´m really looking forward for this adapter.
I own the wired doorbell: https://www.eufylife.com/products/variant/video-doorbell-2k-wired/T82001J1
and the indoor dome camera: https://www.eufylife.com/products/variant/indoor-cam-2k-pan-and-tilt/T8410121
I don´t have a homebase as theese devices don´t need one, which was the main reason I bought them.

Both devices show up with their attributes.
However there´s no option to change the guard mode or any other functionality.

Is this becuase of the missing homebase?

If you need any logs I´m happy to support you.

Best,
Bjoern

Type of station.guard_mode changes to number when changed manually, turns back to string when fetched from api

Describe the bug
While playing around I found some strange issues with my visualization. The type of station.guard_mode seems to be incosistent.

To Reproduce
Steps to reproduce the behavior:

  1. Fire up some command at the iobroker host
  2. fetch current state of the station.guard_mode
root@iobroker:/opt/iobroker# iobroker state get eufy-security.0.T8010NXXXXXXX.station.guard_mode                                       
{"val":"1","ack":true,"ts":1609259693908,"q":0,"from":"system.adapter.eufy-security.0","lc":1609259693908}    

Note the val is quoted.

  1. Change the value from e.g. the object overview to something else, e.g. from current Home (1) to away (0)
  2. quickly run the command to fetch the current state again:
root@iobroker:/opt/iobroker# iobroker state get eufy-security.0.T8010NXXXXXXX.station.guard_mode                                       
{"val":0,"ack":true,"ts":1609259947464,"q":0,"from":"system.adapter.admin.0","user":"system.user.admin","lc":1609259947464} 

Note the val is unquoted.

  1. Run it again after one pull (default 10min I think)
root@iobroker:/opt/iobroker# iobroker state get eufy-security.0.T8010NXXXXXXX.station.guard_mode                                       
{"val":"0","ack":true,"ts":1609259995023,"q":0,"from":"system.adapter.eufy-security.0","lc":1609259995023}

Note the val is quoted.

Expected behavior
I would expect the type of station.guard_mode to be consistent. Either String or Number.

Screenshots & Logfiles

root@iobroker:/opt/iobroker# iobroker state get eufy-security.0.T8010NXXXXXXX.station.guard_mode                                       
{"val":"1","ack":true,"ts":1609259693908,"q":0,"from":"system.adapter.eufy-security.0","lc":1609259693908}                                
              

Versions:

Current_mode so richtig?

Hi, ich habe gerade festgestellt, dass der current_mode im Geofence Modus beim nach Hause kommen nur einmal kurz auf "home(1)" geht, danach geht er wieder sofort in "Disarmed(63)". Ist das so gewollt?
Wäre es möglich, einen Datenpunkt zu bekommen, sobald die Kamera eine Aufzeichnung startet? Dann kann man sie vor der Haustür als Bewegungsmelder nutzen.

Mit freundlichen Grüßen

Stefan

Push notification for doorbell ring does not update snapshot

After the fix for motion detected snapshots, apparently something is wrong with doorbell ring snapshots. If someone rings, the adapter receives the push notification, but the snapshot is apparently not downloaded and the states are also not updated.

See the log, directly with silly logging :)

2021-02-18 16:56:11.575  - ESC[34mdebugESC[39m: eufy-security.0 (2760) PushClient.handleParsedMessage(): DataMessageStanza: message: {"tag":8,"object": 
{"id":"XXX","from":"348804314802","to":"XXX","category":"com.oceanwing.battery.cam","appData":[{"key":"content","value":"Doorbell:Someone has press doorbell"},{"key":"device_sn","value":"T82XXX"},{"key":"event_time","value":"1613663771068"},{"key":"payload","value":"XXX"},{"key":"push_time","value":"1613663771529"},{"key":"station_sn","value":"T8XXX"},{"key":"title","value":""},{"key":"type","value":"7"},{"key":"google.c.sender.id","value":"34XXX"}],"persistentId":"0:1613663771547269%0d2a775cf9fd7ecd","ttl":3600,"sent":"1613663771538"}}

2021-02-18 16:56:11.575  - ESC[35msillyESC[39m: eufy-security.0 (2760) PushNotificationService.onMessage(): raw_message: [{"id":"XXX","from":"348804314802","to":"edoHbP3qEPnhXXX","category":"com.oceanwing.battery.cam","persistentId":"0:1613663771547269%0d2a775cf9fd7ecd","ttl":3600,"sent":"1613663771538","payload":{"content":"Doorbell:Someone has press doorbell","device_sn":"T821XXX","event_time":"1613663771068","payload":{"event_type":3103,"device_sn":"T82XXX","name":"Doorbell","channel":0,"cipher":42,"session_id":"20210218_165611","pic_url":"https://security-app-eu.eufylife.com/v1/s/g/XXX","create_time":1613663771068,"file_path":"h265_20210218165610","notification_style":3,"push_count":1},"push_time":"1613663771529","station_sn":"T80XXX","title":"","type":"7","google.c.sender.id":"348XXX"}}]

2021-02-18 16:56:11.576  - ESC[35msillyESC[39m: eufy-security.0 (2760) PushNotificationService.onMessage(): message: [{"name":"Doorbell","event_time":1613663771068,"type":7,"station_sn":"T8XXX","device_sn":"T82XXX","title":"","content":"Doorbell:Someone has press doorbell","push_time":1613663771529,"channel":0,"cipher":42,"event_session":"20210218_165611","event_type":3103,"file_path":"","pic_url":"https://security-app-eu.eufylife.com/v1/s/g/XXX","push_count":1,"notification_style":3}]

2021-02-18 16:56:11.576  - ESC[34mdebugESC[39m: eufy-security.0 (2760) handlePushNotifications(): push_msg: {"name":"Doorbell","event_time":1613663771068,"type":7,"station_sn":"T80XXX","device_sn":"T82XXX","title":"","content":"Doorbell:Someone has press doorbell","push_time":1613663771529,"channel":0,"cipher":42,"event_session":"20210218_165611","event_type":3103,"file_path":"","pic_url":"https://security-app-eu.eufylife.com/v1/s/g/XXX","push_count":1,"notification_style":3}

Feature Request: Doorbell Ring

Hi, thank you for your great work. Is it possible to add a feature that shows the pressed ring button in iobroker?
So it will be possible to swich lights when anybody is knock on the door.

Alexa can say "its somebody at the door" maybe thats an hint.

When you need logs or something i can help.

thank you

lk911lk

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.