Skip to content

VOD Watching

VOD Watching alerts notify you when someone plays a recording or DVR library item. Message fields come from the metadata available in your DVR library.

  1. Open Settings > Alerts > VOD Watching and expand the card.
  2. Choose Global or a DVR, then turn VOD Watching on.
  3. Choose the message fields and artwork setting, then select Save.
  4. Allow the destinations for that DVR’s VOD alerts in Settings > Routing.

Fresh installs use Important Only, which leaves routine playback notifications off.

ChannelWatch monitors the Channels DVR activity stream for activities.set events whose name matches the file-based session pattern (6-file-* or 7-file-*). These events carry a "Watching ... at <timestamp>" value that identifies the content being played and the playback position.

A notification fires when:

  • A new playback session is detected, or
  • A later playback event arrives after the current session’s notification cooldown has elapsed

Repeated playback events inside the cooldown are suppressed. A long session can notify again after that cooldown; it is not limited to one notification for the entire movie.

Expanded ChannelWatch VOD Watching settings with global and per-DVR scope, enable switch and title, progress, artwork and device notification fields
VOD Watching message optionsKeep the content, progress, and device fields you want. Artwork still depends on DVR metadata and destination safety checks. Captured from ChannelWatch v1.6.0 with safe demo data.View full-size screenshot

Configure these in the web UI under Settings > Alerts > VOD Watching.

Option Config key Description
Show Title vod_title Include the content title (movie name or TV show name) in the notification.
Show Episode Title vod_episode_title For TV episodes, include the episode title alongside the show name.
Show Summary vod_summary Include the content synopsis or description pulled from DVR library metadata.
Show Content Image vod_image Attach the content thumbnail or poster art to the notification.
Show Duration vod_duration Show playback progress as current position / total duration (for example 58m 46s / 1h 42m 11s).
Show Progress vod_progress Include the current playback timestamp used to build the progress line.
Show Rating vod_rating Include the content rating (for example R or TV-14).
Show Genres vod_genres Include the genre list (for example Action, Thriller).
Show Cast vod_cast Include the top three cast members.
Show Device Name vod_device_name Include the name of the device or client that started playback.
Show Device IP vod_device_ip Include the IP address of the device.

All options are enabled by default. Disable any you don’t need to keep notifications concise.

With all options enabled, a VOD Watching alert looks like this:

Title: 🎬 Channels DVR - Watching DVR Content
Crank: High Voltage (2009)
Duration: 58m 46s / 1h 42m 11s
Device Name: Living Room
Device IP: 192.168.1.100
Chev Chelios (Jason Statham) seeks revenge after someone steals his nearly indestructible heart.
Rating: R · Genres: Action, Thriller
Cast: Jason Statham, Amy Smart, Dwight Yoakam

This is a synthetic text example. The content title and release year are the first body line. For TV episodes, the episode title is appended after a dash. Any disabled or unavailable option is omitted. Use Notification Templates to change the wording.

ChannelWatch tracks each viewing session by a combination of the file ID and a session identifier derived from the event name. Internally, that becomes a session key like vod{file_id}-{session_identifier}. When a session is active, subsequent playback events for the same file update the stored timestamp but do not trigger additional notifications until vod_alert_cooldown has elapsed.

The default vod_alert_cooldown is 300 seconds. In v1.6.0, an existing session inside that cooldown is skipped before the later progress-change check, so seeking through the video does not bypass the cooldown. Treat vod_significant_threshold as an advanced setting, not a guarantee of an immediate seek notification.

Events that only say Streaming without a timestamp are tracked as in-progress state, but they do not notify until a later event includes at <timestamp>. When a session ends (the activity event value becomes empty), ChannelWatch removes the session from its tracking state. Starting the same content again later creates a fresh session and sends a new notification.

All content metadata (title, summary, cast, genres, rating, duration, artwork) is fetched from your Channels DVR server’s library API. ChannelWatch caches this data at startup and refreshes it periodically. If metadata is unavailable for a particular file, the corresponding fields are omitted from the notification rather than showing placeholders.

Device identification. The device name is extracted from the "Watching ... from <device>" portion of the event value. If the device name is not present, ChannelWatch falls back to the IP address. If neither is available, the session is still tracked but the device fields show Unknown Device / Unknown IP.

VOD switch mid-session. If a device switches from one piece of content to another without a clean session end event, ChannelWatch detects the file ID change and closes the old session automatically before opening a new one.

Recurring sessions. Watching the same content multiple times creates separate sessions each time, so you receive a notification for each new viewing. The cooldown only suppresses repeated notifications within a single continuous session.

TV episodes. The first body line includes the show name and episode title when available. The default notification title remains 🎬 Channels DVR - Watching DVR Content. Season and episode numbers are available in custom templates.

ChannelWatch v1.6.0 has a Diagnostics test-name limitation. Use the command-line fallback below for a sample VOD alert. It does not simulate a real playback session or exercise cooldown timing.

The test sends a real message. Confirm it in the receiving app and the Delivery Log.

From the command line:

Terminal window
docker exec -it channelwatch python -m core.main --test-alert ALERT_VOD_WATCHING