Awesome
<p align="center"> <a href="https://github.com/homebridge/verified/blob/master/verified-plugins.json"><img alt="Homebridge Verified" src="https://raw.githubusercontent.com/Brandawg93/homebridge-nest-cam/master/branding/Homebridge_x_Nest.svg?sanitize=true" width="500px"></a> </p>homebridge-nest-cam
⚠️ This project is no longer being maintained. It should still work for older cameras. For newer cameras, see homebridge-google-nest-sdm.
View your Nest cams in HomeKit using Homebridge with this plugin.
FAQ | Troubleshooting | Error Codes |
---|
Notes
- This plugin does not work with the latest Nest cameras. If you do not see it in the Nest app, then it will not show in this plugin. More info can be found at #440.
Installation
- Install this plugin using:
npm install -g --unsafe-perm homebridge-nest-cam
- Add google authentication to
config.json
- Run Homebridge
- Login with homebridge-config-ui-x or use the manual authentication method.
FFmpeg
By default, libx264
is used as the h264 encoder. If you would like to use a hardware-accelerated encoder instead, refer to the h264 Hardware Encoders Wiki.
Setting up the Config.json
refreshToken
Google Accounts are configured using a "refreshToken"
string in config.json
. An example is shown below. The field will be generated automatically when using homebridge-config-ui-x, otherwise, it can be found in your Nest account using the manual authentication method.
{
"platform": "Nest-cam",
"options": {
"ffmpegCodec": "libx264",
"motionDetection": true,
"streamingSwitch": true,
"disableAudio": false
},
"refreshToken": "1//01T_..."
}
options
Extra options can be enabled/disabled depending on which switches and sensors you would like to see in the Home app. Here is the current list of available options:
Name | Description | Type |
---|---|---|
ffmpegCodec | The video codec to use for FFmpeg | string |
streamQuality | The quality of the stream from LOW to HIGH | number (1-3) |
alertCheckRate | How often to check for alerts | number (seconds) |
alertCooldownRate | How long between consecutive alert notifications | number (seconds) |
alertTypes | What type of alerts to receive | array |
importantOnly | Only send notifications on events considered important | boolean |
motionDetection | Enable/disable the motion sensors | boolean |
doorbellAlerts | Enable/disable doorbell ring notifications | boolean |
doorbellSwitch | Enable/disable doorbell automation switch | boolean |
streamingSwitch | Enable/disable the ability to turn the camera on or off | boolean |
chimeSwitch | Enable/disable the ability to turn the doorbell chime on or off | boolean |
audioSwitch | Enable/disable the ability to turn the camera audio on or off | boolean |
pathToFfmpeg | Specify the path to a custom FFmpeg binary | string |
cameras | Specify the camera UUID of which cameras to see | array |
structures | Specify the structure ID of which structures' cameras to see | array |
Features
- View cameras within homekit.
- Receive notifications and set routines for motion or when the doorbell is rang.
- Receive notifications for specific motion events.
- Listen and talk back to people on equipped cameras.
- Enable/disable the indoor chime on Hello doorbells.
Join the Discord
Unfortunately, there is no way for me to test every subscription, camera type, and feature. If you would like to help me test new features and enhancements, or if you have general questions or need support, join the official Homebridge Discord Server.
Credits
This plugin was originally developed by KhaosT.
This plugin was converted to typescript using both homebridge-ring and homebridge-examples.
Donate to Support homebridge-nest-cam
This plugin was made with you in mind. If you would like to show your appreciation for its continued development, please consider sponsoring me on Github.
<sub><sup>Disclaimer: This plugin and its contributers are not affiliated with Google LLC or Nest Labs in any way.</sub></sup>