This repository has been archived by the owner on Aug 14, 2023. It is now read-only.
-
-
Notifications
You must be signed in to change notification settings - Fork 27
Manual Authentication
Brandon McFarlin edited this page Oct 14, 2021
·
19 revisions
A refresh token is a long life token given to an application during OAuth. To get a refresh token, follow these steps:
- If the plugin is installed globally, run
homebridge-nest-cam login
, otherwise, ensure that you are in the plugin's root directory and runnode dist/login.js
. - Follow the onscreen instructions.
- Copy the refresh token to your
config.json
.
Notes:
- Field testers, please use the
-ft
flag to be redirected to the correct site.
The values of "issueToken"
and "cookies"
are specific to your Google Account. To get them, follow these steps (only needs to be done once, as long as you stay logged into your Google Account).
- Open a Chrome browser tab in Incognito Mode (or clear your cache).
- Open Developer Tools (View/Developer/Developer Tools).
- Click on 'Network' tab. Make sure 'Preserve Log' is checked.
- In the 'Filter' box, enter
issue
. - Go to
home.nest.com
, and click 'Sign in with Google'. Log into your account. - Click on the last
iframerpc
call. - In the Headers tab, under General, copy the entire
Request URL
(beginning withhttps://accounts.google.com
, ending withnest.com
). This is your"issueToken"
inconfig.json
. - In the Headers tab, under Request Headers, copy the entire
cookie
(include the whole string which is several lines long and has many field/value pairs). This is your"cookies"
inconfig.json
. - Do not log out of
home.nest.com
, as this will invalidate your credentials. Just close the browser tab.
Notes:
- If you are using this guide to authenticate homebridge-nest as well, your
"apiKey"
will be the same as the previous value. It should never change. Simply copy the new"issueToken"
and"cookies"
into the old ones and leave"apiKey"
alone, and it should work.
- Cancel out of the initial authentication screen:
- Manually copy and paste this object template into your
config.json
, inside theplatforms
array:
{
"nest_token": "TOKEN_GOES_HERE",
"options": {
"ffmpegCodec": "libx264",
"streamQuality": 3,
"alertCheckRate": 10,
"alertCooldownRate": 180,
"alertTypes": [
"Motion",
"Sound",
"Person",
"Package Delivered",
"Package Retrieved",
"Face",
"Zone"
],
"importantOnly": true,
"motionDetection": false,
"streamingSwitch": true,
"chimeSwitch": false,
"announcementsSwitch": false,
"doorbellAlerts": false,
"doorbellSwitch": false,
"audioSwitch": true
},
"platform": "Nest-cam"
}
- Log into https://home.nest.com and get to the main home screen
- Once authenticated, change the URL and navigate to https://home.nest.com/session
- Grab the value associated with the
access_token
key:
- Update your
config.json
and thenest_token
key with the access token you copied, replacingTOKEN_GOES_HERE
- Make any additional modifications to the configuration based on the available options
- Save your configuration and restart the [child] bridge as necessary
Notes:
- This is the same access_token that homebridge-nest uses if you want to grab from existing config
- All configuration must be done manually in your
config.json
- plugin-based config is not yet supported.