Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

homebridge-ring

dgreif2.5kMIT14.0.1

Homebridge plugin for Ring doorbells, cameras, security alarm system and smart lighting

homebridge, homebridge-plugin, ring, doorbell, doorbot, camera, alarm, smart, light, beam, security, category-security, category-lighting, category-video, category-hubs, category-outdoor

readme

Homebridge Verified

homebridge-ring

npm npm verified-by-homebridge certified-hoobs-plugin Discord Donate

This Homebridge plugin provides a platform for Ring Doorbells, Ring Cameras, the Ring Alarm System, Ring Smart Lighting, and third party devices that connect to the Ring Alarm System.

Troubleshooting Issues

If you are having issues, please look for related articles in the wiki and search existing Issues before opening a new Issue/Discussion

Installation

Assuming a global installation of homebridge:

npm i -g --unsafe-perm homebridge-ring

Homebridge Configuration

Add the Ring platform in your homebridge config.json file.

Easiest Configuration

For the best experience setting up this plugin, please use homebridge-config-ui-x or HOOBS. Both have a UI that will walk you through linking your account without any cli tools or storing your email/password.

Basic Configuration

First, generate a refreshToken using the instructions in the Refresh Tokens Wiki

{
  "platforms": [
    {
      "platform": "Ring",
      "refreshToken": "token generated with ring-auth-cli.  See https://github.com/dgreif/ring/wiki/Refresh-Tokens"
    }
  ]
}

Optional Parameters

Only include an optional parameter if you actually need it. Default behavior without any of the optional parameters should be sufficient for most users.

{
  "alarmOnEntryDelay": true,
  "beamDurationSeconds": 60,
  "hideDeviceIds": [
    "477e4800-fcde-4493-969b-d1a06f683102",
    "5aaed7a7-06df-4f18-b3af-291c89854d60"
  ],
  "hideLightGroups": true,
  "hideDoorbellSwitch": true,
  "hideCameraLight": true,
  "hideCameraMotionSensor": true,
  "hideCameraSirenSwitch": true,
  "hideInHomeDoorbellSwitch": true,
  "hideAlarmSirenSwitch": true,
  "avoidSnapshotBatteryDrain": true,
  "cameraStatusPollingSeconds": 20,
  "locationModePollingSeconds": 20,
  "locationIds": [
    "488e4800-fcde-4493-969b-d1a06f683102",
    "4bbed7a7-06df-4f18-b3af-291c89854d60"
  ]
}

| Option | Default | Explanation | | ---------------------------- | ------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | | alarmOnEntryDelay | false | if true, HomeKit will register a delayed entry event as a triggered alarm. There are some households where this is a nice feature as a heads up if you have other people who enter your house and you want an alert so that you can disable the alarm for them before it actually goes off. This works well if you automatically arm/disarm on leave/arrive (see setup instructions below) | | beamDurationSeconds | 60 for light groups, previous from Ring app for individual lights | Ring smart lighting has a default behavior of only staying on for 60 seconds when you turn on a light via the Ring app. To force a duration when the light is turned on from HomeKit, set this option to a specific number of seconds. If this option is not set, the lights will use the duration from the previous time the light was turned on in the Ring app. For light groups, this will default to 60 seconds. The maximum value is 32767, which is ~9.1 hours. | | hideDeviceIds | [] | Allows you to hide specific devices by an array of ids. The id for each device is logged when homebridge starts. | | hideLightGroups | false | Ring smart lighting allows you to create lighting groups within the Ring app. These groups are convenient for detecting motion in an area of your yard and turning on/off all lights in the group. However, you may wish to group the lights differently in HomeKit and ignore the groups you have configured in Ring. If this option is true, your Ring groups (and their associated motion sensor) will be ignored and will not show up in HomeKit. | | hideDoorbellSwitch | false | If you have a Ring video doorbell, you will see a Programmable Switch associated with it. This switch can be used to perform actions on when the doorbell is pressed using "Single Press" actions. If you do not care to perform actions when the doorbell is pressed, you can hide the Programmable Switch by setting this option to true. You will still be able to receive notifications from the doorbell even if the Programmable Switch is hidden (notifications can be configured in the settings for the doorbell camera in the Home app) | | hideCameraLight | false | If true, hides the light for Ring cameras in HomeKit. | | hideCameraMotionSensor | false | If true, hides the motion sensor for Ring cameras in HomeKit. | | hideCameraSirenSwitch | false | If true, hides the siren switch for Ring cameras in HomeKit. | | hideInHomeDoorbellSwitch | false | If true, hides the switch for in-home doorbells in HomeKit. | | hideAlarmSirenSwitch | false | If you have a Ring Alarm, you will see both the alarm and a "Siren" switch in HomeKit. The siren switch can sometimes get triggered by Siri commands by accident, which is loud and annoying. Set this option to true to hide the siren switch. | | showPanicButtons | false | Creates a new Panic Buttons device in HomeKit with Burglar Alarm and Fire Alarm switches. Use these at your own risk. I do not guarantee functionality in case of emergency, nor do I take responsibility for any false alarms. These function just like the SOS sliders in the Ring app. | | nightModeBypassFor | no Night Mode | Allows you to use Night mode to "Bypass and Arm" a Ring Alarm. Can be set to all for Away or some for Home. If set and Night mode is activated from HomeKit, any open contact sensors will automatically be bypassed. | | avoidSnapshotBatteryDrain | false | Causes snapshots for battery cameras to be fetched at a minimum 10 minute interval to avoid draining the battery. | | cameraStatusPollingSeconds | 20 | How frequently to poll for updates to your cameras and chimes (in seconds). Information like light/siren/volume/snooze status do not update in real time and need to be requested periodically. | | locationModePollingSeconds | 20 | How frequently to poll for location mode updates (in seconds). This is only useful if you are using location modes to control camera settings and want to keep an up-to-date reference of the current mode for each location. Polling is automatically disabled for locations equipped with a Ring Alarm. Will hide Location Mode switch if set to 0 | | locationIds | All Locations | Use this option if you only want a subset of your locations to appear in HomeKit. If this option is not included, all of your locations will be added to HomeKit (which is what most users will want to do). | | onlyDeviceTypes | All Device Types | A subset of device types to be shown. If set, all other device types will be hidden in HomeKit. | | ffmpegPath | Uses ffmpeg-for-homebridge | A custom path to the ffmpeg executable. By default, the static binaries built in ffmpeg-for-homebridge will be used. If you prefer to use your own version of ffmpeg, you can pass a complete path, or simply "ffmpeg" to use ffmpeg from your PATH. | | debug | false | Turns on additional logging. In particular, ffmpeg logging. | | disableLogs | false | Turns off all logging |

Cameras

