Skip to content

Documentation: Milestone XProtect Dispatch Alarm Node

Overview

The Milestone XProtect Dispatch Alarm Node is an integration action node that creates and sends an alarm to the Milestone XProtect VMS (Video Management System). It allows events detected in Netsocs Synergy to be reflected as alarms within the Milestone video surveillance platform, integrating both systems into a unified workflow.

In installations where Milestone XProtect is the central video management system, this node allows the automation logic of Netsocs (for example, IoT sensor correlation) to generate actionable alarms directly in the Milestone operators' console.


When to use this node?

Use this node when you need to:

  • Generate an alarm in Milestone XProtect from an event detected in Netsocs (IoT sensor, analytics, event correlation).
  • Unify alarm management in the Milestone VMS when it is the main system of the control center.
  • Associate the alarm with specific Milestone video channels (cameras) as alarm sources.
  • Classify and assign the alarm (type, class, state, responsible party) for management in Milestone.

Node Configuration

The node has two configuration tabs at the top: Form and JSON Editor. The form is organized into three selectable sections: Alarm Details, Classification, and Workflow.

Empty configuration of the Milestone Dispatch Alarm node (Alarm Details)

Section: Alarm Details

1. Alarm Sources

Click Select alarm sources to open the selector and choose the Milestone XProtect video channels that will be the alarm sources (the associated cameras).

2. Alarm Name

The identifying name of the alarm (for example, Intrusion detected - North Perimeter).

3. Message

A detailed description of the alarm (up to 500 characters).

4. Timestamp *Optional

The date/time of the alarm. Defaults to now. Accepts ISO 8601 format or relative time (for example, now, -5m, -1h).

Configured form of the Milestone Dispatch Alarm node

Section: Classification

  • Alarm Type: Category of the alarm (for example, Motion Detection, Intrusion, Fire).
  • Alarm Class: Severity/class (for example, Critical, Warning, Info).

Section: Workflow

  • Alarm State: Initial state of the alarm in Milestone. Options: Any (0), New (1), In progress (4), On hold (9), Closed (11).
  • Assigned To: User (name or ID) responsible for handling the alarm.

Workflow section of the Milestone Dispatch Alarm node


JSON Editor View

In the JSON Editor tab you can view and directly edit all alarm parameters:

JSON Editor view of the Milestone Dispatch Alarm node


JSON Structure (Input Parameters)

Below is the JSON structure generated when configuring the node:

{
  "object_ids": [],
  "name": "Intrusion detected - North Perimeter",
  "message": "Motion sensor activated outside business hours in the north perimeter. Check the associated camera.",
  "type": "",
  "class": "",
  "timestamp": "now",
  "state": 1,
  "assigned_to": ""
}

JSON Fields

Field Type Description
object_ids array (string) IDs of the Milestone video channels that are the alarm sources.
name string Name of the alarm.
message string Detailed message/description (max. 500 characters).
type string Alarm type (e.g. Intrusion, Fire).
class string Class/severity (e.g. Critical, Warning).
timestamp string Timestamp. now by default; ISO 8601 or relative time.
state number Initial state: 0 (Any), 1 (New), 4 (In progress), 9 (On hold), 11 (Closed).
assigned_to string User (name or ID) assigned to the alarm.

Output: Where the node's data comes from

When the action executes successfully, the alarm is registered in Milestone XProtect and the node finishes marked as successful (green border). The alarm appears in the Milestone alarm management console for handling.

NOTE: This node requires the Milestone XProtect VMS integration to be configured and its driver connected.


Usage Examples

Example 1: Create an alarm in Milestone for a perimeter intrusion

Use case: A Netsocs perimeter motion sensor detects activity outside of business hours; an alarm is dispatched to Milestone associated with the camera covering the area, so that the VMS operator can handle it.

  • Alarm Sources: Milestone video channel of the perimeter camera.
  • Alarm Name: Intrusion detected - North Perimeter
  • Type: Intrusion | Class: Critical | State: New

Configuration JSON:

{
  "object_ids": ["<milestone_video_channel_id>"],
  "name": "Intrusion detected - North Perimeter",
  "message": "Motion sensor activated outside business hours.",
  "type": "Intrusion",
  "class": "Critical",
  "timestamp": "now",
  "state": 1
}


Example 2: Fire alarm assigned to an operator

Use case: Upon a signal from a fire detector, a critical alarm is created in Milestone already assigned to the on-duty operator.

  • Type: Fire | Class: Critical | Assigned To: On-duty operator.

Validation and Errors

Condition Common cause / fix
The alarm does not appear in Milestone Verify that the Milestone XProtect integration/driver is configured and connected.
Invalid sources Make sure to select video channels that belong to the Milestone XProtect domain.
State not accepted Use one of the valid state values (0, 1, 4, 9, 11).

Best Practices

  • Associate the correct camera: Select as the source the Milestone video channel that actually covers the zone of the event.
  • Classify consistently: Define conventions for type and class so that alarms in Milestone are filterable and prioritizable.
  • Assign responsible parties: Use assigned_to to direct the alarm to the appropriate operator and speed up its handling.
  • Name the node descriptively: Change the node's name on the canvas (e.g. "Milestone alarm - perimeter") to identify it in the flow.