SmartNotifier is the alarm response and escalation layer for Genetec Security Center and Milestone XProtect. It routes every alarm to the right person, escalates when nobody acknowledges, and keeps the record.
An illustration of one alarm's record. Timeouts, escalation levels and recipient groups are configured per site. The first acknowledgement is final — a second responder cannot overwrite the first one's record.
Every VMS raises alarms. Almost none of them make sure an alarm is handled.
Alarms surface inside the client application, on a console somebody has to be sitting at. Native notification is email-first and per-server: it can't route by zone, by severity, or by who is actually on shift tonight. When nobody responds, nothing happens — the alarm just sits there until somebody opens the client the next morning.
And there is no record. Nobody can prove an alarm was seen, by whom, or when.
Alarms are visible only to an operator at the console.
Native notification can't route by zone, severity, or time of day.
Nothing happens when nobody responds.
No acknowledgement trail, so no accountability.
A plugin runs in-process inside Genetec Security Center or Milestone XProtect. It picks up every alarm, resolves the camera and its zone, and grabs a snapshot at the moment of the event. It reads events only — it never modifies your recording or alarm configuration.
Priority-ordered rules decide who hears about it. Match on alarm name, severity, zone, camera, and time-of-day window in the site's own timezone. Night shift and day shift can have entirely different recipients. A cooldown window per rule keeps one faulty camera from flooding everyone.
The alert reaches the responder on WhatsApp, Telegram, Microsoft Teams, Slack, PagerDuty or email — with the snapshot, the clip, the camera, the zone, the severity and the local time. No app to install. No VMS client on their phone.
The responder acknowledges from the message itself. If nobody acknowledges inside the timeout, it escalates to the next level, then the next, until someone does. Every delivery, every acknowledgement, every escalation is recorded against the alarm.
The timeline at the top of this page is one alarm's full record. Here is the mechanism behind it.
When an alarm is ingested, an escalation check is scheduled for the acknowledgement timeout. If the alarm was acknowledged or dismissed by the time it runs, the ladder stops. If not, it escalates one level, notifies the escalation groups for that level, and schedules the next check. Past the maximum level, the alarm is marked expired and the record shows that nobody ever responded.
Escalation groups are separate from first-response groups, so your security manager isn't paged on every routine alarm — only on the ones nobody handled.
The first acknowledgement is final. A second responder arriving late cannot overwrite the first responder's record, and the system returns a conflict rather than silently rewriting history.
Workspace SDK plugin, Security Center 5.10. Subscribes to alarm events, resolves the source camera and its parent area for zone naming, captures a 1280×720 snapshot. Runs inside Security Center, deployed as a standard .gapp plugin.
Event Server plugin built on the MIP SDK. Registers for alarm indications and processes initial events only, so alarm state changes never produce duplicate alerts. Snapshots come from an image connection against the camera.
ACK to acknowledge.SmartNotifier runs entirely inside your network — as a Windows service on your server, or as containers on your Docker host. Alarm data and snapshots go to your database and your storage. We operate no cloud that touches your footage, and we cannot see your video.
The only outbound traffic is the notification itself, to the messaging provider you have chosen.
We install it, configure your rules with you, and you see exactly what your team sees. No cost during the pilot. If it isn't useful, we uninstall it cleanly.