Profiles
Profiles define when analysis happens. They link camera triggers (motion, I/O, analytics) to skills (AI configurations), with optional scheduling and filtering. When a profile is assigned to a group, it creates a Detection.
Breadcrumb: AI Configuration > Detections > Profiles
Profiles are accessed from the Profiles page, which is a child of the Detections page in the navigation hierarchy.
What is a Profile?
A profile answers the question: "When this trigger fires, what skill should analyze it?"

When a profile is assigned to a group, all cameras in that group inherit it. This profile-in-group combination is what appears as a Detection in the Detections page.
Profile Components
Basic Information
| Field | Description | Example |
|---|---|---|
| Name | Descriptive identifier | "Motion-Triggered Security Check" |
| Skill ID | Which skill to use | "weapon-detection-v2" |
| Active | Whether profile is enabled | true/false |
| View Area | Camera stream to capture | 1-8 |
Trigger Configuration
The trigger defines what camera event starts analysis.
{
"type": "Object", // Trigger type
"port": 1, // For DigitalInput type
"profile": "person", // For ObjectAnalytics scenarios
"id": "scenario-1" // Specific scenario ID
}
Trigger Types
| Type | Description | Best For |
|---|---|---|
| Motion | Camera's built-in motion detection | General-purpose, always available |
| Object | AXIS Object Analytics detection | Pre-filtered events (person, vehicle) |
| Perimeter | AOAS line crossing/zone scenarios | Restricted area monitoring |
| PerimeterDefender | Advanced perimeter scenarios | Complex boundary detection |
| DigitalInput | Physical I/O port | Door sensors, PIR, alarms |
| Manual | Virtual input trigger | VMS-initiated, API-triggered |
| Schedule | Time-based polling | Active monitoring without events |
Trigger Type Details
Motion Trigger
Type: Motion
Port: (not used)
Profile: (not used)
- Simplest trigger, available on all cameras
- Higher false positive rate
- Combine with pre-filter in skill
Object Analytics Trigger
Type: Object
Profile: person // or "vehicle", "face", etc.
- Requires AXIS Object Analytics (AOAS)
- Pre-filters at camera edge
- Lower false positive rate
- Reduces cloud analysis costs
Digital Input Trigger
Type: DigitalInput
Port: 1 // I/O port number (1-8)
- Physical sensors connected to camera
- Door contacts, PIR sensors
- External alarm systems
- Most reliable trigger type
Manual Trigger
Type: Manual
Port: 6 // Virtual input port
- Triggered by VMS or API
- Operator-initiated analysis
- Integration with third-party systems
- Requires Virtual Input activation
Schedule Trigger (Active Monitoring)
Type: Schedule
(Uses ActiveMonitoring settings)
- No camera event required
- Polls at configured interval
- Enables temporal analysis (loitering, crowd forming)
View Area Configuration
Cameras with multiple streams can capture from specific view areas:
| View Area | Typical Use |
|---|---|
| 1 | Default full view |
| 2-4 | Quad view channels |
| 5-8 | PTZ presets or corridors |
For cameras with multiple lenses (panoramic, multi-sensor), use different profiles for each view area with appropriate skills.
Schedule Configuration
Control when the profile is active:
| Option | Description |
|---|---|
| 24x7 | Always active |
| Camera Schedule | Use schedules defined on camera |
| Custom | Specific time windows |
Example Schedule:
Active: Weekdays 6 PM - 6 AM, Weekends 24 hours
Purpose: After-hours security
Active Monitoring
For temporal analysis, configure Active Monitoring:
| Setting | Description | Range |
|---|---|---|
| Enabled | Turn on continuous capture | true/false |
| Interval (ms) | Time between captures | 1000-60000 |
| Max Duration (sec) | Total monitoring window | 30-600 |
| Batch Size | Frames sent together | 1-10 |
| Max Images | Total images to capture | 5-50 |
| Resolution | Image quality | TINY to ULTRA |
Example - Loitering Detection:
Interval: 5000 (every 5 seconds)
Max Duration: 60 (1 minute total)
Max Images: 12
Resolution: BALANCED
TTS Configuration (Per-Profile)
Override the skill's default TTS settings:
| Setting | Description |
|---|---|
| Model | TTS model override |
| Voice | Voice selection override |
| Style Prompt | Tone/style override |
| Confirmation Threshold | Confidence required for TTS |
| Talkdown Buffer (ms) | Minimum time between announcements |
Profile Relationship to Skills and Groups

