https://github.com/svrooij/evohome
Control your Honeywell Evohome from node.js
https://github.com/svrooij/evohome
home-automation thermostat
Last synced: 22 days ago
JSON representation
Control your Honeywell Evohome from node.js
- Host: GitHub
- URL: https://github.com/svrooij/evohome
- Owner: svrooij
- License: mit
- Created: 2019-10-06T19:20:20.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2023-01-06T02:14:44.000Z (over 2 years ago)
- Last Synced: 2024-05-13T16:25:21.697Z (12 months ago)
- Topics: home-automation, thermostat
- Language: TypeScript
- Homepage: https://www.npmjs.com/package/@svrooij/evohome
- Size: 501 KB
- Stars: 2
- Watchers: 3
- Forks: 0
- Open Issues: 14
-
Metadata Files:
- Readme: README.md
- Funding: FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
# Evohome client
[![Support me on Github][badge_sponsor]][link_sponsor]
This package will let you control your Honeywell Evohome system from node.
## Usage
Using this library is really easy. Just add it to your package `npn install @svrooij/evohome --save` and start using it.
## Examples
```js
const EvohomeClient = require('../lib/evohome-client').EvohomeClient
const username = 'youremail'
const password = 'yourpassword'
const evohomeClient = new EvohomeClient(username, password)evohomeClient.getLocationsWithAutoLogin(3600).then(locations => {
console.log('Location information %s', JSON.stringify(locations, null, 2))
}).catch(err => {
console.log('Error occured %j', err)
process.exit(3)
})
```## Developer section
This library is build in typescript, but released as javascript. To start developing:
1. Check-out the code.
2. run `npm install` to install the typescript compiled and the dependencies.
3. Make your changes in the `./lib` folder.
4. Run `npm run build` to compile the code to javascript.
5. The code is linted with **eslint**, run the linter with `npm run lint` or `npm run lint-fix` to auto-fix.
6. Run the test to make sure it still works. `npm t`.If you have set the environment variables `EVOHOME_USERNAME` and `EVOHOME_PASSWORD` the tests will try to load your actual data.
In VSCode you can set environment variables by adding this to the `settings.json` file.```json
{
"editor.tabSize": 2,
"terminal.integrated.env.osx": {
"EVOHOME_USERNAME":"your_username",
"EVOHOME_PASSWORD":"your_password"
}
}
```[badge_sponsor]: https://img.shields.io/badge/Sponsor-on%20Github-red
[link_sponsor]: https://github.com/sponsors/svrooij