Adds support for Ubiquiti UniFi Protect devices in Homey.
  • JavaScript 80.3%
  • HTML 18.8%
  • CSS 0.8%
  • Python 0.1%
Find a file
Stephan Eizinga b8658b5c1f
Some checks failed
Validate Homey App / Validate Homey App (push) Has been cancelled
feat(snapshot): update camera and doorbell snapshots to use V2 API first; add action card for current camera image
2026-10-24 23:47:05 +02:00
.github Adding fix 2026-10-17 21:58:41 +02:00
.homeycompose feat(snapshot): update camera and doorbell snapshots to use V2 API first; add action card for current camera image 2026-10-24 23:47:05 +02:00
assets fix(icons): replace capability icons with Material Design Icons 2026-10-17 20:43:23 +02:00
drivers Merge pull request #60 from Erikvl87/feature/doorbell-press-snapshot 2026-10-24 23:39:24 +02:00
library Merge pull request #60 from Erikvl87/feature/doorbell-press-snapshot 2026-10-24 23:39:24 +02:00
locales feat: enhance RTSP URL handling for cameras and doorbells #53 2026-10-09 23:51:37 +02:00
settings Refactor code for improved readability and consistency 2026-10-06 07:59:45 +02:00
specs fix(snapshot): prefer the v2 api for camera and doorbell snapshots 2026-10-21 22:22:59 +02:00
test Merge pull request #60 from Erikvl87/feature/doorbell-press-snapshot 2026-10-24 23:39:24 +02:00
tools Adding fix 2026-10-17 21:58:41 +02:00
widgets Refactor code for improved readability and consistency 2026-10-06 07:59:45 +02:00
wiki feat: add RTSP check for cameras and doorbells 2026-08-29 00:11:21 +02:00
.eslintignore Add more context about Homey App SDK 2026-03-08 16:05:35 +01:00
.eslintrc.json feat: add air quality sensor support and improve websocket handling 2026-10-18 00:42:58 +02:00
.gitignore feat(alarm): add actions to arm and disarm NVR alarm, update constants and flow definitions 2026-07-16 21:49:30 +02:00
.homeychangelog.json feat(snapshot): update camera and doorbell snapshots to use V2 API first; add action card for current camera image 2026-10-24 23:47:05 +02:00
.homeyplugins.json Preparing for publication. 2020-02-06 22:28:29 +01:00
AGENTS.md Refactor API documentation and improve error handling in websocket events 2026-10-18 19:46:11 +02:00
api.js Refactor code for improved readability and consistency 2026-10-06 07:59:45 +02:00
app.js Refactor code for improved readability and consistency 2026-10-06 07:59:45 +02:00
app.json feat(snapshot): update camera and doorbell snapshots to use V2 API first; add action card for current camera image 2026-10-24 23:47:05 +02:00
CODE_OF_CONDUCT.md Rebuild from UniFi Protect app, evertyting is know with websockets and minimal setInterval en setTimeout functions. 2021-02-19 08:01:59 +01:00
CONTRIBUTING.md Rebuild from UniFi Protect app, evertyting is know with websockets and minimal setInterval en setTimeout functions. 2021-02-19 08:01:59 +01:00
env.json fix(snapshot): restore stable snapshot retrieval and reduce memory footprint 2026-06-09 23:22:44 +02:00
jest.config.js Adding fix 2026-10-17 21:58:41 +02:00
LICENSE Rebuild from UniFi Protect app, evertyting is know with websockets and minimal setInterval en setTimeout functions. 2021-02-19 08:01:59 +01:00
MEMORY_LEAK_ANALYSIS.md fix(memory): resolve critical memory leaks by managing timers and event listeners 2026-06-09 22:13:07 +02:00
MEMORY_LEAK_COMPLETE_REPORT.md fix(memory): resolve critical memory leaks by managing timers and event listeners 2026-06-09 22:13:07 +02:00
MEMORY_LEAK_FIX_SUMMARY.md fix(memory): resolve critical memory leaks by managing timers and event listeners 2026-06-09 22:13:07 +02:00
package-lock.json feat: add air quality sensor support and improve websocket handling 2026-10-18 00:42:58 +02:00
package.json feat: add air quality sensor support and improve websocket handling 2026-10-18 00:42:58 +02:00
README.md fix(icons): replace capability icons with Material Design Icons 2026-10-17 20:43:23 +02:00
README.nl.txt Updating app.json 2025-09-05 08:18:36 +02:00
README.txt Updating app.json 2025-09-05 08:18:36 +02:00
tsconfig.json Add more context about Homey App SDK 2026-03-08 16:05:35 +01:00

Ubiquiti UniFi Protect

Adds support for Ubiquiti UniFi Protect devices in Homey.

Supported devices

  • UniFi® Protect (Network Video Recorder):
    • UniFi® Cloud Key v2 Pro
    • UniFi® Dream Machine Pro (UnifiOs)
    • UniFi® Protect Network Video Recorder (UnifiOs)
  • UniFi® Video Camera G3 series:
    • UVC-G3
    • UVC-G3-AF
    • UVC-G3-DOME
    • UVC-G3-FLEX
    • UVC-G3-MICRO
    • UVC-G3-PRO
  • UniFi® Video Camera G4 series:
    • UVC-G4-PRO
    • UVC-G4-BULLET
  • UniFi® Doorbell G4 series:
    • UVC-G4-DOORBELL
    • UVC-G4-DOORBELL-PRO

Getting started

  1. Create a local access user in the UniFi Protect web interface (used only for Homey.
  2. Install this UniFi Protect app on your Homey.
  3. Go to the UniFi Protect app's settings page.
  4. You will be prompted to enter the credentials of the UniFi Video user you created in step 2 and some network information.
  5. Start the 'add device wizard' in Homey, search for your UniFi Cloud Key and/or cameras and add them to your devices.
  6. If the user credentials changed in UniFi Protect, they can be updated on the UniFi Protect app's settings page.

Usage

  • A flow can be triggered when motion detection on a camera starts or ends.
  • A flow can be triggered when a snapshot is created on a camera. This card supplies the name of the camera that created the snapshot and the snapshot image itself.
  • A flow action card can be used to create a snapshot, which is is saved to an Image tag.
  • A flow action card is available to set a camera's recording mode, being one of 'Don't record', 'Always record' or 'Record only motion'.

How to create an local account?

  • Login in your local UniFi web interface, and click on Admins & Users. Note: This must be done from your local device and not from unifi.ui.com or within the app.
  • Click on the '+' icon to add a new user.
  • Fill in the user details, and make sure to select 'Restrict to local access only' as the user type.
  • Give the user Full Management rights and click on 'Add'.

Troubleshooting / FAQ

  • Question: I am using not the latest firmware on the cloudkey and can't connect.
    • A: Please upgrade your Cloudkey to 2.0.27 and Protect version 1.17.2
  • Question: I get a lot of false motion alerts. Is there anything to do about that?
    • A: Turn off 'Enable Auto Rotate' and rotate the camera manually.
    • A: Remove the default motion zone and create a motion zone with only the zone what you want to detect motions.
    • A: Set 'Minimum seconds of motion to trigger event' on 1 second or higher
    • Do you have more tips? let me know!
  • Question: I am using a UnifiOS device, I don't see any storage information.
    • A: UnifiOS device does not release storage information through the API.

Feedback

If you find a bug or if you are missing a feature, please create an issue here. Thank you for using this app!

Attributions

Icons made by Google from Flaticon

Capability icons from Material Design Icons by Pictogrammers, licensed under Apache-2.0