The plugin supports all Ring camera models, as well as ONVIF cameras connected via Ring Edge

  • Camera Feed
    • Shows a snapshot from the camera while viewing the room in Home. There are limitations on when battery cameras can take snapshots. See the Snapshot Limitations Wiki for details.
    • Shows a live feed from the camera if you click on it. The feed supports video and 2-way audio, but requires that you have ffmpeg with libfdk_aac installed. A pre-built ffmpeg will be automatically installed on most platforms using ffmpeg-for-homebridge. See the FFmpeg wiki for details. 2-way audio may not work for ONVIF cameras.
  • Motion Sensor
    • Can be hidden with hideCameraMotionSensor
  • Light (if camera is equipped)
  • Siren Switch (if camera is equipped)
    • Can be hidden with hideCameraSirenSwitch
  • In-Home Doorbell Switch (if doorbell is equipped)
    • This will turn your physical in-home doorbell (mechanical/digital) on and off. Useful for automating situations where you don't want your in-home doorbell to ring during certain situations, such as when a child's night light is on, or during certain hours of the night.
    • Can be hidden with hideInHomeDoorbellSwitch
  • Programmable switch for doorbells (triggers Single Press actions)
    • Note: doorbell event notifications should be configured via settings on the camera feed
    • Can be hidden with hideDoorbellSwitch

If you turn on notifications for the motion sensors, or for any doorbell camera, you will get rich notifications from HomeKit with a snapshot from the camera

If you are having issues with your cameras in the Home app, please see the Camera Troubleshooting Wiki

If you are having issues with Notifications, please see the Notification Troubleshooting Wiki

Note: Although homebridge has support for HomeKit Secure Video (HKSV), I will not be adding it to this plugin. Please see this issue for more details.

Supported Devices via Ring Alarm and Ring Smart Lighting Hubs

  • Security Panel
    • This is a software device that represents the alarm for a Ring location
    • Arm Home / Arm Away / Disarm alarm for Ring location.
    • Detect active burglar alarm
    • Sound/silence siren (shows as a "Ring Alarm Siren" switch, can be hidden with hideAlarmSirenSwitch)
  • Base Station
    • Set Volume (Not currently supported in Home, but works in other apps like Eve)
    • Battery status
    • Brightness
  • Keypad
    • Set Volume (Not currently supported in Home, but works in other apps like Eve)
    • Battery status
    • Brightness
  • Contact Sensor/Retrofit Alarm Zones/Tilt Sensor
    • Detect if sensor is open or closed
    • Tamper status
    • Battery status
  • Motion Sensor
    • Detect motion
    • Tamper status
    • Battery status
  • Flood/Freeze Sensor
    • Detect water leak
    • Detect freezing temperature
      • Shows as an occupancy sensor in HomeKit because there is no "Freeze" sensor service. "Occupied" indicates that freezing temperatures have been detected
    • Tamper status
    • Battery status
  • Freeze Sensor (untested)
    • Detect freezing temperature
    • Shows as an occupancy sensor in HomeKit because there is no "Freeze" sensor service. "Occupied" indicates that freezing temperatures have been detected
    • Has not been confirmed to work yet. Please open an issue on GitHub if you have a Freeze Sensor (not the flood/freeze sensor) and can test it out for me
    • Tamper status
    • Battery status
  • Temperature Sensor
    • Temperature
    • Battery status
  • Water Sensor
    • Detect water leak
    • Tamper status
    • Battery status
  • Glassbreak Sensor (untested)
    • Detect glass breaking
    • Tamper status
    • Battery status
  • Ring Smart Lights (Motion Detector, Flood/Path/Step/Spot Lights, Bulbs, Transformer, Outdoor Smart Plug, Mailbox Sensor)
    • On/Off
    • Brightness Level
    • Detect motion
    • Battery Status
  • Smoke Alarm
  • Carbon Monoxide Alarm
  • Smoke/Carbon Monoxide Listener
  • Smart Locks
  • Fans
    • On/Off
    • Speed
  • Lights/Switches/Outlets/Unknown (some brands of blinds, etc.)
    • On/Off
    • Brightness Level (if applicable)
    • Hue/Sat/Color Temp are possible, but currently not supported. Please open an issue if you have a device that you would be able to test these on.
  • Panic Buttons
    • These can be added by setting showPanicButtons: true in your config
    • Creates Burglar Alarm and Fire Alarm switches in a new Panic Buttons device in HomeKit
    • Use these at your own risk. I do not guarantee functionality in case of emergency, nor do I take responsibility for any false alarms
    • If either switch is turned on, you will receive a call from Ring monitoring to verify the emergency, and then authorities will be dispatched
  • Location Modes
    • For homes not equipped with a Ring Alarm, Locations Modes can be used as an alternative way to change settings for Ring cameras.
    • Shows as a security system in HomeKit, just like the Ring Alarm.
    • Can be hidden with "locationModePollingSeconds": 0
  • Thermostats
    • Set Thermostat mode to heat/cool/off
    • Set target temperature
    • View current temperature and heating/cooling status
  • Water Valves (untested)
    • Open/Close the valve

Chimes

  • Snooze for 24 hours or clear snooze
  • Play "Ding" sound
  • Play "Motion" sound
  • Adjust speaker volume (Not supported in Home app)

Intercoms

Intercom support is still experimental. See this issue for more details

  • Unlock door
  • Doorbell which can cause Homepods to chime when the intercom doorbell is pressed
  • Programmable switch which is trigged when the intercom doorbell is pressed

Alarm/Location Modes

HomeKit Mode Ring Mode
Off Disarmed
Home Home
Away Away
Night Hidden by default. Configurable with nightModeBypassFor

Entry delays and bypassed sensors (ex. for Home mode) are all controlled in the Ring app. These settings will automatically be used by HomeKit.

Siri Commands for Alarm/Location Modes

Siri Command Outcome
Set Ring Alarm to Away Away mode activated
Arm my security system Away mode activated
Set Ring Alarm to Stay Home mode activated
Arm my security system for stay Home mode activated
Disarm Ring Alarm Disarmed
Disarm my security system Disarmed
Turn on Ring Alarm Turns on Ring Alarm Siren (unless hideAlarmSirenSwitch is set)
Turn off Ring Alarm Turns off Ring Alarm Siren (unless hideAlarmSirenSwitch is set)

Changes Modes on Arrive/Leave Home

The Home app allows you to create an automation that runs when you arrive/leave home. If you include an accessory or scene that "allows access" to your home (e.g. Security System or Lock), the Home app will require you to manually verify that you actually want to run the automation every time it gets triggered. For anyone who wants to arm/disarm their Ring Alarm automatically, this manual verification can be quite annoying. To work around this issue, you can add two "dummy" switches to you homebridge setup using homebridge-dummy. You can then use these dummy switches to trigger your other automation (e.g. Arm/Disarm Ring Alarm).

Example Dummy Config

{
  "accessories": [
    {
      "accessory": "DummySwitch",
      "name": "Arrived Home"
    },
    {
      "accessory": "DummySwitch",
      "name": "Left Home"
    }
  ]
}

Example Home Automations

Trigger Action
People Arrive Turn on "Arrived Home"
People Leave Turn on "Left Home"
"Arrived Home" turns on Set Ring Alarm mode to Off
"Left Home" turns on Set Ring Alarm mode to Away

changelog

homebridge-ring

14.0.1

Patch Changes

14.0.0

Major Changes

  • 8a980f7 Thanks @dgreif! - Removed bridged cameras. If you already had unbridgeCameras: true in your config, this change will not affect you. For those who were still using bridged cameras, you will need to manually add each camera to HomeKit after upgrading. This change allows us to stop requiring special builds of ffmpeg and should make video streaming more reliable. Unbridge cameras are also avoid blocking the whole bridge while waiting for requests (e.g. Snapshot), which leads to a better overall experience. After updating, you can delete the unbridgeCameras option from your config.

  • 0884bcb Thanks @dgreif! - Drop Node 18 support since it has reached end of life

  • #1550 5bd6bf7 Thanks @dgreif! - Converted project to ESM. This should not impact homebridge-ring, but will require any other projects using ring-client-api to also use ESM in order to use the latest version.

