Documentation

Set up Watch

Documentation

Let the calendar switch camera missions

Schedule-aware monitoring

Watch the right thing during each booking window.

Sentinel links each camera to a physical space, then turns your booking schedule into AI monitoring missions. Configure it once and let each time window switch automatically.

1

Configure cameras

Add the RTSP URL and a stable spaceUuid for each camera.

2

Match the space ID

Calendar uses the same space_uuid to find the camera.

3

Import bookings

Upload JSON in the app's Calendar page and missions switch by time.

Important: Your downloadable camera.json and calendar JSON are separate files. The first connects cameras; the second tells them what to do and when.

You do not need Trainge

In the App’s Calendar page, select New booking to set a space, start/end time, and mission directly. This is the fastest path for general customers. Google Calendar support will begin with universal .ics import/subscription; direct Google OAuth sync comes later if two-way sync is needed.

Step 1: Prepare camera JSON

The simple camera JSON contains RTSP URLs only. To use calendar switching, add a stable spaceUuid. The missionId is the camera's normal mission when there is no active booking.

{
  "cameras": [
    {
      "name": "Studio A",
      "rtspUrl": "rtsp://192.168.1.21:554/stream1",
      "spaceUuid": "room-studio-a",
      "missionId": "person_count"
    }
  ]
}

Step 2: Prepare calendar JSON

The calendar's space_uuid must exactly match the camera's spaceUuid. Choose preset_id from Sentinel's mission library, or provide a custom prompt.

{
  "events": [
    {
      "id": "booking-001",
      "space_uuid": "room-studio-a",
      "start": "2026-09-28T21:00:00+08:00",
      "end": "2026-09-28T22:00:00+08:00",
      "title": "Private booking",
      "preset_id": "elder_fall_detect"
    }
  ]
}

The formal API / Trainge format

New direct integrations use sentinel.booking.v1. Raw Trainge JSON remains supported, while your own API, MCP, and future connectors all normalize to this one contract.

{
  "schema": "sentinel.booking.v1",
  "events": [{ "id": "booking-001", "space_uuid": "room-studio-a",
    "start": "2026-09-28T21:00:00+08:00", "end": "2026-09-28T22:00:00+08:00",
    "title": "Private booking", "preset_id": "elder_fall_detect" }]
}
What happens at runtime
Normal: person_count21:00–22:00: elder_fall_detectEnd: restore normal mission

Which cameras does one booking affect?

Sentinel currently switches missions by space: multiple cameras sharing the same spaceUuid switch together, while different spaces can use different missions. Per-camera rules within one space would require a future per-camera calendar extension.

Next
Alerts & incident database