With an increase in the number of people and families working from home at the same time, being able to alert your spouse, partner, children, or roommates that you are on an audio or video call is becoming increasingly important.
To solve this challenge, this application leverages the xAPI available on Cisco Webex Endpoints, as well as the Home-Assistant (https://www.home-assistant.io) home automation platform to trigger notification alerts on Inovelli (https://inovelli.com/) Red-Series Z-Wave Dimmers.
This application connects to a Cisco Webex Endpoint via Websockets and subscribe to state events from the endpoint including:
- Active Calls
- Camera Lid Status
These state events are parsed and then trigger the LED notification strip on the Inovelli Red-Series Dimmers with the configured notification colors and pattern.
Primary application to subscribe to events on the Cisco Webex endpoint and trigger notifications via Home-Assistant
Framework for triggering notifications. Currently leveraging Home-Assistant, but if you are not a Home-Assistant user this is the code you would want to modify to trigger whatever end device you may be using.
Mini-SDK for interacting with Home-Assistant via REST API.
Example .env file for configuring the application.
Dockerfile for building the container to run the application
Docker-Compose file for creating and running the container
- python 3.8
- Docker Compose (https://docs.docker.com/compose/)
- Docker Engine or Docker Desktop (https://www.docker.com/)
- Compatible Cisco WebEx Endpoint with API Access and Websockets Enabled
- Can be on-premise or cloud registered
- Home-Assistant Home Automation Platform (https://www.home-assistant.io)
- Inovelli Red Series Dimmers (https://www.inovelli.com/)
-
If cloud registered, create a local-admin account on the endpoint for API access
https://help.webex.com/en-us/jkhs20/Local-User-Administration-on-Room-and-Desk-Devices
-
Enable API and WebSockets
-
Clone This Repository
-
Copy ENVEXAMPLE to .env
cp ENVEXAMPLE .env
-
Edit .env and fill out the appropriate values for your installation
Key Description EP_USERNAME Cisco Webex Endpoint Username EP_PASSWORD Cisco Webex Endpoint Password EP_ADDRESS IP Address of Cisco Webex Endpoint HA_ADDRESS Home-Assistant Hostname or IP Address HA_PORT Home-Assistant TCP Port HA_API_KEY Home-Assistant API Key HA_ZWAVE_DEVICE_ID Home-Assistant ZWave Device ID - ID of Device you are triggering alerts on HA_ZWAVE_PARAMETER ZWave Configuration Parameter - Should be 16 for Inovelli Switches HA_ZWAVE_ON_VIDEO Numeric Parameter Value for On Video Notificaton HA_ZWAVE_ON_CALL Numeric Parameter Value for On Call Notificaton HA_ZWAVE_OFF Numeric Parameter Value for turning off Notifications Note: To calculate the Numeric Parameters for ON_VIDEO, ON_CALL, and OFF see the following site:
-
Build and start the container using docker-compose
sudo docker-compose up -d --build
-
View the Container Logs if Necessary
sudo docker-compose logs -f
- Nick Thompson (@nsthompson)