Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
A simple Node.js client library for the Philips Hue.
JavaScript
Branch: master
Failed to load latest commit information.
lib Updates to spacing, readme and package
.gitignore
README.md Update README.md
example.js add UDP based bridge discovery
package.json Updates to spacing, readme and package

README.md

Node Hue Module

This is a node.js client library for the Philips Hue.

Installation

npm install hue-module

Usage

In order to use the hue.js library, you will need to know the IP address of the hue base station. You can find this through the meethue dashboard or using arp. To use arp, note the MAC address of the device (written on the bottom of the base station) and then issue the arp -a command from your terminal.

var hue = require('hue');

hue.load("IP Address", "Username/Key");

hue.lights(function(lights){
    for(i in lights)
        if(lights.hasOwnProperty(i))
            hue.change(lights[i].set({"on": true, "rgb":[0,255,255]}));
});

At the moment there is no way to discover a base station or register with it. This is coming soon.

API

Below you will find an outline of the available methods, their purpose, and the corresponding usage example.

Find your basestation

If you do not already know the IP address of the base station you can search for it.

hue.discover(callback)

An IP address is returned in the callback that can then be used to load the module.

Get a list of lights

hue.lights(callback)

In the callback a list of lights are returned. Each light can be set however one chooses.

Get a particular light

hue.light(lightID, callback)

Set settings of a particular light

light.set(attributes)

Usage example:

hue.light(1, function(light){
    light.set({"on":false});
});

Render changes to bulb

hue.change(light)

Usage example:

hue.light(1, function(light){
    hue.change(light.set({"on":false}));
});

Get a list of light groups

hue.groups(callback)

An array of groups is returned in the callback.

Get a particular group

hue.group(groupID, callback)
Something went wrong with that request. Please try again.