hubot-philipshue

1.0.5 • Public • Published

hubot-philipshue

This is a Hubot script package that will control your Philips Hue lights.

npm version Node CI

Dependencies

Uses the node-hue-api NPM package to communicate with the hue bridge.

Installation

Run the following command to make sure the module is installed to your local Hubot instance.

$ npm install hubot-philipshue --save

To enable the script, add the hubot-philipshue entry to the external-scripts.json file (you may need to create this file).

["hubot-philipshue"]

Configuration

Environment variables

Variable Description
PHILIPS_HUE_HASH The generated secret hash described below.
PHILIPS_HUE_IP The IP address of your Hue Hub.
export PHILIPS_HUE_HASH="YourSecretHash"
export PHILIPS_HUE_IP="xxx.xxx.xxx.xxx"

Getting your Hue Hash

There is a two-step process to generating the credentials above.

First, press the button on your Hue Hub. This puts the device in a mode to accept new connections.

Second, make an HTTP POST request of the JSON payload below to http://YourHueHub/api. You can use the Clip API Debugger on your base station as well.

$ curl -v -H "Content-Type: application/json" -X POST 'http://YourHueHub/api' -d '{"devicetype": "YourAppName"}'

The Hub will respond with:

{"success":{"username":"YourSecretHash"}}

The username property will contain the hash key to use in the PHIPLIPS_HUE_HASH environment variable.

Troubleshooting

If you have not pressed the button on the Hue Hub you will receive an error like this:

{"error":{"type":101,"address":"/","description":"link button not pressed"}}

Press the link button on the hub and try again.

Commands:

  • hubot hue lights - list all lights
  • hubot hue light {light number} - shows light status
  • hubot hue hsb light {light number} {hue} {saturation} {brightness}
    • hue range: 0-6553
    • saturation range: 0-254
    • brightness range: 0-254
  • hubot hue xy light {light number} {x} {y}
  • hubot hue ct light {light number} {color temp}
    • color temperature values use Mired color temperature
    • color temperature range: 153-500 (153 appears 6500K, 500 appears 2000K)
  • hubot hue turn light {light number} {on|off} - flips the switch
  • hubot hue groups - lists the groups of lights
  • hubot hue config - reads bridge config
  • hubot hue {alert|alerts} light {light number} - blink once or blink for 10 seconds specific light
  • hubot hue {colors|colorloop|loop} {on|off} light {light number} - enable or disable the colorloop effect
  • hubot hue group {group name}=[{comma separated list of light indexes}]
  • hubot hue rm group {group name} - remove grouping of lights named
  • hubot hue @ <on|off> - turn all lights in on or off
  • hubot hue @{group name} hsb=({hue},{sat},{bri}) - set hsb value for all lights in group
  • hubot hue @{group name} xy=({x},{y}) - set x, y value for all lights in group
  • hubot hue @{group name} ct={color temp} - set color temp for all lights in group

Notes:

Author:

kingbin

Contributors:

stephenyeargin

bschlief

Package Sidebar

Install

npm i hubot-philipshue

Weekly Downloads

31

Version

1.0.5

License

MIT

Unpacked Size

56 kB

Total Files

26

Last publish

Collaborators

  • kingbin
  • stephenyeargin