The Reolink Video Doorbell PoE is a practical network video doorbell. It features PoE power, a local web interface, streaming support, and can be integrated into a home automation system. In practice, however, the official Reolink mobile app may announce a button press with a noticeable delay. In my case, it was about 20 seconds, which is far too long for a doorbell.
The goal was simple: capture the button press locally and send an instant notification to the phone. No waiting for the cloud, no delay from the official app, and ideally, clicking the notification should also open the video in the Reolink app.
What the device provides
Reolink states support for CGI, RTSP, and ONVIF protocols on supported devices. CGI is suitable for HTTP commands and scripting, RTSP for video streaming, and ONVIF for integration with camera systems and home automation.
For the Reolink Video Doorbell PoE, the most important feature is the ONVIF Visitor event. This represents the doorbell button being pressed. There is no need to periodically poll the device to check if someone has rung. A properly integrated system can react directly to a change in this binary event. Local testing via the ONVIF PullPoint confirmed that when the button is pressed, an event with the state State=true is received, and after a certain time, the state returns to State=false. Home Assistant makes this event available as a binary sensor of the type Visitor.
Why Home Assistant
Home Assistant is well-suited as a local notification bridge in this case because it can:
- capture the Reolink Visitor event,
- trigger an automation,
- odošle push notifikáciu na telefón cez Home Assistant Companion App,
- send a push notification to the phone via the Home Assistant Companion App,
- add a loud sound, a snapshot, or the option to open the Reolink app on click.
and everything runs locally on your home network, without needing to expose the doorbell or Home Assistant to the public internet.
Basic Requirements
For this solution, you need:
- Reolink Video Doorbell PoE added to Home Assistant via the Reolink integration.
- The Visitor entity visible in Home Assistant.
- The Home Assistant Companion App installed on your phone.
- The notify service for your phone available in Home Assistant, e.g., notify.mobile_app_.
- An automation that sends a notification when the Visitor entity changes to o
It is important to use the actual entity_id from your own installation. In the Home Assistant, the entity may be named with the suffix visitor. Therefore, do not copy the entity name blindly, but verify it in the entity list.
Example Automation
The example below uses generic placeholders that need to be replaced with values from your own installation:
alias: Doorbell - phone notification
triggers:
- entity_id: binary_sensor.<reolink_doorbell_visitor>
to: "on"
trigger: state
actions:
- action: notify.mobile_app_<phone>
data:
title: Doorbell
message: Enemy at the gate
data:
channel: alarm_stream
importance: high
priority: high
ttl: 0
clickAction: app://com.mcu.reolink
mode: single
The value channel: alarm_stream is important, especially on phones where a regular notification arrives but does not play a sound. This channel uses Android's alarm sound channel. In testing, this worked even with the screen off.
The line clickAction: app://com.mcu.reolink causes the Reolink app to open when the notification is clicked. If the Reolink app is installed directly on the system, opening it works correctly. If installed via a virtualisation container like GBox, Android may open the app store or the app's web page instead of the Reolink app itself.
Regular Android Phone
On a regular Android phone with Google Play Services, the procedure is simplest:
- Install the Home Assistant Companion App from Google Play..
- Log in to your Home Assistant instance.
- Allow the Home Assistant app to send notifications.
- Disable overly aggressive battery saving if the manufacturer limits background app activity.
- Verify in Home Assistant that the notify.mobile_app_ service exists.
- Test a simple notification
- Then use the doorbell automation.
Huawei Without Google Play Services
A special case is Huawei phones without Google Play Services, such as the Huawei P40. The standard Google FCM push used by many Android apps does not work here. However, the Home Assistant Companion App can use local push notifications via a persistent connection.
In testing, the full Home Assistant Companion App installed from an APK source using the APKPure app worked.. Important points were:
- Do not use a minimal build without notification support.
- Set "Persistent Connection" to "Always" in the app.
- Enable notifications in Huawei settings.
- Enable auto-launch, secondary launch, and background activity.
- Disable automatic battery management for Home Assistant.
- Use the alarm_stream notification channel.
- Install the Reolink app directly from an APK source, not via GBox.
When switching between Wi-Fi and VPN, the Home Assistant Companion App may not properly re-establish the local push connection. The typical message in Home Assistant is Device not connected to local push notifications. The solution is simple, though not very elegant: completely stop the Home Assistant app on the phone and restart it. After restarting the app, the persistent connection is restored and notifications work even over VPN.
Security
For the ringing itself, there is no need to expose Home Assistant or Reolink to the internet. The chain can work entirely locally:
Reolink -> Home Assistant -> Home Assistant Companion App
If remote access is needed, using a VPN is safer than port forwarding from a public IP address. On Huawei devices without Google services, a VPN can be used, but keep in mind that local push depends on the app's persistent connection.
What's Important
The key points of the entire solution are:
- Capture the Reolink Visitor entity rather than relying solely on the delayed cloud push from the Reolink app.
- Use the exact entity_id from your own Home Assistant.
- Verify that your phone has its own notify.mobile_app service.
- Use alarm_stream for silent notifications.
- On Huawei devices without Google Services, enable persistent connection and allow background activity for the app.
- Install the Reolink app directly if you want clickAction to open it.
- Do not unnecessarily expose Home Assistant or the camera to the public internet.
Result
After setting up the automation, Home Assistant reacts to the doorbell button press instantly. The phone plays a loud notification and, when clicked, opens the Reolink app with the video. This solution bypasses the delay of the official Reolink push notification while still leaving the Reolink app for what it does best: video and communication with the visitor.
Sources
https://support.reolink.com/articles/900000617826-Which-Reolink-Products-Support-CGI-RTSP-ONVIF/
https://support.reolink.com/articles/900000617826-Which-Reolink-Products-Support-CGI-RTSP-ONVIF/
https://support.reolink.com/articles/16938270669593-How-to-Set-up-Visitor-Alerts-for-Reolink-Video-Doorbell-Cameras/
https://www.home-assistant.io/integrations/reolink/
https://companion.home-assistant.io/docs/notifications/notification-local/
https://companion.home-assistant.io/docs/notifications/notifications-basic/