core/homeassistant/components/zwave_js
Raman Gupta ca8d09e5e1
Add zwave_js.multicast_set_value service (#51115)
* Add zwave_js.multicast_set_value service

* comment

* Add test for multiple config entries validation

* additional validation test

* brevity

* wrap schema in vol.Schema

* Update homeassistant/components/zwave_js/services.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* do node transform and multicast validation in schema validation

* move poll value entity validation into schema validation, pass helper functions dev and ent reg instead of retrieving it every time

* make validators nested functions since they don't neeed to be externally accessible

* Update homeassistant/components/zwave_js/services.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Remove errant ALLOW_EXTRA

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-05-27 21:57:35 -04:00
..
docs
translations
README.md
__init__.py Add zwave_js.multicast_set_value service (#51115) 2021-05-27 21:57:35 -04:00
addon.py Add zwave_js add-on info dataclass (#50776) 2021-05-21 13:47:37 +02:00
api.py Add WS API commands to check for and install zwave_js config updates (#51106) 2021-05-26 08:39:08 -07:00
binary_sensor.py
climate.py
config_flow.py Add zwave_js add-on info dataclass (#50776) 2021-05-21 13:47:37 +02:00
const.py Add zwave_js.multicast_set_value service (#51115) 2021-05-27 21:57:35 -04:00
cover.py Set zwave_js cover device_class for shutters and blinds (#50643) 2021-05-16 08:26:16 +02:00
discovery.py Set zwave_js cover device_class for shutters and blinds (#50643) 2021-05-16 08:26:16 +02:00
discovery_data_template.py
entity.py
fan.py
helpers.py Add zwave_js.multicast_set_value service (#51115) 2021-05-27 21:57:35 -04:00
light.py Fix zwave_js None color value (#50926) 2021-05-25 13:40:22 +02:00
lock.py
manifest.json Bump zwave-js-server-python to 0.25.1 (#51097) 2021-05-26 12:37:24 +02:00
migrate.py
number.py
sensor.py Mark battery, humidity and pressure sensors as STATE_CLASS_MEASUREMENT (#50924) 2021-05-24 11:36:42 +02:00
services.py Add zwave_js.multicast_set_value service (#51115) 2021-05-27 21:57:35 -04:00
services.yaml Add zwave_js.multicast_set_value service (#51115) 2021-05-27 21:57:35 -04:00
strings.json
switch.py

README.md

Z-Wave JS Architecture

This document describes the architecture of Z-Wave JS in Home Assistant and how the integration is connected all the way to the Z-Wave USB stick controller.

Architecture

Connection diagram

alt text

Z-Wave USB stick

Communicates with devices via the Z-Wave radio and stores device pairing.

Z-Wave JS

Represents the USB stick serial protocol as devices.

Z-Wave JS Server

Forward the state of Z-Wave JS over a WebSocket connection.

Z-Wave JS Server Python

Consumes the WebSocket connection and makes the Z-Wave JS state available in Python.

Z-Wave JS integration

Represents Z-Wave devices in Home Assistant and allows control.

Home Assistant

Best home automation platform in the world.

Running Z-Wave JS Server

alt text

Z-Wave JS Server can be run as a standalone Node app.

It can also run as part of Z-Wave JS 2 MQTT, which is also a standalone Node app.

Both apps are available as Home Assistant add-ons. There are also Docker containers etc.