Minor Changes

  • 725fafd Thanks @dgreif! - Avoid snapshots while recording for doorbell_graham_cracker. This should allow notifications to work on these devices in homebridge.

  • 6bfcc7a Thanks @tsightler! - Simplified handling of Opus audio packets, which should lead to better audio when streaming

  • cbc7147 Thanks @hkoci! - Add support for Battery Video Doorbell Pro and Battery Video Doorbell Plus

Patch Changes

13.2.1

Patch Changes

13.2.0

Minor Changes

  • 2df3073 Thanks @dgreif! - Add support for Node 22

  • abd5e98 Thanks @dgreif! - Updated build target from ES2021 to ES2022. ES2022 is fully supported by Node 18, which is the current minimum supported version.

Patch Changes

13.1.0

Minor Changes

  • 1a1ee4b Thanks @dgreif! - Add support for water valves. Note, these have not been tested extensively so please let us know if you run into issues.

Patch Changes

13.0.1

Patch Changes

  • cf08a3e Thanks @dgreif! - Update push-receiver, which should lead to more reliable push notification handling

  • 1552181 Thanks @dgreif! - Set panic button names in such a way that they are properly reflected in the Home app. Note, this only impacts users who have the showPanicButtons option enabled. These users will likely see a new warning about "Configured Name" not being a supported characteristic of "Switch", which can be ignored.

  • Updated dependencies [cf08a3e]:

13.0.0

Major Changes

  • cc2f0b7 Thanks @tsightler! - Updated to new push notification interface. This will change the shape of push notifications for projects which manually consume push notifications, but should not impact homebridge-ring users. If your push notifications for cameras (motion events, dings, etc) do not work after updating, please reboot and try again, then see https://github.com/dgreif/ring/wiki/Notification-Troubleshooting if issues continue.

Minor Changes

  • 36461a1 Thanks @dgreif! - Switched to using the native version of fetch from Node.js. This allows us to remove got as a dependency. This will break any users on Node 16 or older, though those versions have not been officially supported for some time.

Patch Changes

12.1.1

Patch Changes

12.1.0

Minor Changes

Patch Changes

12.0.1

Patch Changes

12.0.0

Breaking Changes

  • Dropped Node 16 support. Node 18 is the current LTS, so please upgrade to Node 18 or Node 20. Note, Node 16 may still work after this update, but will likely break without warning in future updates.

Patch Changes

  • Fixed streaming for all camera models by switching to a new streaming API from Ring
  • Fixed 2-way audio and improve 2-way audio quality
  • Refactored the Homebridge UI to use vanilla JS, shrinking the npm package size
  • Updated dependencies

A huge thank you to @tsightler who did all the discovery and refactor work for streaming and 2-way audio!

12.0.0-beta.4

Patch Changes

12.0.0-beta.3

Patch Changes

  • bac6b96 Thanks @dgreif! - Wait 30 seconds (instead of 5 seconds) before fetching remote camera status after light is toggled in HomeKit. This may help with issues where camera lights appear to toggle back to old state shortly after turning them on/off.

  • 7d198b8 Thanks @dgreif! - Temporary fix for 2-way audio. This pins werift to an older version while we look into bug fixes. Thanks to @tsightler for debugging and pursuing a real fix!

  • 7b9fbec Thanks @dgreif! - Switched from a React-based UI to a simple JS UI for the homebridge-ring plugin UI. This should reduce the package size and simplify development. No visual changes should be noticiable in the UI.

  • Updated dependencies [d54168d]:

12.0.0-beta.2

Patch Changes

12.0.0-beta.1

Patch Changes

12.0.0-beta.0

Major Changes

  • 9e4f04a Thanks @dgreif! - Drop Node 16 support. Node 18 is the current LTS, so please upgrade to Node 18 or Node 20. Note, Node 16 may still work after this update, but will likely break without warning in future updates.

Patch Changes

11.8.1

Patch Changes

11.8.0

Minor Changes

  • 906225c Thanks @dgreif! - Embed hardware id in the refresh token string. This should prevent a second device from being created in Ring Control Center. For this to take effect, please follow the instructions in https://github.com/dgreif/ring/wiki/Notification-Troubleshooting

  • 36cdb0b Thanks @dgreif! - Embed push notification credentials in the refresh token. This should allow push notifications to work across restarts and continue working past 24 hours in regions with data residency restrictions.

  • 96bbf54 Thanks @dgreif! - Allow Node.js 20

Patch Changes

11.8.0-beta.0

Minor Changes

  • 906225c Thanks @dgreif! - Embed hardware id in the refresh token string. This should prevent a second device from being created in Ring Control Center. For this to take effect, please follow the instructions in https://github.com/dgreif/ring/wiki/Notification-Troubleshooting

  • 36cdb0b Thanks @dgreif! - Embed push notification credentials in the refresh token. This should allow push notifications to work across restarts and continue working past 24 hours in regions with data residency restrictions.

  • 96bbf54 Thanks @dgreif! - Allow Node.js 20

Patch Changes

11.7.7

Patch Changes

  • f3e66fd Thanks @dgreif! - Subscribe to ding/motion events every time the user session is refreshed. This currently happens every 12 hours. This is an attempt to fix motion/ding notifications after restarting, but I am unable to reproduce the issue and verify this change fixes it.

  • b9881a7 Thanks @dgreif! - Prevent a duplicate device named "Device name not found" from being created when logging into homebridge with the homebridge ui.

  • Updated dependencies [f3e66fd, af7f44e]:

11.7.6

Patch Changes

  • 8ef4c15 Thanks @dgreif! - Recreate the session every 12 hours. This is intended to fix an ongoing issue with Push Notifications for users outside the US. We believe Ring is deleting session data after ~24 hours for Data Residency reasons, and that recreating the session periodically should allow notifications to work indefinitely. Note, this has not been verified to fix the issue yet. See https://github.com/dgreif/ring/issues/1218 for more details.

  • f2e59aa Thanks @dgreif! - Update location id placeholder in the homebridge ui to reflect the expected format. Closes #1177

  • Updated dependencies [8ef4c15]:

11.7.5

Patch Changes

11.7.4

Patch Changes

  • 8d19bdc Thanks @dgreif! - For battery cameras, wait up to 2 seconds for snapshot to be avaliable after a montion/ding event. These events often trigger an immediate notification without the snapshot uuid, quickly followed by a similar notification including the uuid. This new wait period should more consisitently provide a snapshot image for montion/ding notifications in HomeKit

  • 28b68cb Thanks @dgreif! - Clean snapshot uuid before requesting image

  • Updated dependencies [28b68cb]:

11.7.3

Patch Changes

11.7.2

Patch Changes

11.7.1

Patch Changes

11.7.0

