Flags
Flags are typed point markers on the map. They’re the fastest way to tag a location — a casualty, a point of interest, an AI-detected person, a photo taken from the drone. Each flag has a name, a type (which controls its colour and icon), an optional message, a priority, and optional media attachments.
The 13 flag types
Defined in the flag panel as FLAG_META — each type has a specific colour and
default icon.
Status codes (radio-style)
| Type | Colour | Meaning |
|---|---|---|
| CODE_RED | #ff4d4d (red) | Emergency — immediate attention |
| CODE_GREEN | #39d98a (green) | All clear |
| CODE_BLUE | #32c5ff (blue) | Informational |
| CODE_ORANGE | #ff9f43 (orange) | Warning |
| CODE_GRAY | #8892a6 (gray) | Neutral / low-signal |
| CODE_PINK | #ff6eb4 (pink) | Custom agency-specific signal |
| CODE_BLACK | #c0cad8 (light gray) | Casualty / fatality |
Contextual markers
| Type | Colour | Meaning |
|---|---|---|
| poi | #a78bfa (violet) | Generic point of interest |
| hazard | #ff9f43 (orange) | Danger — mirrors CODE_ORANGE colour |
| casualty | #ff4d4d (red) | Casualty marker (distinct from CODE_BLACK) |
| custom | #8892a6 (gray) | Operator-defined tag |
Auto-generated
| Type | Colour | Meaning |
|---|---|---|
| DRONE_PHOTO | #32c5ff (blue) | Photo captured by a drone — auto-dropped when a drone triggers a photo |
| PERSON_DETECTED | #ff9f43 (orange) | Auto-dropped by AI detection when a person is matched in a stream |
Both auto-types are created by the AI detection pipeline — you can also create them manually if you want to simulate one for training.
Three ways to drop a flag
1. Toolbar button
Click Place Flag in the map tile toolbar. The cursor enters flag-placement mode. The next click on the map drops a flag and opens the flag panel with the coordinate pre-filled. Pick a type, add a name + message, click Save.
2. Right-click context menu
Right-click anywhere on the map → Place Flag. Same flow as the toolbar button, but the flag lands exactly at the right-click point without a second click.
3. Voice command
While voice commands are enabled in the settings drawer, say any of these phrases during a PTT burst:
- “drop flag”
- “mark location”
- “drop marker”
- “mark this”
- “flag this”
- “person spotted” (type defaults to PERSON_DETECTED)
- “animal spotted”
- “vehicle spotted”
The flag lands at the last known position of the speaker (resolved from their peer’s mapped location). See Voice commands for the full phrase list.
The flag panel
When you drop a flag or click an existing flag, the flag panel opens on the right. Fields:
- Name — required, short label shown next to the pin.
- Type — dropdown of the 13 types.
- Message — longer description, markdown not supported.
- Priority — low / medium / high. Affects pin rendering (higher priority gets a pulsing outline).
- Media — upload up to 10 photos / videos. Files land in Firebase Storage; the S3 key is persisted on the flag doc. Accepted: JPEG, PNG, MP4, WEBM.
- Location — lat/lng, copiable with one click.
- Author + timestamp — who placed it, when. Read-only.
Editing
- Author and commander / admins can edit any flag.
- Non-authors can see the flag and its attachments read-only.
- Editing opens the same panel with existing values pre-filled.
Focus + fly to
- Focus in the flag panel — pans the map to that flag.
- Fly to (in the drone-stream tile or the fleet tile) — commands the selected drone to fly to the flag’s position at its current altitude. Respects geofence and no-fly polygons.
Attachments
Media attachments are uploaded in the browser directly to Firebase Storage, not proxied through argus-api. The S3 key is then written to the flag doc. Uploads are resumable up to file-size limits (50 MB per photo, 500 MB per video).
Videos can be played inline in the flag panel. Photos open in a lightbox gallery.
Deletion
Only the author or a commander/admin can delete a flag. Deletion is hard — there’s no soft-delete; the doc is removed. Attached media stays in storage for the mission’s retention window.
Auto-flag from AI detection
When an AI-detection event (YOLO, DJI SEI) matches one of the mission’s watchlist classes, the system can auto-drop a flag at the detection’s ground projection. Types for auto-flags:
- Person → PERSON_DETECTED
- Photo-trigger → DRONE_PHOTO
- Any custom class → custom (with the class name in the message)
Auto-flags carry a small “AUTO” badge on the pin so you can distinguish them from operator-placed flags.
Permissions summary
| Action | Author | Commander | Admin | Team member |
|---|---|---|---|---|
| Create | yes | yes | yes | yes |
| Edit own | yes | yes | yes | yes |
| Edit others’ | — | yes | yes | — |
| Delete own | yes | yes | yes | yes |
| Delete others’ | — | yes | yes | — |
| View | yes | yes | yes | yes |
Related
- Flags tile — the list view of flags, complement to the map markers.
- Polygons — the area-based sibling of flags.
- Voice commands — speech-based flag drop.
- Copilot alerts — when an alert’s source location is set, the master-caution panel entry lets you drop a flag from the alert.