Key Relationships:
- One profile references one skill
- Multiple profiles can use the same skill
- Profiles and skills are stored in groups
- All devices in a group inherit all profiles (creating Detections)
Profiles User Interface
Profiles are displayed in a table interface with full editing capabilities.
Table View
The Profiles page shows all profiles in a sortable table:
| Column | Description |
|---|---|
| Name | Profile name (click to edit) |
| Skill | Linked skill name |
| Trigger | Trigger type (Motion, Object, etc.) |
| Schedule | Active schedule summary |
| Status | Active/Inactive indicator |
Profile Editor
Click any profile to open the editor with tabs:
- Basic - Name, skill selection, view area
- Trigger - Trigger type and configuration
- Schedule - When the profile is active
- Active Monitoring - Temporal analysis settings
- TTS - Voice response overrides
Navigation
- From Profiles Page: Click a profile to open the editor
- From Detections Page: Profiles are shown inline, click to expand
- Creating New: Click "+ Create Profile" and select a skill
When you assign a profile to a group, it becomes visible as a Detection in the Detections page. The Detection is the combination of the profile and the group it belongs to.
Creating a Profile
Step 1: Choose the Trigger Type
Consider your use case:
| Use Case | Recommended Trigger |
|---|---|
| General security | Object Analytics (person) |
| Door monitoring | Digital Input + Motion |
| Perimeter security | Perimeter scenarios |
| Operator verification | Manual trigger |
| Continuous monitoring | Schedule (Active Monitoring) |
Step 2: Select the Skill
Choose from skills in the same group, or create a new skill first.
Step 3: Configure View Area
For multi-stream cameras, select the appropriate view area.
Step 4: Set Schedule (Optional)
Limit when the profile is active to reduce false positives and costs.
Step 5: Configure Active Monitoring (Optional)
For temporal analysis needs (loitering, crowd detection).
Step 6: Test and Verify
- Trigger the event manually
- Check Sessions for analysis results
- Verify ONVIF events in VMS
- Adjust configuration as needed
Profile Best Practices
Match Triggers to Use Cases
| Scenario | Trigger | Reason |
|---|---|---|
| Parking lot | Object (vehicle/person) | Pre-filtered, fewer false alarms |
| Reception desk | Motion | Capture all visitors |
| Emergency exit | Digital Input | Reliable, immediate |
| Loading dock | Perimeter (zone) | Specific area monitoring |
Use Multiple Profiles
Create separate profiles for different scenarios on the same camera:
Camera: Building Entrance
├── Profile: Daytime Access Control
│ └── Trigger: Motion, Schedule: 8am-6pm
│ └── Skill: Visitor Identification
├── Profile: After-Hours Intrusion
│ └── Trigger: Motion, Schedule: 6pm-8am
│ └── Skill: Intrusion Detection
└── Profile: Door Alarm
└── Trigger: Digital Input Port 1
└── Skill: Emergency Response
Optimize for Cost
Reduce unnecessary analysis:
- Use Object Analytics triggers when available
- Apply schedules to limit active hours
- Use pre-filter in skills for high-traffic areas
- Consider resolution vs analysis needs
Naming Conventions
Good profile names include:
- Trigger type
- Purpose
- Schedule (if limited)
Examples:
- "Motion - Intrusion - After Hours"
- "Door Contact - Emergency Exit"
- "AOAS Person - Lobby Access"
Multiple Profiles on Same Trigger
When multiple profiles match the same trigger event:

Behavior:
- All matching profiles execute
- Each generates separate analysis
- ONVIF events from all skills are emitted
- TTS executes in priority order (highest priority first)
Common Profile Issues
Profile Not Triggering
- Check Active is set to true
- Verify trigger type matches camera event
- Confirm schedule allows current time
- Check camera is online in group
Wrong Skill Executing
- Verify skill reference is correct
- Check for multiple profiles matching the trigger
- Review profile priorities if multiple matches
ONVIF Events Not Appearing
- Ensure objects in skill are enabled
- Check objects are set to Stateful
- Verify VMS is subscribed to camera events
Related Topics
- Detections Overview - How profiles create detections
- Skills - Configure what to detect
- Event Flow - Understand the analysis pipeline
- Groups - Organize profiles and devices
- Creating Your First Profile - Step-by-step tutorial