UNPKG

honeywell-js-setup

Version:

Simple web server to retrieve credentials for using the Honeywell Home service

90 lines (59 loc) 3.49 kB
# honeywell-js-setup Simple web server to retrieve credentials for using the [Honeywell Home service](https://developer.honeywell.com/). Applications that make use of the Honeywell Home service require [(https://en.wikipedia.org/wiki/OAuth#OAuth_2.0) credentials. This package started as this [repository](https://github.com/bgraham11/honeywell-js), and was modified to solely provide this information. The process requires two separate logins: 1. A login for a developer site to generate API keys. You probably don't have a login for this site, but that's OK, because the [instructions below](#api-keys) explains the process. 2. A login for a service to authorize an application. You probably already have a login for this service, because you've already created a login when you started to use the [Honeywell Home App](https://getconnected.honeywellhome.com/en/honeywell-home-app). # Installation npm install Yes, there are `5` vulnerabilities; sorry about that! We're going to run this program just once, so feel free to submit a PR if you want those to go away. # API Keys First, generate two parameters, a `consumerKey` and a `consumerSecret`: 1. Go to the Honeywell Home [developer site](https://developer.honeywell.com/). 2. If you have already registered, click on `LOGIN`; otherwise, you will have to create an account, click on `SIGNUP`. 3. Once you have logged in, click on `MY APPS` and then on `CREATE NEW APP`. You will be asked to enter an `App Name` and a `Callback URL`. Please enter the values you see here: <img src='01.png' /> _(Protip: copy-paste the values from the file`config/options.global.js`.)_ 4. After you click on `Save Changes`, you will see something like this: <img src='02.png' /> 5. Now click on `homebridge-honeywell-home` and you will see something like this: <img src='03.png' /> 6. Edit the file `config/options.global.js` to include the values shown in your browser, e.g., consumerKey: 'A5nV2bVn7Jzo4FzcZQyADZVGoxSrHAJe', consumerSecret: 'xjokooAQHWkqAEel' 7. Finaly, click on `LOG OUT`. # Generate OAuth credentials In the terminal: % npm start This starts a `node ./app.js` process and opens up a browser window: <img src='04.png' /> Click on the `login` link: <img src='05.png' /> Enter the `Email` and `Password` that you use for your [Honeywell Home App](https://getconnected.honeywellhome.com/en/honeywell-home-app) and click on `LOG IN`: <img src='06.png' /> Skim the text, and `Click on `ALLOW`: <img src='07.png' /> Select the devices that you want to manage, by clicking in the upper-right-hand corner of each device: <img src='08.png' /> Click on `CONNECT`: <img src='09.png' /> You will need to enter these *exact* values into the configuration section for your application, e.g., for [homebridge-honeywell-home](https://github.com/d0n4v4nb3ck3r/homebridge-honeywellhome), the file `~/.homebridge/config.json` would have this added to it: { "platform" : "homebridge-honeywell-home" , "name" : "HoneywellHome" , "credentials" : { "consumerKey" : "A5nV2bVn7Jzo4FzcZQyADZVGoxSrHAJe" , "consumerSecret" : "xjokooAQHWkqAEel" , "accessToken" : "MbCNslDA5jJJdm8JRhGOXWKdPYKQ" , "refreshToken" : "YgOEocILQcPySJiLod33UzPXNFDE4rQ1" } , "options" : { "ttl": 600, "verboseP" : false } } You can now terminate the `node ./app.js` process started earlier. Enjoy!