node-red-contrib-home-assistant-websocket
Various nodes to assist in setting up automation using Node-RED communicating with Home Assistant.
Getting Started
Documentation can be found here.
Prerequisites
Have Node-RED installed and working, if you need to install Node-RED see here.
Installation
Install via Node-RED Manage Palette
node-red-contrib-home-assistant-websocket
Install via npm
$ cd ~/.node-red
$ npm install node-red-contrib-home-assistant-websocket
# then restart node-red
For Home Assistant add-on users:
The Community add-on ships with this node right out of the box.
Under the server node config just check the checkbox for I use the Home Assistant Add-on
The add-on can be found here: https://github.com/hassio-addons/addon-node-red#readme
Nodes
The installed nodes have more detailed information in the Node-RED info pane shown when the node is selected. Below is a quick summary
All Events
Listens for all types of events from home assistant with the ability to filter by event type
State Changed Event
Listens for only state_changed
events from home assistant
State Trigger
Much like the State Changed Node
however provides some advanced functionality around common automation use cases.
Poll State
Outputs the state of an entity at regular intervals, optionally also at startup and every time the entity changes if desired
Webhook
Need Custom Integration installed in Home Assistant for node to function
Outputs the data received from the created webhook in Home Assistant
Call Service
Sends a request to home assistant for any domain and service available ( light/turn_on
, input_select/select_option
, etc..)
Entity
Need Custom Integration installed in Home Assistant for node to function
Creates an entity in Home Assistant which can be manipulated from this node
Fire Event
Fire an event on the event bus
Current State
Fetches the last known state for any entity on input
Get Entities
Get entities based on search criteria with 3 different output options
Get History
Fetches HomeAssistant history on input
Get Template
Allows rendering of templates on input
Wait Until
When an input is received the node will wait until the condition is met or the timeout occurs then will pass on the last received message
Zone
Outputs when one of the configured entities enter or leaves one of the defined zones.