Minor Changes

  • 4fe3fed Thanks @dgreif! - Add support of Intercoms. Currently the only supported features are unlocking and checking the battery level.

  • 9847506 Thanks @dgreif! - Add programmable switch for intercom doorbell press

  • a862bd2 Thanks @dgreif! - Add true doorbell service for intercoms. This can trigger Homepods to chime when the intercom doorbell is pressed

  • 836c580 Thanks @dgreif! - Automatically subscribe for ding events on intercoms

  • 56a7894 Thanks @dgreif! - Detect unlock notification from intercom

Patch Changes

  • 503e34f Thanks @dgreif! - Fixed a typo which caused all cameras to be recognized as wired cameras. This lead to slower notifications for battery cameras and removed the battery level in HomeKit. Big thanks to @satrik for pointing me in the right direction to track down these issues!

  • 321c983 Thanks @dgreif! - Fix payload sent for unlocking doors via Ring Intercom

  • Updated dependencies [503e34f, 4fe3fed, 321c983, c084848, 836c580, 56a7894]:

11.6.0

Minor Changes

  • c9c40ba: Add Spotlight Cam Pro device type

Patch Changes

11.5.2

Patch Changes

  • daa5c31: Configure GitHub Releases with changesets action
  • Updated dependencies [daa5c31]

11.5.1

Patch Changes

  • 4150162: Remove references to homebridge dependency, which was causing plugin to fail to load on HOOBS and some homebridge environments

11.5.0

Minor Changes

  • 8cb9617: Add support for ONVIF cameras

Patch Changes

11.4.0

Minor Changes

  • 95f09a8: Updated the ring repository to a modern monorepo setup. This should not impact consumers of the packages, but please open an issue if you see something odd after this change.

Patch Changes

  • 95f09a8: Updated dependencies
  • Updated dependencies [95f09a8]
  • Updated dependencies [95f09a8]

11.3.1 (2022-10-15)

Bug Fixes

11.3.0 (2022-10-02)

Features

Bug Fixes

  • homebridge: prevent undefined brightness for alarms (08aa0ea), closes #1057
  • homebridge: update homebridge ui deps (742c316)
  • update dependencies (35f1932)

11.2.1 (2022-08-28)

Bug Fixes

  • homebridge: prevent double ding notifications (9b63104), closes #944
  • use correct name for lpd_v4 camera (2425a14), closes #951

11.2.0 (2022-08-27)

Features

  • add lpd_v4 camera model (efa5491), closes #951
  • homebridge: allow logs to be disabled with disableLogs (67e02a0), closes #906
  • homebridge: support brightness for alarm base station and keypads (bbccf1e), closes #872

Bug Fixes

  • homebridge: hide motion sensor for unequipped bulbs (3f72cb9), closes #1001
  • homebridge: maintain night mode across bridge reboots (6610445), closes #908

11.1.0 (2022-08-21)

Features

  • homebridge: allow cameras to be unbridged (7302298)
  • homebridge: use opus transcoding for unbridge cameras (e9eb7a4)

Bug Fixes

  • homebridge: add unbridgeCameras option to ui schema (e97047d)
  • update dependencies (20584cd)
  • update dependencies (6f98cdf)

11.0.7 (2022-07-10)

Bug Fixes

  • hide errors from snapshot request timeouts (f997e34), closes #932
  • update dependencies (ce0bf2a)

11.0.6 (2022-06-29)

Bug Fixes

11.0.5 (2022-06-12)

Bug Fixes

11.0.4 (2022-05-29)

Bug Fixes

  • handle unanswered calls when transcoding (6f9d3df)
  • update werift and ring edge connection strategy (7b786f3)

11.0.3 (2022-05-28)

