Milestone XProtect Integration
This guide explains how to configure Milestone XProtect to receive and respond to Anava detection events using ONVIF action rules.
Prerequisites
- Milestone XProtect installed (any edition: Essential+, Express+, Professional+, Expert, Corporate)
- Cameras added to XProtect with Anava ACAP installed
- Anava skills and profiles configured
Understanding Anava Events in XProtect
When Anava detects something, it emits ONVIF events that XProtect receives as "Analytics Events".

Event Format
Anava events appear in XProtect as:
| Field | Value | Example |
|---|---|---|
| Source | Camera name | "Warehouse-Cam-01" |
| Type | Anava object name | "Person", "Weapon", "Vehicle" |
| State | Boolean | True (detected) / False (cleared) |
Step 1: Add Camera to XProtect
If not already added:
- Open XProtect Management Client
- Navigate to Servers → Recording Servers
- Right-click → Add Hardware
- Use the hardware detection wizard
- Select your Axis cameras
Step 2: Enable Analytics Events
XProtect must be configured to receive analytics events:
- In Management Client, expand the camera
- Go to Events → Analytics Events
- Enable Anava events (they appear after first detection)
Analytics events only appear after Anava has sent at least one event. Trigger a test detection first if events aren't visible.
Step 3: Create Action Rules
Action rules define what XProtect does when it receives Anava events.
Example: Record on Person Detection
- Go to Rules and Events → Rules
- Click Add Rule
- Configure:
Name: Anava - Person Detected - Start Recording
Conditions:
- Type:
Analytics Events - Device: Select camera(s)
- Event:
Person(Anava object name) - State:
Is True
Actions:
- Start recording on: [Camera]
- Duration: Until event stops (or fixed duration)
Stop Criteria:
- Same event with state
Is False
Example: Alarm on Weapon Detection
- Add new rule
- Configure:
Name: Anava - Weapon Detected - Alarm
Conditions:
- Analytics Event:
Weapon - State:
Is True
Actions:
- Trigger alarm
- Send notification to operators
- Start recording (high quality)
Example: After-Hours Alert
- Add new rule with time schedule
- Configure:
Name: Anava - After Hours Person
Conditions:
- Analytics Event:
Person - State:
Is True - Time: Outside business hours (configure schedule)
Actions:
- Trigger alarm
- Send email to security
- Activate PTZ preset (if applicable)
Step 4: Configure Notifications
Email Notifications
- Go to Options → Notification Profiles
- Create profile with SMTP settings
- Reference profile in action rules
Smart Client Notifications
Pop-up alerts for operators:
- In action rule, add action: Send notification
- Configure message: "Anava Detection: [Object] at [Camera]"
Step 5: Test the Integration
- Generate a detection (walk in front of camera)
- Verify in XProtect:
- Event appears in Alarm Manager
- Recording starts (if configured)
- Notifications sent (if configured)
Advanced Configuration
Custom Event Mapping
Map Anava questions to XProtect events:
| Anava Question | XProtect Event | Action |
|---|---|---|
| is_authorized = false | Unauthorized Person | High-priority alarm |
| weapon = true | Weapon Detected | Emergency response |
| crowd_count > 10 | Crowd Alert | Notify operations |
Multi-Camera Rules
Create rules that trigger across multiple cameras:
- Use camera groups in conditions
- Apply consistent naming for Anava objects
- Create tiered response levels
Integration with XProtect Transact
For retail environments:
- Link Anava person detection to Transact timeline
- Correlate POS events with Anava detections
- Create combined rules for shrinkage detection
Troubleshooting
Events Not Appearing
-
Check Anava is sending events
- View Sessions in Anava dashboard
- Verify objects are configured as "stateful"
-
Check camera connection
- Camera should be "Running" in XProtect
- Check network connectivity
-
Refresh analytics events
- Sometimes requires Management Client restart
- Check "Analytics Events" node under camera
Rules Not Triggering
-
Verify rule is enabled
- Check rule status in Rules list
-
Check conditions
- Event name must exactly match Anava object name
- State condition (Is True) is required
-
Test with simpler rule
- Create basic rule with single condition
- Gradually add complexity
Recording Issues
-
Check recording server storage
- Ensure adequate disk space
-
Verify recording settings
- Camera must have recording enabled
- Check quality settings for event-triggered recording
Best Practices
Rule Organization
- Use descriptive rule names including "Anava"
- Group rules by purpose (Security, Safety, Operations)
- Document rule logic in rule descriptions
Performance
- Limit concurrent high-quality recordings
- Use appropriate rule priorities
- Avoid overlapping rule conditions
Maintenance
- Review rules quarterly
- Test rules after Anava updates
- Document custom configurations