Skip to content

Latest commit

 

History

History
1642 lines (922 loc) · 95.6 KB

CHANGELOG.md

File metadata and controls

1642 lines (922 loc) · 95.6 KB

homebridge-ring

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

  • 3604f30 Thanks @dgreif! - Update dependencies

  • #1307 c197ad1 Thanks @tsightler! - Update Opus processing to handle all possible bitrates and packet lengths which should fix audio issues over LTE/5G Minor tweaks to AAC-ELD processing for slightly improved audio

  • Updated dependencies [3604f30]:

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 #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

  • 30cf112: Include changelog in homebridge releases
  • Updated dependencies [c9c40ba]

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)