Reolink: How do I create a home assistant notification with a link that opens the reolink camera app?

In case someone else comes across this thread looking for a way to make Home Assistant notifications open a specific camera on Reolink app, here’s what I was able to find after some reverse engineering.

To open a specific camera you’ll need to use the following URI:

intent://scan/#Intent;scheme=reolink;package=com.mcu.reolink;action=android.intent.action.VIEW;S.UID=<UID>;S.DEVNAME=<DEVICE_NAME>;S.ALMTYPE=<ALARM_TYPE>;S.ALMCHN=<CHANNEL>;S.ALMNAME=Detection;S.ALMTIME=<ALARM_DATE>;end

Where
<UID> = The UID of your camera or NVR (see this link)
<DEVICE_NAME> = The name of your camera or NVR
<ALARM_TYPE> = This can be either PEOPLE or VEHICLE depending on the detection type that triggered the notification. I personally believe this can be any value you want since it doesn’t impact the mobile app in any way. The important thing is that this has some value. I suggest always using PEOPLE or VEHICLE.
<CHANNEL> = The NVR channel to show on the Reolink app. I use Reolink NVR so this is important to me since this is the parameter that determines which camera will show up when the app opens. This parameter is a bitmask meaning you need to use it like this:

  • NVR camera 1 then CHANNEL = 1
  • NVR camera 2 then CHANNEL = 2
  • NVR camera 3 then CHANNEL = 4
  • NVR camera 4 then CHANNEL = 8
  • NVR camera N then CHANNEL = 2N-1

I didn’t test things by connecting directly to a camera, but I assume for direct camera access CHANNEL must always be 1. In that scenario what determines which camera will be shown on Reolink app is the UID parameter.

<ALARM_DATE> = The date/time to show the camera stream for. If this date is less than 2 minutes from current time, then the Reolink app will show the live view for the camera, otherwise Reolink app opens the camera in playback mode with the correct date/time indicated by this parameter.

This parameter must be in ISO-8601 format. To do that, in my Home Assistant automations, I use {{ now().isoformat() }}

Here’s a simple example on how to send a notification to Home Assistant App that, when clicked, opens Reolink app with a specific camera selected. For this example assume that:

  • We’re using an NVR with UID=998877AABBCC and NAME=MyNvr
  • We want to show channel 8 of the NVR
service: notify.mobile_app_<your_device_id_here>
data:
  message: This message will open Camera 8 on Reolink app
  data:
    priority: high
    ttl: 0
    clickAction: >-
 intent://scan/#Intent;scheme=reolink;package=com.mcu.reolink;action=android.intent.action.VIEW;S.UID=998877AABBCC;S.DEVNAME=MyNvr;S.ALMTYPE=PEOPLE;S.ALMCHN=256;S.ALMTIME={{now().isoformat()}};S.ALMNAME=Detection;end
19 Likes