A node.js client library for Honeywell Evohome. A work in progress. Pull-requests welcome!
Note: This is an unofficial library and is not supported by Honeywell in any way.
Use at your own risk. :-)
Install via npm:
npm install --save evohome
Or, add the following to your package.json dependencies:
{
"dependencies": {
"evohome": "https://github.com/ixalon/node-evohome.git#v0.0.2"
}
} Login to Evohome remotely and return a promise which is resolved to a Session on login.
var evohome = require('evohome');
evohome.login('username', 'password', 'application-id-hex').then(function(session) {
// Use session to access state
}).fail(function(err) {
console.error('Failed to login:', err);
});Returns a promise which is resolved to an array of Location objects.
session.getLocations().then(function(locations) {
console.log('You have', locations.length, 'locations');
}).fail(function(err) {
console.error('Failed to get locations:', err);
});Session ID, sent to all further requests performed under this session.
A UserInfo object containing details about the user.
Boolean value, false if there is an updated Honeywell Evohome EULA.
The user's unique ID.
The user's username.
The user's first name.
The user's last name.
The user's street address.
The user's city.
The user's state/region.
The user's ZIP/Post code.
The user's country.
The user's telephone number.
### UserInfo.userLanguage The user's preferred language.
Boolean value, true if the user's account is active.
The number of devices assigned to this user's account.
TBC.
TBC.
TBC.
TBC.
TBC.
TBC.
TBC.
TBC.
An array of Device objects.
TBC.
TBC.
TBC.
TBC.
TBC.
TBC.
TBC.
TBC.
TBC.
TBC.
A Thermostat object.
TBC.
TBC.
TBC.
TBC.
TBC.
TBC.
TBC.
TBC.
TBC.
TBC.