node-red-contrib-housebot 1.0.3

HouseBot Nodes to control and monitor a HouseBot instance from Node-RED.

npm install node-red-contrib-housebot

Node-RED nodes to control and monitor your HouseBot Devices and Tasks. It is compatible with HouseBot version 3.54 or newer and Node-RED version 1.0 or newer.

Installation

From Node-RED (easy)

From the main menu,

  1. Select Manage Palette
  2. Select the Install tab.
  3. Search for node-red-contrib-housebot.
  4. Select the install button.

From the command line

Use the following command from within your Node-RED user data directory (e.g. $HOME/.node-red):

npm install node-red-contrib-housebot

Then restart Node-RED.

If the installation is successful, the new HouseBot nodes will appear at the bottom of the Node-RED palette.

HouseBot Configuration

In order for Node-RED to receive status updates from HouseBot, HouseBot must be setup first. From the HouseBot main menu, select Settings > Program Options. In the NodeRED tab:

  1. Check the Enabled checkbox.
  2. Enter the network/IP address of the instance of Node-RED to communicate with.
  3. Provide a password. This password will need to match the password setup in the Node-RED HouseBot Server configuration.

Nodes

HB Server

HB Server nodes are configuration nodes that can be used by any number of HB Device and HB Task nodes. These nodes define the connection information between the Node RED node and the HouseBot Server. These nodes are setup from within the HB Device or HB Task nodes (described below).
The server setup requires the following information:

  • IP Address : The network / IP address of the HouseBot Server.
  • Password : This password must match the password setup in the HouseBot Configuration setup above.
  • Name : Helpful name of the server connection. If left empty, the IP Address will be used to identify the server. Note: HouseBot nodes will communicate with the HouseBot server on port 1881. If there are any connectivity issues, check to make sure this port is open and unblocked by any firewalls.

HB Device

A node representing a HouseBot Device. These nodes can both control and reflect the status of all Properties associated with the HouseBot Device.

Device Configuration

The HB Device node requires the following information:

  • Name : Name that will represent the node on the Node-RED flow. If left empty, the name of the selected HouseBot Device will be used.
  • HB Server : Select the HouseBot Server (HB Server) where the HouseBot Device resides. If a HouseBot server has not been setup, see HB Server above.
  • Device : Once a HB Server has been selected, the Device list will populate with all of the enabled Devices on the system. Select the Device that this node will represent.

Controlling a Device

To control a device, the node needs to receive an input with msg.topic set to change, msg.payload.property set to the name of the HouseBot Device Property to change, and msg.payload.value set to the new value to change the HouseBot Property to.

msg.topic = "change";
msg.payload = {"property": "Action", "value": "Testing"};

OR

msg.topic = "change";
msg.payload.property = "Action";
msg.payload.value = "Testing";

Receiving Device updates

When any Property of the HouseBot Device changes on the HouseBot server, the node will receive the update and send a message on its output containing the property and value in msg.payload.

payload: {
    device: 'Name (description) of the HouseBot Device',
    property: 'Name of the Property that has changed',
    value: 'New value for the HouseBot Property'
}

HB Task

A node representing a HouseBot Task. These nodes can both control and reflect the status of the Task.

Task Configuration

The HB Task node requires the following information:

  • Name : Name that will represent the node on the Node-RED flow. If left empty, the name of the selected HouseBot Task will be used.
  • HB Server : Select the HouseBot Server (HB Server) where the HouseBot Task resides. If a HouseBot server has not been setup, see HB Server above.
  • Task : Once a HB Server has been selected, the Task list will populate with all of the enabled Tasks on the system. Select the Task that this node will represent.

Running a Task

To run a task, the node needs to receive an input with msg.topic (or msg.payload) set to execute or run.

msg.topic = "execute";

Task Notifications

When a Task runs on the HouseBot server, the node will receive the update and send a message on its output containing a payload containing executed.

{
    payload: executed
}

Node Info

Version: 1.0.3
Updated 3 years, 6 months ago
License: AGPL-3.0-only
Rating: 5.0 2

Actions

Rate:

Downloads

3 in the last week

Nodes

  • hb-server
  • hb-device
  • hb-task

Keywords

  • housebot
  • node-red
  • home automation

Maintainers