I’m not clear on your comparison of “HASS Add-on” and “custom integration” – let me lay out all of the pieces:
-
eufy-security-client
: @bropat’s amazing library to communicate with the Eufy Security unofficial API -
eufy-security-ws
: the two-way websocket that allows non-JS/TS clients to interact witheufy-security-client
-
eufy-security-ws-python
: the Python library that manages data to/fromeufy-security-ws
in a generic manner - HASS Integration (TBD): the Home Assistant integration that will utilize
eufy-security-ws-python
and allow the user to “do things” with Eufy Security - HASS Add-On (TBD): a Home Assistant OS add-on that allows for easy installation of
eufy-security-ws
This approach will allow users of Home Assistant Core/Container and users of Home Assistant OS to run this integration:
- Home Assistant Core/Container users will need to run their own instance of
eufy-security-ws
(easily done, since the project already provides a Docker image). - Home Assistant OS users can install the HASS add-on in order to achieve the same thing.
Note that this is the same policy the Z-Wave JS integration employs: it gives an OS method and a Core/Container method.
Here is my current “roadmap”:
- Finish tests for
eufy-security-ws-python
(not too far off; want to complete this so its behind me before anything else) - Write a base Home Assistant integration:
- UI Configuration
- Two-way communication with
eufy-security-ws
- A basic piece of functionality to start (I’m thinking a sensor that shows the current mode and a service to change the mode)
- Localization
- Get up to speed on writing HASS OS add-ons
- Write v1 of the HASS OS add-on
- Publish official PRs for everything