Bug Fixes

  • automatically activate streams and allow key frame requests (b129f29)
  • end streaming session when connection ends (b6bf08b)
  • homebridge: allow ffmpeg in config schema (#946) (3242bbd)
  • remove race condition for sending messages to ring edge connections (a9438d3)
  • start ring edge pings as soon as session is started (04ad614)
  • update dependencies including ffmpeg (f5cd553)
  • use random client id for every ring edge connection (3ba78e3)

11.0.2 (2022-05-22)

Bug Fixes

  • api: prevent duplicate events from onCallEnded (14ee6eb), closes #941
  • handle pcmu audio streams for incoming audio (06f6ff1), closes #930
  • handle pcmu return audio (7b86182), closes #930
  • homebride: use shared engines config to enforce node 16 requirement (b748cb0)
  • prevent hanging promises from streams that fail to connect (dd7638e)

11.0.1 (2022-05-17)

Bug Fixes

11.0.0 (2022-05-08)

⚠ BREAKING CHANGES

  • Node 12/14 are no longer supported, please update to node 16. A dependency added in v10 did not support node 12/14, which is why I'm officially dropping support now.

Bug Fixes

  • officially drop node 12 & 14 support (3d65c77), closes #926

10.0.0 (2022-05-08)

Features

  • support ring edge camera streaming (b30d99f)
  • receive dings from push notifications (c9f130f)
  • homebridge: faster snapshots from camera notifications (7fc821b)
  • add cocoa_floodlight (c7a7e9c), closes #893
  • api: simple webrtc session (bac7a49)
  • api: allow custom peer connections for streaming (3e9e784)
  • api: convert ding handling to use notifications (5b62318)
  • api: update notification types (15d3e7e)

Bug Fixes

  • homebridge: add name option to schema so that it won't be removed by config-ui (af6755a), closes #870
  • include device name when setting push token (2466a25), closes #920
  • npm audit fix (c1fe605)
  • remove doorbell press simulation options (e1d1225)
  • update dependencies (4b25595)
  • cameras: wait to activate session until connected (9a49389)
  • handle push notification for unknown camera (cc8fc2a)
  • hide ECONNRESET errors from push receiver (1196d96)
  • update dependencies (4b97fb3)
  • update uuid namespace to force new client sessions (bc3e943)
  • separate streaming setup for ring edge vs regular cameras (6281cf9)
  • api: allow snapshot to be force-updated based on options (fa0212a)
  • drop support for node 10 (509d556)
  • homebridge: increase minimum homebridge version to 1.4.0 (d5be74a)
  • remove sip calling in favor of live calls (7aeae37)
  • use Buffer.from (2b28d90)

⚠ BREAKING CHANGES

  • The sendDoorbellMotionNotificationsToTv and sendCameraMotionNotificationsToTv options have been removed. These options were originally inteded as a workaround for the fact that tvOS would only automatically start streaming for doorbell presses and not for motion events. tvOS 15 now supports this features as an option in the UI, so we no longer need this option at the plugin level.
  • api: All ding-related functionality will now use the PushNotification type, and the ActiveDing type has been removed
  • api: The cameraDingsPollingSeconds option has been removed. Ding events will now be received via push notifications (no setup required)
  • api: The treatKnockAsDing option has been removed. Knocks should now register as "dings" automatically, though I have not been able to test this functionality
  • ring-client-api only (homebridge not impacted) - All streaming will now be done using the new Ring api via WebRTC + WebSockets. For those using camera.streamVideo, you should not notice any difference. Anyone directly interacting with sip sessions, you will need to migrate to the new LiveCall api. It's fairly similar, and should be more reliable long term. A number of other sip-specific methods have been removed from the RingCamera api as well.
  • Node 10 is no longer officially supported. It may still work, but could break without warning in the future.
  • homebridge: The minimum supported homebridge version for this plugin is now 1.4.0

Bug Fixes

  • prevent push receiver ECONNRESET error from logging (644e86d)

10.0.0-beta.8 (2022-05-07)

Bug Fixes

  • remove unnecessary dependencies (0acf3c3)

10.0.0-beta.7 (2022-05-07)

⚠ BREAKING CHANGES

  • The sendDoorbellMotionNotificationsToTv and sendCameraMotionNotificationsToTv options have been removed. These options were originally inteded as a workaround for the fact that tvOS would only automatically start streaming for doorbell presses and not for motion events. tvOS 15 now supports this features as an option in the UI, so we no longer need this option at the plugin level.

Features

Bug Fixes

  • homebridge: add name option to schema so that it won't be removed by config-ui (af6755a), closes #870
  • include device name when setting push token (2466a25), closes #920
  • npm audit fix (c1fe605)
  • remove doorbell press simulation options (e1d1225)

10.0.0-beta.6 (2022-05-06)

Features

  • api: allow custom peer connections for streaming (3e9e784)

Bug Fixes

10.0.0-beta.5 (2022-04-10)

Bug Fixes

  • cameras: wait to activate session until connected (9a49389)
  • handle push notification for unknown camera (cc8fc2a)
  • hide ECONNRESET errors from push receiver (1196d96)
  • restore dual battery level calculations (26fa84d)
  • update dependencies (4b97fb3)

10.0.0-beta.4 (2022-04-03)

⚠ BREAKING CHANGES

  • api: All ding-related functionality will now use the PushNotification type, and the ActiveDing type has been removed
  • api: The cameraDingsPollingSeconds option has been removed. Ding events will now be received via push notifications (no setup required)
  • api: The treatKnockAsDing option has been removed. Knocks should now register as "dings" automatically, though I have not been able to test this functionality

Features

  • api: convert ding handling to use notifications (5b62318)
  • api: update notification types (15d3e7e)
  • homebridge: faster snapshots from camera notifications (7fc821b)
  • receive dings from push notifications (c9f130f)

Bug Fixes

  • more closely match ring edge live streaming setup flow (4bb3189)
  • update uuid namespace to force new client sessions (bc3e943)
  • use camera health to determine battery and charging status (fac7033), closes #873

10.0.0-beta.3 (2022-03-26)

Bug Fixes

  • separate streaming setup for ring edge vs regular cameras (6281cf9)

10.0.0-beta.2 (2022-03-26)

Features

  • support ring edge camera streaming (b30d99f)

Bug Fixes

  • api: allow snapshot to be force-updated based on options (fa0212a)

10.0.0-beta.1 (2022-02-27)

⚠ BREAKING CHANGES

  • homebridge: For anyone who updated to the 10.0 beta and had their cameras reset in HomeKit, this change will cause another reset. This moves the audio codecs back to what they were before the 10.0 beta, which means anyone upgrading directly from v9 will not experience a reset of the cameras. Using native Opus was an experimental feature, which ultimately lead to a degraded user experience.

Bug Fixes

  • allow video transcoding to be skipped (1ef8cdd)
  • homebridge: switch back to aac-eld from opus (7dcd2a0)

10.0.0-beta.0 (2022-02-18)

⚠ BREAKING CHANGES

  • ring-client-api only (homebridge not impacted) - All streaming will now be done using the new Ring api via WebRTC + WebSockets. For those using camera.streamVideo, you should not notice any difference. Anyone directly interacting with sip sessions, you will need to migrate to the new LiveCall api. It's fairly similar, and should be more reliable long term. A number of other sip-specific methods have been removed from the RingCamera api as well.
  • Node 10 is no longer officially supported. It may still work, but could break without warning in the future.
  • homebridge: The minimum supported homebridge version for this plugin is now 1.4.0
  • homebridge: This change will break all existing automations related to cameras, and will likely move them back to the default room in HomeKit. Once updated, you will have to set up your automations again manually. This is necessary to get camera audio working again after the switch to Opus
  • homebridge: Switching to Opus requires the camera to be removed and re-added to HomeKit. Until this is done, you will not receive audio from your cameras.

Features

  • add floodlight pro (f749d38), closes #889
  • homebridge: stream opus audio without ffmpeg for transcoding (ee142bc)

Bug Fixes

  • drop support for node 10 (509d556)
  • homebridge: force cameras to be recreated in HomeKit (94a1520)
  • homebridge: increase minimum homebridge version to 1.4.0 (d5be74a)
  • remove sip calling in favor of live calls (7aeae37)
  • use Buffer.from (2b28d90)

9.25.0-beta.1 (2022-02-14)

Features

  • use new WebRTC endpoint for live calls (6e7779f)

9.25.0-beta.0 (2022-01-29)

Features

  • api: decouple ffmpeg prep from execution (#859) (e3cc9d1)
  • handle new camera types with no battery (11ae286)
  • slightly faster snapshots via new endpoint (b840471)

9.24.0 (2022-01-22)

Features

  • support glassbreak sensor (98271f9)

Bug Fixes

  • allow process to exit when RingApi.disconnect() is called (#851) (8ef25ac)
  • avoid error when ring terminates video stream (7717d5e), closes #853
  • update dependencies (c80d052)

9.23.0 (2021-10-17)

Features

  • homebridge: config option to hide camera lights (58be17c), closes #802
  • homebridge: option to treat "knock" as a ding (7ece8b2), closes #514

Bug Fixes

9.22.1 (2021-10-13)

Bug Fixes

  • homebridge: prevent login attempt for null refresh tokens (#791) (bbc9db5)

9.22.0 (2021-10-02)

Features

Bug Fixes

  • handle promise rejections (2df5591)
  • homebridge: handle camera stream ending before it is active (4a0edc0), closes #762
  • update dependencies (24d5fde)

9.21.2 (2021-09-08)

Bug Fixes

9.21.1 (2021-09-04)

Bug Fixes

  • homebridge: avoid setting ALARM_TRIGGERED as alarm target state (a011ea4), closes #755
  • homebridge: prevent camera light from showing wrong status after toggling (93c3b92), closes #751
  • update dependencies (c13501e)

9.21.0 (2021-08-14)

Features

  • add panic button to known device types (ff26b8d), closes #610

Bug Fixes

  • handle uncaught promise rejections (93622c0), closes #443
  • homebridge: keep alarm in night mode when armed in night mode (f192fd9), closes #726 #545
  • prevent auth token from being used after it expires (9298758)
  • update dependencies (3e81c68)

9.20.1 (2021-08-12)

Bug Fixes

  • homebridge: mask password in homebridge-ui (2711aaa)
  • remove http2 (9e2abeb)

9.20.0 (2021-08-06)

Features

  • getHealth for chimes, and new chime models (d78f92b), closes #720

Bug Fixes

9.19.0 (2021-07-31)

Features

  • homebridge: custom ui for config-ui-x (4705d58), closes #696
  • specific prompt for 2fa from authenticator app (bed30d3)

Bug Fixes

  • retry request for 504 response (434157c), closes #697

9.18.6 (2021-07-28)

Bug Fixes

9.18.5 (2021-07-26)

Bug Fixes

  • remove unnecessary log in sip (0392904)

9.18.4 (2021-07-26)

Bug Fixes

  • keepalive to keep stream open longer than 30 seconds (5e79527), closes #479

9.18.3 (2021-07-24)

Bug Fixes

  • graceful recovery after api is unreachable (5fdc0b3), closes #616

9.18.2 (2021-07-17)

Bug Fixes

  • correct type dependencies for client-api use in other ts projects (43735f7)
  • update dependencies (61b2ee6)
  • update dependencies (71e3519)

9.18.1 (2021-05-17)

Bug Fixes

9.18.0 (2021-05-02)

Features

  • update dependencies (8e4e148)
  • api: add support for updating device settings for cameras (#625) (77ecb45)

Bug Fixes

  • more reliable streaming with new media servers (6503813)

9.17.0 (2021-04-17)

Features

  • api: add support for enabling location modes (#612) (055e5f0)

9.16.0 (2021-04-09)

Features

  • support outdoor smart plug (79b28fb)

Bug Fixes

9.15.6 (2021-04-02)

Bug Fixes

  • more reliable port reservation for streams (16d6866)
  • update dependencies (e8534da)

9.15.5 (2021-03-19)

Bug Fixes

9.15.4 (2021-03-04)

Bug Fixes

9.15.3 (2021-02-21)

Bug Fixes

  • homebridge: avoid logging intentionally hidden accessories (75eb3bc)
  • homebridge: store system id on disk to avoid random session id (8662b0c), closes #521
  • ignore notYetParticipatingInMode when determining location modes support (de61bc5), closes #565

9.15.2 (2021-02-20)

Bug Fixes

  • update dependencies (1964c8f)
  • api: allow camera.getEvents() with no options (03fd4e5)
  • homebridge: cache snapshot longer for battery cams with avoidSnapshotBatteryDrain (e5a65e8), closes #502

9.15.1 (2021-02-15)

Bug Fixes

  • homebridge: use Service.BatteryService instead of Service.Battery (2228a05)

9.15.0 (2021-02-15)

Features

  • remove snapshot restrictions for battery cams in wired mode (bc8e2cc), closes #502
  • homebridge: show charging status for battery cams (#571) (06fdf1c)

Bug Fixes

9.14.2 (2021-01-29)

Bug Fixes

  • homebridge: allow 0 for locationModePollingSeconds in config-ui (3e63b7a), closes #561
  • log wiki link for NGHTTP2_ENHANCE_YOUR_CALM error (d26052a), closes #560
  • require specific versions of node lts to avoid http2 errors (18ca92d)
  • update dependencies (5e717be)

9.14.1 (2021-01-11)

Bug Fixes

  • log an error when opening websocket on node 15 (abe2036), closes #539
  • homebridge: log all location ids before fetching devices (b6e0eef), closes #541
  • remove keepalive and dns caching in favor of http2 (fcfd2a6), closes #497
  • update dependencies (83f0090)

9.14.0 (2021-01-04)

Features

Bug Fixes

  • lock node versions to 10, 12, and 14 (d000d62)

9.13.0 (2021-01-01)

Features

Bug Fixes

  • reset dns cache after ENETUNREACH (c28b368), closes #523
  • update dependencies (e2899f1)
  • homebridge: increase simultaneous stream limit (6d985c4), closes #518

9.12.8 (2020-12-05)

Bug Fixes

  • use systeminformation to get unique hardware id (25d48c3)

9.12.7 (2020-12-03)

Bug Fixes

  • prevent camera websocket sessions from blocking api (53d7d61)

9.12.6 (2020-11-22)

Bug Fixes

9.12.5 (2020-11-20)

Bug Fixes

  • stop using http2 as workaround for recent errors (9c5f4eb)

9.12.4 (2020-11-13)

Bug Fixes

  • revert socket.io client version (abd6e4a)

9.12.3 (2020-11-13)

9.12.2 (2020-10-31)

Bug Fixes

  • homebridge: live stream for more than 30 seconds on most cameras (66b3eb7), closes #479

9.12.1 (2020-10-23)

Bug Fixes

  • homebridge: correct audio params if audio isn't supported (c7d4a14), closes #478
  • homebridge: use custom ffmpegPath when checking libfdk_aac support (68af136)

9.12.0 (2020-10-17)

Features

  • support new media servers with rtp latching (9825974), closes #447

9.11.0 (2020-10-12)

Features

  • homebridge: sendDoorbellMotionNotificationsToTv option for tvOS 14 (7e1c315), closes #469
  • avoidSnapshotBatteryDrain option (7d1b530), closes #427

9.10.0 (2020-10-01)

Features

  • homebridge: option to expose regular cameras as doorbell to show tvOS 14 notifications (114d868)
  • homebridge: support tilt sensor (f9ac587)

Bug Fixes

  • hard dns cache reset on failure (75dba2f), closes #449

9.9.0 (2020-08-28)

Features

  • homebridge: support generic zwave sensors (9e3356d), closes #442

Bug Fixes

9.8.2 (2020-08-20)

Bug Fixes

  • explicitly enable camera speaker for return audio (1f0a3ed), closes #431
  • request SAVPF to force ice candidates (f31f6fa), closes #438

9.8.1 (2020-08-18)

Bug Fixes

  • homebridge: allow video-only streams without ffmpeg (2e39797)

9.8.0 (2020-08-16)

Features

  • faster and more reliable stream connections using stun (8299ec9)

9.7.3 (2020-08-09)

Bug Fixes

  • clearer error message when snapshot fails for battery cams (ac63e05)
  • homebridge: respect request for ipv6 address in live stream (a826256)

9.7.2 (2020-08-08)

Bug Fixes

  • use default interface for local ip address (bab2d66), closes #424

9.7.1 (2020-08-07)

9.7.0 (2020-08-03)

Features

  • additional ring data types (590e1cd)

Bug Fixes

  • better logging when live streams are blocked by modes settings (ae809f5), closes #414
  • determine host ip without ip module (15d2ace)

9.6.0 (2020-07-12)

Features

  • add amazon key locks to device discovery tool (4bbbb02), closes #384
  • api: api.disconnect() to unsubscribe current instance (add754f), closes #378

9.5.0 (2020-07-11)

Features

  • homebridge: add onlyDeviceTypes option (f9c1c1b), closes #394

Bug Fixes

9.4.1 (2020-07-06)

Bug Fixes

9.4.0 (2020-07-04)

Features

  • remove life time restrictions on snapshots (0c7f226)
  • api: api.getProfile to fetch user profile (6af8874), closes #389

Bug Fixes

  • prevent new session from being created on each restart (8c21ca0), closes #389
  • api: prevent ding-loop when streaming from onNewDing (#390) (0980b33)

9.3.6 (2020-07-01)

Bug Fixes

  • homebridge: clear dns cache after ENOTFOUND (14edaa3), closes #374

9.3.5 (2020-06-29)

Bug Fixes

  • homebridge: allow snapshots to be fetched after a failure (84e97d2), closes #383

9.3.4 (2020-06-28)

Bug Fixes

  • homebridge: remove 'fetching snapshot' placeholder image (ff39dce)
  • homebridge: split rtcp for incoming and return audio (55fbaec)
  • log an error if locationIds config is empty (8dfc49a)
  • throw error if user has no locations (c988a66), closes #375

9.3.3 (2020-06-21)

Bug Fixes

  • add user agent to requests (19ab0e6), closes #373
  • homebridge: remove -re flag for return audio (db951a7)

9.3.2 (2020-06-17)

Bug Fixes

  • remove dns caching for oauth requests (3cd95e0)

9.3.1 (2020-06-17)

Bug Fixes

  • remove keepalive for oauth requests (e37b823)

9.3.0 (2020-06-17)

Features

  • homebridge: allow devices to be hidden by id (f28c0ca)

9.2.0 (2020-06-17)

Features

  • api: ring chime support (#309) (8870d35)
  • api: video search and periodic footage (f71584e)
  • homebridge: chime with snooze, play sounds, and volume (3581178)

Bug Fixes

  • try for snapshots for 35 seconds (a274d48)
  • homebridge: center text for fetching snapshot placeholder (28c2f33)
  • improved detection of battery vs wired camera (405423f)

9.1.1 (2020-06-07)

Bug Fixes

  • homebridge: cache snapshots for 2 minutes (d671ea8), closes #350

9.1.0 (2020-06-06)

Features

  • add doorbell 3 (6017a6c), closes #346
  • homebridge: placeholder image if snapshots are unavailable (425454d), closes #318

Bug Fixes

  • log full http error in debug mode (f1a3884)

9.0.1 (2020-06-05)

Bug Fixes

  • log error message when request fails without response (d22de47)

9.0.0 (2020-06-04)

⚠ BREAKING CHANGES

  • homebridge: Night Mode can now be configured as a way to bypass contact sensors for either Home or Away mode. Night Mode previously activated Home mode only. By default, Night Mode will be hidden in HomeKit.
  • Night mode is no longer an option for Ring Alarm and Location Modes. Any automations that made use of Night mode will need to use Home mode instead.
  • UPnP and NAT-PMP hole punching has been removed in favor of RTP latching. This should lead to a successful live stream, regardless of network configuration, network settings, and NAT type
  • ffmpeg is now required for live streams. See https://github.com/dgreif/ring/wiki/FFmpeg for details

Features

  • homebridge: configure night mode to bypass contact sensors (24183c4), closes #215
  • add support for z-wave thermostats via ring alarm (#331) (3daa1f1)
  • more reliable live streams regardless of nat type (09a78c9)
  • use random srtp key/value for all live streams (082567a)

Bug Fixes

  • homebridge: detect and stop inactive live streams (3a5a007)
  • homebridge: set light as primary service for beams (b33233d)
  • homebridge: set security system as primary service for alarm (a888bd1)
  • remove night mode from alarm and location modes (63ff8a0)

8.2.0 (2020-05-17)

Features

8.1.0 (2020-05-11)

Features

  • homebridge: water sensor accessory (569fed7), closes #316

Bug Fixes

  • homebridge: cache snapshots to avoid blocking homebridge accessories (eb75a46), closes #311 #293

8.0.1 (2020-05-09)

Bug Fixes

  • skip external camera cleanup if cleanupAccessoryData is not available (e80f832), closes #315

8.0.0 (2020-05-03)

Features

  • homebridge: clean up persist files from old external cameras (054691c)
  • homebridge: explicit error if using cameras without homebridge 1+ (21702da)
  • homebridge: bridged cameras and homebridge 1+ (01ac0ec)

Bug Fixes

  • homebridge: hide double and long press for doorbell programmable switch (e8be8fb), closes #288

⚠ BREAKING CHANGES

  • homebridge: homebridge >=1.0.0 is now required
  • homebridge: Cameras are now bridged instead of being created as external accessories in homebridge. Once you update, you will see two copies of each of your cameras. You will need to manually remove the old cameras from HomeKit by going into the cameras settings and choosing "Remove Camera from Home". The new bridged cameras will not have this option, and will instead have a "Bridge" button. You will also need to copy over any automations that you had tied to your cameras, such as motion detection, button presses, and lighting/siren activations. Please note, this change should significantly reduce complexity while setting up homebridge-ring cameras, but will not change live streaming in any way. If you had issues with live streams before, you will continue to have issues with live streams after this update.

7.2.2 (2020-04-05)

7.2.1 (2020-03-07)

Bug Fixes

  • homebridge: allow 0 for polling options to disable polling (c89c977), closes #260 #266

7.2.0 (2020-02-26)

Features

  • homebridge: use pre-built ffmpeg binary (3911d52), closes #259

Bug Fixes

  • homebridge: hide location modes in more scenarios (72d8db4), closes #260

7.1.0 (2020-02-22)

Features

  • homebridge: location mode switch (defe995), closes #200

7.0.0 (2020-02-21)

⚠ BREAKING CHANGES

  • email/password auth via the api is no longer supported. Ring now requires 2fa or verification codes for all account logins, so refreshTokens are now the only way for the api to authenticate

Features

  • homebridge: retrofit alarm zones as contact sensors (a32b6e6), closes #192 #248
  • homebridge: temperature sensors (96502cc), closes #227
  • custom device name for Control Center in Ring app (46ea3cf), closes #257

Bug Fixes

  • log 2fa code rate limiting (64a5b70)
  • log wiki link for ffmpeg errors (c453462)
  • remove email/password auth from api and homebridge config options (2957416)

6.2.0-alpha.0 (2020-02-04)

Features

  • homebridge: retrofit alarm zones as contact sensors (a32b6e6), closes #192 #248
  • homebridge: temperature sensors (96502cc), closes #227

Bug Fixes

  • log 2fa code rate limiting (64a5b70)
  • log wiki link for ffmpeg errors (c453462)

6.1.1 (2020-01-24)

Bug Fixes

  • use lower of dual battery values instead of average (3109ff2), closes #206

6.1.0 (2020-01-21)

Features

  • handle cameras with two battery slots (0f6b0c5)

6.0.3 (2020-01-18)

Bug Fixes

  • better logging for common errors (74b94dc)

6.0.2 (2020-01-17)

6.0.1 (2020-01-17)

Bug Fixes

  • remove dotenv/config from cli tools (c3f169e)

6.0.0 (2020-01-17)

⚠ BREAKING CHANGES

  • homebridge: Conversion step to change from homebridge-ring-alarm to homebridge-ring has been removed. If you are updating from v2, please first upgrade to version 5.13.1 before upgrading to version 6+
  • api: api.getHistory has been removed in favor of location.getCameraEvents
  • api: location.getEvents has been replaced with location.getCameraEvents
  • api: camera.getHistory has been replaced with camera.getEvents
  • api: camera.getRecording has been renamed to camera.getRecordingUrl and takes a second optional param { transcoded: true } instead of true. This allows for additional options if we decide to add any down the road
  • Node.js 10+ now required

Features

  • ring-device-data-cli for discovering new device types and data structures (de3c23a)
  • api: updated history/event methods for locations and cameras (e415605)

  • homebridge: remove v3 conversion step to update homebridge plugin name (c6c6057)

  • update dependencies (3e9ce7e)

5.13.1 (2020-01-15)

Bug Fixes

  • handle delayed and expired dings when starting live video (b6c4460), closes #211 #157 #106
  • handle live stream for battery cameras (8c74a23)

5.13.0 (2020-01-11)

Bug Fixes

  • automatically subscribe cameras to motion and dings (7bf4260), closes #210
  • get or create active ding via new live_view endpoint (4fb837e)

5.13.0-alpha.0 (2020-01-05)

Features

  • configurable external port range (a5255f8)

5.12.1 (2020-01-02)

Bug Fixes

  • use default gateway when opening live stream port (be2cfe1), closes #191

5.12.0 (2019-12-20)

Features

  • api: option to get transcoded recordings (10a85da), closes #204

5.11.0 (2019-12-20)

Bug Fixes

  • homebridge: use occupancy sensor for freeze sensors (c488820)

5.11.0-alpha.1 (2019-12-18)

Features

  • homebridge: log hidden accessories (ae841fb)

5.11.0-alpha.0 (2019-12-13)

Features

  • homebridge: flood/freeze and freeze sensors (5ae4367)

5.10.0 (2019-11-30)

Features

Bug Fixes

  • remove overlapping service check except during debug (b7390dc), closes #175 #190

5.9.1 (2019-11-01)

Bug Fixes

  • homebridge: prevent overlapping camera switch services (c59623e)

5.9.0 (2019-10-16)

Bug Fixes

  • homebridge: change email & password field types in config.schema.json (c065449)

Features

  • homebridge: in-home doorbell switch for equipped doorbell cameras (#152) (3537646)

5.8.2 (2019-10-04)

Bug Fixes

  • additional logging on auth failure (45ed068)

5.8.1 (2019-10-04)

Bug Fixes

  • correctly handle unknown model with battery (d2da0f2)

5.8.0 (2019-10-03)

Features

  • add new camera models (b5e3591)
  • fallback check for camera battery if unknown model (5910524)
  • homebridge: add logging for camera motion/doorbell events (b4af8a0)

5.7.0 (2019-09-17)

Features

  • api: location.getAlarmMode() to get current alarm mode (248fccc)

5.6.2 (2019-09-05)

Bug Fixes

  • use consistent hardware_id to avoid breaking Ring app session (75f4b4a)

5.6.1 (2019-08-24)

Bug Fixes

  • homebridge: keep refreshToken up to date in config.json (6719e4a), closes #109
  • remove ffmpeg listeners with node 8 compatible method (96c27ac)

5.6.0 (2019-08-24)

Features

  • homebridge: audio in camera streams (22ed836)

5.5.1 (2019-08-10)

Bug Fixes

  • homebridge: remove debug code that removes all devices (d4cce8a)

5.5.0 (2019-08-10)

Features

  • homebridge: panic buttons for burglar and fire (c87a83a), closes #83

5.4.1 (2019-08-10)

Bug Fixes

  • improved snapshot timing for battery cameras (8fabd14)

5.4.0 (2019-08-08)

Bug Fixes

  • homebridge: automatically prune unused services (6496aa1)

Features

  • homebridge: add support for fans (#94) (15cca9a)

5.3.1 (2019-08-07)

Bug Fixes

  • homebridge: handle missing snapshots and offline cameras (adc08f6), closes #92

5.3.0 (2019-08-01)

Features

  • homebridge: more detailed logging (6c2021e)

5.2.0 (2019-08-01)

Features

  • homebridge: include changelog for homebridge ui (46387a5), closes #86

5.1.0 (2019-08-01)

Features

  • homebridge: config schema for homebridge settings ui (56011e3), closes #86

5.0.0 (2019-08-01)

Build System

  • conventional github releases (907fc73)

Features

  • negotiate port mappings to get through more NAT setups (2f1899b)
  • sip streaming api (#88) (a00fe31)

BREAKING CHANGES

  • SipSession api has changed and now exposes Observables for RTP packets on audioStream and videoStream

4.5.2 (2019-07-29)

Bug Fixes

  • homebridge: add https fallback for getting public ip (916014c), closes #81

4.5.1 (2019-07-29)

Bug Fixes

  • homebridge: use correct service for on/off switch (edba85c), closes #75

4.5.0 (2019-07-28)

Features

  • homebridge: inform HomeKit of failure to arm if bypass required (e53d317), closes #1

4.4.1 (2019-07-28)

Bug Fixes

  • use correct to for sip response to keep stream alive (c205ab2)

4.4.0 (2019-07-27)

Features

  • homebridge: add single-level switch (18f817a), closes #75

4.3.2 (2019-07-27)

Bug Fixes

  • homebridge: return stale snapshots for battery cameras immediately (2482788), closes #38
  • homebridge: use stun as fallback for getting public ip (5f8c3f5)

4.3.1 (2019-07-26)

Bug Fixes

  • homebridge: log errors from stream prep (9c268b8)
  • homebridge: use random open ports for RTP proxy (f55b1ee)

4.3.0 (2019-07-26)

Features

4.2.3 (2019-07-22)

Bug Fixes

4.2.2 (2019-07-21)

4.2.1 (2019-07-17)

Bug Fixes

  • handle 401 response for sessions (49b7f38)

4.2.0 (2019-07-16)

Features

  • ring-auth-cli for 2fa refresh token (69c6a3e), closes #39

4.1.0 (2019-07-16)

Features

  • homebridge: hideCameraSirenSwitch option (12fddbf), closes #66

4.0.7 (2019-07-15)

Bug Fixes

  • homebridge: handle charging battery status for base station (d22ccac), closes #65

4.0.6 (2019-07-15)

Bug Fixes

  • homebridge: correct charging and battery level for base station (e7beb8b), closes #65

4.0.5 (2019-07-15)

Bug Fixes

  • better snapshot waiting logic (9e97fec), closes #64

4.0.4 (2019-07-15)

Bug Fixes

  • avoid creating new sessions unless necessary (7b76147)

4.0.3 (2019-07-14)

Bug Fixes

  • homebridge: assume slow snapshots for all battery camera models (9f4b9d1)

4.0.2 (2019-07-12)

Bug Fixes

  • expect slow snapshots for Door View Cam (2bed6aa), closes #56

Build System

  • deps: bump lodash from 4.17.11 to 4.17.14 (42f654f)
  • deps: bump lodash.template from 4.4.0 to 4.5.0 (199b346)

4.0.1 (2019-07-12)

Bug Fixes

  • update dependencies to remove lodash vulnerability (fb88070)

4.0.0 (2019-07-12)

Bug Fixes

  • match ring app 2fa headers (237e651)
  • match ring app polling delay for dings (b567be7)

Features

  • rename npm modules to match functionality (8e7c387)

BREAKING CHANGES

  • homebridge-ring-alarm renamed to homebridge-ring. The config for homebridge should now be "platform": "Ring" instead of "platform": "RingAlarm". This config change will happen automatically the first time you start homebridge with the new version, but it will cause homebridge to error out after the config is changed. You will see a log that the config has changed and you can restart homebridge.
  • @dgreif/ring-alarm renamed to ring-client-api. The exported class is now RingApi instead of RingAlarmApi. Proper usage now looks like import { RingApi } from "ring-client-api".

3.9.0 (2019-07-07)

Features

3.8.1 (2019-07-05)

Bug Fixes

  • homebridge: correctly remove existing services based on hide config (50b9937)

3.8.0 (2019-07-05)

Features

  • homebridge: hideCameraMotionSensor option (94735cf), closes #54

3.7.2 (2019-07-05)

Bug Fixes

  • identify authorized_doorbots as doorbell cameras (1fd8f03)

3.7.1 (2019-07-03)

Bug Fixes

  • homebridge: allow stale snapshots for doorbell_v3 cameras (66f5fe4)