Brandawg93 / homebridge-nest-cam

View your Nest cams in HomeKit using Homebridge.

Home Page:https://www.npmjs.com/package/homebridge-nest-cam

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Homebridge Verified

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.

NPM

PayPal

verified-by-homebridge certified-hoobs-plugin

build Discord Downloads

npm (tag) npm (tag) GitHub commits since latest release (by date)

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

  1. Install this plugin using: npm install -g --unsafe-perm homebridge-nest-cam
  2. Add google authentication to config.json
  3. Run Homebridge
  4. 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.

Disclaimer: This plugin and its contributers are not affiliated with Google LLC or Nest Labs in any way.

About

View your Nest cams in HomeKit using Homebridge.

https://www.npmjs.com/package/homebridge-nest-cam

License:GNU General Public License v3.0


Languages

Language:TypeScript 93.0%Language:JavaScript 5.0%Language:HTML 1.7%Language:CSS 0.3%