Public Safety AI Assistant
SPARK AI Public Safety Assistant
Southern Software
| Type | Title | Location | Date | Case# |
|---|
SPARK AI Public Safety Assistant is an AI-first law enforcement platform designed for public safety users. Unlike traditional RMS or CAD add-ons, the AI assistant is the central hub — permanently visible on the right half of the screen — while all other modules (Calendar, Reports, Notes, Conversations, Search) occupy the left half.
Every piece of work is linked to a Case# (RMS case number) and/or CFS# (CAD Call for Service number). These identifiers are the universal tracking keys — every report, note, event, and AI conversation can be found and cross-referenced by them.
All AI conversations are stored as legal records, linked to incident numbers, summarized by AI, and exportable as court-ready transcripts.
The Case#, CFS#, and Key Event bar sits permanently at the top of the AI chat panel. These three fields tag all AI interactions with incident context.
When these fields are filled in, the AI automatically:
Opening a Report or Calendar Event will automatically sync its Case#/CFS# into the bar.
The AI assistant runs continuously on the right panel. It maintains full conversation history within a session and understands your current case context.
What you can ask the AI:Use the quick-prompt buttons below the case bar for one-click access to the most common queries. Hover to see the full prompt text.
Voice Input:Hold the 🎤 button to dictate your question or report details hands-free. Voice input is supported in Chrome and Edge. Speak naturally — punctuation like "comma" and "period" are recognized. Enable Auto-send after voice stops in AI Settings to have the message submit automatically when you release the button (adjustable delay).
The AI panel has two rows of shortcut buttons that let you act faster without typing. The Quick Prompt bar runs across the top of the chat area (below the Case/CFS bar) and fires pre-built prompts with one click. The AI Toolbar sits below the message input box and provides voice, transcription, and record-linking actions.
Quick Prompt Bar — Top of AI PanelClick any button to instantly send that prompt to the AI, pre-loaded with your current Case# and CFS# context.
| Button | What It Does | Example Use |
|---|---|---|
| Shift Briefing | Asks the AI to summarize outstanding tasks, recent activity, and anything needing follow-up before your shift ends. | At the start of a shift, enter your Case# and click Shift Briefing — the AI lists open items and flags anything time-sensitive. |
| Draft Narrative | Generates a court-ready incident narrative from the facts you've shared in the conversation. | Type "Suspect: John Doe, 35M. Location: 123 Main St. Incident: DV, minor injuries, arrested under §12.1(a)." then click Draft Narrative — the AI returns a polished paragraph-form narrative. |
| Key Facts | Lists what must be documented for this incident type — victim info, injuries, evidence collected, Miranda advisement, witness IDs, etc. | After describing a traffic stop, click Key Facts to get a checklist of every element required for a complete report. |
| Legal Check | Reviews use-of-force, arrest authority, search-and-seizure, or Miranda questions tied to the current context. | "I conducted a pat-down without consent." Click Legal Check — the AI evaluates the legal standard and identifies any documentation gaps. |
| Follow-Up | Lists mandatory notifications (DV advocate, supervisor, CPS, victim services) and recommended next steps for the incident type. | After a domestic violence arrest, click Follow-Up to get the full list of required DV notifications with timeframes. |
| Court Summary | Produces a clean, factual summary of the conversation formatted for court review or subpoena response. | Before testifying, click Court Summary — the AI condenses everything in the chat into a structured, first-person-ready summary. |
| 📅 Schedule | Triggers the AI Smart Actions engine to create a court appearance calendar event for the current case number on next Monday at 9:00 AM. | Enter Case# 2025-4781, click 📅 Schedule — a calendar entry is created automatically without opening the Calendar tab. |
| 📧 Draft Email | Generates a professional agency email summarizing the current case — incident details, user observations, and next steps. You fill in the recipient address. | Click 📧 Draft Email to produce a ready-to-send briefing for a detective, prosecutor, or supervisor — just add their address and review. |
| 🔍 Research | Searches all your saved reports, notes, and calendar events related to the current case and summarizes findings in the chat. | Investigating a repeat offender? Click 🔍 Research with the suspect's Case# — the AI surfaces every linked record and highlights patterns. |
These buttons control how you get content into the AI and how you save the AI's output.
| Button | What It Does | Example Use |
|---|---|---|
| 🎤 Voice (hold) | Hold the button to dictate directly into the message box. Release to stop. Chrome and Edge only. You can also dictate translate commands: hold and say "translate to Spanish: please step out". | Hold 🎤 and dictate "suspect fled northbound on Oak Street, dark hoodie, 5-foot-10" — the text appears in the input ready to send. |
| 🎙️ Transcribe | Opens a file picker for one or more audio/video files. Files of any size are accepted — large BWC MP4s are compressed and chunked automatically in the background. A progress task card tracks each step. When complete, action buttons let you generate a report or summary from the transcript. | Select a 1-hour bodycam MP4 — the card shows "Compressing audio…" then "Chunk 2/5…" then presents action buttons to generate an Incident, Accident, or FI report from the transcript with one click. |
| 💾 Save as Report | Saves the last AI response (plus any structured data) as a formal report record. Hidden when Report Mode is active because saving is then automatic. | After asking the AI to draft a narrative, click 💾 Save as Report — it creates a Draft report in the Reports tab linked to the current Case# and CFS#. |
| 📋 Report Mode | Opens the Report Mode picker. Choose to Start New (creates a new report record immediately) or Continue Existing (select a report from your list). Activates the blue banner and auto-saves every AI response to the report. Identical to the + Report button in the Reports tab. | Start a new Incident Report, tell the AI the facts — each response appends structured data automatically. Return to Reports tab to edit and submit when finished. |
| 📅 Link to Event | Activates Link Mode (yellow banner). Then click any calendar event to link the current conversation to it. The event modal will show the linked conversation. To unlink, open the event and click Unlink. | After court-prep chat for an upcoming appearance, click 📅 Link to Event → click the court event on the calendar — the conversation is permanently attached to that event. |
| 📎 File Attach | Attaches one or more reference files (PDFs, images, documents) to your next AI message. The AI reads the attached content and incorporates it into its response. Up to 5 files. | Attach a scanned witness statement, then ask "Summarize this for my report" — the AI reads the document and returns a concise summary. |
SPARK AI detects certain intents in your message and takes automated action beyond just replying — it creates records, opens the right module, and drops map pins, all without you navigating anywhere.
📅 Auto-Schedule Calendar EventsSpeak or type naturally. The AI understands day-of-week references, military time, and relative dates ("next week", "in 3 days").
| Example phrase | What happens |
|---|---|
| "Schedule court for case 2025-123 next Tuesday at 0900 at Municipal Courthouse" | Creates a Court event on next Tuesday at 9:00 AM with location pre-filled |
| "I have a deposition Monday at 1400 for case 2025-456" | Creates a Court event (deposition recognized as court type) |
| "Add arraignment for case 2025-789 Thursday at 10am" | Creates a Court event (arraignment/hearing recognized) |
| "Schedule Active Shooter Response training Friday at 1pm" | Creates a Training event on Friday |
| "Block my shift Saturday 0600 to 1800" | Creates a Shift event with correct times |
| "Remind me to serve the warrant Monday morning" | Creates a Task event on Monday |
| "Schedule a community meeting at City Hall next Wednesday at 6pm" | Creates a general calendar event with location |
The AI replies with confirmation text and silently creates the calendar event. A green toast confirms success. The event appears immediately in your Calendar tab.
🔁 Recurring EventsCreate a series of repeating calendar events in one command.
The AI generates one calendar entry per interval slot for the full duration. All entries are linked to the active Case#/CFS# and appear in your Calendar tab.
📋 Open Report ModalTell the AI you need to write a report — it switches to the Reports tab and opens the correct report type automatically.
The Reports tab opens and the New Report modal appears with the type pre-selected. Supported types: Incident, Arrest, Field Interview, Use of Force, Supplemental, Accident, Property, Other.
📍 Drop a Map PinAsk the AI to show an address on the map — it geocodes the address and drops a pin automatically.
The Map tab opens and a marker is placed at the geocoded address. Click the marker to see the address label.
📧 Email DraftingAsk the AI to draft professional emails using case context.
An Email Draft modal opens automatically. Edit the To, Subject, and Body, then click Copy or Open in Mail Client.
🔍 Record Research (Database Search via AI)Ask the AI to search your saved reports, notes, and events and return a synthesized answer.
The AI only answers from your actual stored records. Results are attributed to specific reports, notes, or events — no hallucination.
The Directory tab shows all active public safety users in your agency. Use it to quickly find a colleague's badge number, unit, rank, phone, or email.
Searching:Note: Only users who have completed their profile (badge number and rank filled in) appear in directory searches.
The Calendar provides a full monthly view of all public safety user events. Click any day to create a new event on that date.
Event Types:Click 📋 Report Mode → Continue Existing tab → select your report → Continue Selected. The AI continues appending to the same record.
Traditional workflow (without Report Mode):Supervisors see submitted reports in the Admin → Pending tab. They can Approve (report locks) or Reject with notes that appear on the user's report for revision.
Field Notes are quick-capture observations linked to a case. Three input methods are supported:
Add comma-separated tags to notes for filtering: suspect, vehicle, use-of-force, witness, property
Notes are linked to Case# and CFS# for retrieval. When you search or filter by case number, all linked notes appear together. Notes can also link to a specific Calendar Event and Report.
Every AI chat session can be saved as a formal record linked to a Case# and CFS#. This creates a searchable, court-ready log of all AI assistance used during an investigation.
To Save a Conversation:Open the Conversations tab to search and filter saved sessions by Case#, CFS#, date range, or keyword. Click any conversation to open the detail view showing:
Click 📋 Copy for Court to copy a formatted transcript to clipboard including case numbers, date, AI summary, and full dialogue. This can be included in a case file or submitted as documentation of AI-assisted report generation.
The Search tab performs a cross-module full-text search across all your records simultaneously.
What you can search:The Incident Manager (⚙️ Manage button in the top bar) lets you save and switch between the incidents you are actively working on.
How it works:The 🔔 bell icon in the top-right corner of the header enables browser push notifications for SPARK AI Public Safety Assistant.
What notifications tell you:Push notifications require a modern browser (Chrome, Edge, Firefox, or Safari 16.4+). They do not work in Private/Incognito mode.
The Tasks tab is a lightweight work-tracker for follow-up actions linked to cases. Unlike calendar events (which are time-specific), tasks are action items you need to complete.
Task Fields:Toggle the Kanban switch to view tasks as columns (Not Started → In Progress → Blocked/On Hold → Complete). Click any card to edit.
AI Suggested Tasks:After submitting a report, AI automatically suggests 2–3 follow-up tasks based on the report type. A pop-up appears offering to add them all in one click.
✨ Expand with AI:In the task editor, click ✨ Expand with AI to convert a short task description into clear, actionable steps.
The Map tab shows your calendar events plotted on an interactive map. Events with a Location field are geocoded and displayed as markers.
Tip: Always add a Location when creating court appearances, shift assignments, or calls for service — these will then appear on the map for geographic review.
The Case Timeline (in the Search tab) gives a chronological view of ALL workbook activity for a specific case — reports, notes, events, AI conversations, and activity logs — in a single scrollable timeline.
How to use:Color coding: ■ Event ■ Report ■ Note ■ Conversation ■ Activity
Click the ⚙️ Settings button in the header to open the Settings panel. It has three tabs: Profile, Appearance, and AI Settings.
👤 Profile TabUpdate your personal and officer profile information. Changes are saved to the server and shared across all devices.
Choose your Bootstrap theme (Bootswatch) and navigation accent color. See the Theme & Appearance section below for details.
Click the 🎨 Theme button in the top header to open the theme picker. There are three independent layers:
App Theme:Controls colors, backgrounds, and card surfaces across the entire app using CSS variables. Choose from 12 themes:
| Theme | Character |
|---|---|
| Default | Deep navy header, blue accent — the standard SPARK AI look |
| Corporate | Professional dark blue with indigo accents, light grey background |
| Cupcake | Teal header, pink accent, warm cream background — light and friendly |
| Emerald | Forest green header, mint accent, pale green background |
| Nord | Charcoal header, cool slate-blue accent, soft Nordic palette |
| Dark | Near-black header, light blue accent — full dark mode |
| Halloween | Dark background, orange accent — high contrast dark mode |
| Yellow Jacket | Black header, gold accent — dark mode with bold contrast |
| Sunshine | Amber/gold header, orange accent, cream background — bright and warm |
| Auburn | Burnt orange header, navy accent, tan background |
| Tar Heel | Carolina blue header, navy accent, pale blue background |
| Custom | Build your own using the Custom Theme Builder (CSS variable sliders) |
Controls the header bar and tab strip gradient independently of the App Theme. Eight accent options: Navy, Slate, Teal, Indigo, Crimson, Forest, Midnight, Charcoal. This layer stacks on top of the App Theme, so you can mix any combination.
Custom Theme Builder:Selecting Custom reveals the Custom Theme Builder — adjust individual CSS variables (header color, accent color, background, card surface) using color pickers. Your custom settings are saved to browser local storage and persist across sessions. Click Reset Custom to return to the Default theme.
All theme selections are remembered between sessions via browser local storage.
The Private checkbox appears on Notes and Calendar Events. All new items default to Private — uncheck to share with your agency. It controls who can see the record:
| Setting | Who can see it | Indicator |
|---|---|---|
| Private ✓ (default) | Only the public safety user who created it (and agency Admins) | No badge |
| Private unchecked | All public safety users in your agency | 🌐 Shared · 👤 Name |
Agency scoping: All records — private or not — are always scoped to your agency. Public safety users from different agencies can never see your records regardless of the Private setting.
When to share: Uncheck Private when the record is relevant to the whole team — shift briefings, agency-wide events, or reports ready for supervisor review.
Click 🎙️ Transcribe in the chat toolbar to upload one or more audio or video files and convert speech to text using Azure AI Whisper. Transcription runs completely in the background — you can keep working while it processes.
Supported formats & file size:| Button | What it does |
|---|---|
| 📋 I/O | Sends the transcript to the AI to generate a professional Incident/Observation report narrative, then saves it automatically to your Reports list with a link in chat. |
| 🚗 Accident | Generates a Traffic Accident report narrative from the transcript — parties, vehicles, damage, injuries, sequence of events. |
| 👤 Field Interview | Generates an FI report — subject description, contact reason, location, disposition, follow-up actions. |
| 📄 Citation | Generates a Citation/Traffic Stop narrative from the transcript. |
| 💬 Summarize | Produces a concise plain-English summary of the transcript — useful for recorded witness interviews or 911 calls. |
| ✕ Dismiss | Removes the card from chat. The transcript text is still available in the chat history if you need it. |
If you started a report with 📋 Report Mode before uploading, the matching report type is automatically triggered when transcription finishes — no button click needed. The transcript-generated narrative is saved directly to your active report.
Using the transcript in Field Notes:Copy the transcript preview text from the action card and paste it into a new Field Note. Click ✨ Expand with AI in the note editor to convert raw transcript text into a polished observation paragraph.
Multiple files (e.g., multi-camera BWC):Select all files at once — each is transcribed in order and the transcripts are concatenated with file-name headers (--- bodycam_front.mp4 --- / --- bodycam_rear.mp4 ---). The combined transcript is passed to whichever report type you choose.
Report Mode links an AI conversation directly to a formal report record and automatically saves structured data as you talk. It is the recommended way to build any complex report.
Starting Report Mode — two entry points:| Entry Point | How |
|---|---|
| 📋 Report Mode button (chat toolbar) | Opens the report picker. Choose Start New or Continue Existing. Navigates to chat panel automatically after selection. |
| + Report button (Reports tab) | Same picker — both buttons are identical. Opens the report picker whether you start from the chat or from the Reports list. |
Click 📋 Report Mode → Continue Existing tab → select the report from the list → click Continue Selected. The AI picks up where the previous session left off and continues appending to the same report record.
SPARK AI can translate any text to any language and speak the translation aloud using your browser's built-in text-to-speech engine. Useful at scenes with non-English speaking subjects.
How to translate:Type a translate command in the chat input (or speak it using the 🎤 voice button):
| Command format | Example |
|---|---|
translate to [language]: [text] | translate to Spanish: Please step out of the vehicle |
translate this to [language]: [text] | translate this to French: Do you have any weapons? |
translate into [language] - [text] | translate into Portuguese - I need to see your ID |
translate to [language] "[text]" | translate to Mandarin "Are you injured?" |
A separator is required between the language name and the text to translate — use a colon :, dash -, comma, or quotes.
Spanish, French, German, Italian, Portuguese, Russian, Japanese, Chinese (Mandarin & Cantonese), Korean, Arabic, Hindi, Dutch, Polish, Swedish, Norwegian, Danish, Finnish, Turkish, Greek, Hebrew, Thai, Vietnamese, Ukrainian, Czech, Hungarian, Romanian, English
Tips:The Training Center (🎓 Training tab) is the AI reference library. It has four sub-tabs:
| Tab | Contents |
|---|---|
| 🎓 AI Training Guide | Interactive training scenarios and quick prompts. Click any scenario to load it into AI Chat for guided practice. A rotating daily tip appears at the top. |
| 📖 Product Manuals | SPARK AI product documentation uploaded by Southern Software. Activate one to give the AI deep knowledge of specific platform features. |
| 🏢 Agency Manuals | Your agency's standard operating procedures, policy documents, and custom reference materials. Uploaded by your Agency Admin. |
| 🔵 FBI | FBI reference documents — UCR definitions, NIBRS guidelines, crime classification guides. Uploaded by Southern Software. |
Click any document card with a green Active badge. Cards that are ready show "Click to activate as AI context →". When activated:
Only one document can be active at a time. Activating a second document replaces the first.
How the AI Uses the Document:After you ask a question in AI Chat with a document active, the system performs a full-text search of the document's chunks to find the most relevant passages for your question. Those passages are injected as reference material before the AI responds — the AI does not guess or hallucinate; it answers directly from the document text.
When the AI response drew from the document, a blue source attribution bar appears below the response:
Click the source button to expand the exact text excerpt that was fed to the AI. This lets you verify the source and read the full passage in context.
Why the AI may not show document sources:Click ✕ Deactivate in the green banner at the top of the Training section, or simply activate a different document. The AI returns to answering from its general knowledge.
Document Permissions:| Role | Can upload | Can delete |
|---|---|---|
| Southern Software Admin | Product Manuals, FBI Docs, Agency SOPs | All types |
| Agency Admin | Agency SOPs (own agency only) | Own agency's SOPs only |
| Standard User | — | — |
Supported file types: PDF, DOCX, TXT. Image-only scanned PDFs require Azure Document Intelligence (OCR) — contact Southern Software to enable.
Delete confirmation: Clicking 🗑 on a document card asks for confirmation before deleting. Deletion is permanent — all chunks and search index entries are removed.
In the Report editor, the ⬇️ Import buttons next to Case# and CFS# allow pulling data directly from your CAD/RMS system into the AI Draft pane.
Requirements: Import requires your agency to have Cosmos DB CFS/RMS integration configured by your system administrator. If your agency does not have this integration, the button will display a "not configured" message.
Contact support@southernsoftware.com to enable CFS/RMS integration for your agency.
| Product | What It Does | AI Capability | What's Missing vs SPARK |
|---|---|---|---|
| Axon Draft One | Generates narrative reports from Body Worn Camera audio transcripts | Audio → text → narrative generation | Requires BWC footage. No conversational AI. No case-linked AI record. No scheduling, email drafting, or record search via AI. |
| Tyler Technologies | Dominant RMS and CAD vendor (New World, Brazos) | Analytics dashboards, predictive policing charts | AI is analytics-only (for command staff). No real-time AI assistance for public safety users. No conversational interface. No AI legal records. |
| Mark43 | Cloud-native RMS with smart case linking and workflow automation | Minimal — some smart form auto-fill | No conversational AI chat. Case linking is manual. No AI narrative generation. No conversation log for court. |
| Palantir Gotham | Intelligence case management and data fusion for investigators | Graph-based intelligence analysis for detectives | Enterprise-only, complex setup. Designed for analysts, not patrol. No user-facing AI chat. No narrative generation. |
| Motorola PremierOne | CAD, mobile, RMS suite | None — traditional forms-based workflow | No AI of any kind in the user workflow. |
| SPARK AI Public Safety Assistant | AI-first public safety user platform — AI is the central interface | Conversational AI, narrative generation, auto-scheduling, email drafting, record search, voice input, court-ready AI records | ✓ Only solution where every user action is AI-assisted and every AI interaction is a legal record linked to a case number |
SPARK AI's core differentiator: the AI conversation itself is a structured legal record, linked to Case# and CFS#, summarized, searchable, and court-exportable — something no competitor has built.
field-interview, suspectUse the engine selector in the chat header to switch AI models. Larger models produce better legal narratives; smaller/faster models are fine for quick questions and scheduling.
SPARK AI Public Safety Assistant — Southern Software — support@southernsoftware.com
Select a scenario to load it into the AI chat. The AI will guide you through the situation step by step.
More training content — videos, quizzes, and custom agency scenarios — coming in future releases. Use the Feature Request button to vote for what you want most.
Click a manual to activate it as AI context — the AI will reference it when answering your questions.
Your agency's manuals and procedures. Click a document to activate it as AI context.
FBI training documents and reference materials. Click a document to activate it as AI context.