SPARK AI Logo

Southern Software SPARK AI

Public Safety AI Assistant

Auth0 is not configured.

Need help? support@southernsoftware.com

⚡ You are offline — read-only access only. Changes will sync when connection is restored.
SPARK AI SPARK AI Public Safety Assistant Southern Software
|
Calendar
Sun
Mon
Tue
Wed
Thu
Fri
Sat
Shift Call Court Training Task CAD/RMS Note FI
Loading today…
Reports
Notes
AI Conversation Log
Tasks
Event Map
Type Title Location Date Case#
Search Workbook
Include:
User Directory
SPARK AI Public Safety Assistant — Help & Guide

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.

  • Built for public safety users, not just supervisors or analysts
  • No separate apps — everything in one split-screen interface
  • Works offline for drafting; syncs when connected
  • Supports voice input throughout (Chrome / Edge)

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.

  • Case # — RMS case number (e.g., 2025-04321). Assigned by records management after the incident.
  • CFS # — CAD Call for Service number (e.g., CFS-88214). Assigned by dispatch at the time of the call.
  • Key Event — A free-text tag describing the type of call (e.g., "Traffic Stop", "Domestic", "Theft", "Foot Pursuit"). Used for quick filtering and search.

When these fields are filled in, the AI automatically:

  • Prefixes every message with incident context so the AI knows which case you're working
  • Pre-fills Case# and CFS# when you create a new report, note, or calendar event
  • Links saved conversations to the incident for later retrieval
  • Includes case identifiers in court-export transcripts

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:
  • Draft narratives — "Write a professional incident report narrative based on these facts: [describe the incident]"
  • Legal guidance — "What elements must I document for a lawful arrest under state statute 12-2455?"
  • Use-of-force review — "Review my use-of-force narrative and identify any gaps or compliance issues"
  • Witness summaries — "Summarize the following witness statement for my report: [paste statement]"
  • Miranda / rights — "Was Miranda properly administered in this scenario?"
  • Shift briefing — "Give me a briefing summary for my current shift based on this case"
  • Follow-up actions — "What follow-up notifications or actions are required for a DV case?"
  • Court prep — "Summarize this conversation as if I were testifying about these events in court"
Quick Prompts:

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 Panel

Click any button to instantly send that prompt to the AI, pre-loaded with your current Case# and CFS# context.

ButtonWhat It DoesExample 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.
AI Toolbar — Below the Message Input Box

These buttons control how you get content into the AI and how you save the AI's output.

ButtonWhat It DoesExample 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 Events

Speak or type naturally. The AI understands day-of-week references, military time, and relative dates ("next week", "in 3 days").

Example phraseWhat 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 Events

Create a series of repeating calendar events in one command.

  • "Add a recurring Security Check and Ride-by at 123 Main Street every 4 hours for the next 2 weeks"
  • "Schedule shift briefings every day at 0700 for 5 days"
  • "Create a patrol check at Oak Park every 6 hours for 3 days"

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 Modal

Tell the AI you need to write a report — it switches to the Reports tab and opens the correct report type automatically.

  • "Start an arrest report for case 2025-321"
  • "Open a use of force report"
  • "Create a new field interview report"
  • "I need to write a supplement report for case 2025-100"
  • "Start an incident report for the theft at 500 Oak Ave"

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 Pin

Ask the AI to show an address on the map — it geocodes the address and drops a pin automatically.

  • "Show 123 Main Street on the map"
  • "Pin the location of the suspect's last known address: 456 Oak Ave, Springfield"
  • "Where is 789 Elm Street? Show on map."
  • "Mark the incident scene at 1400 Riverside Drive on the map"

The Map tab opens and a marker is placed at the geocoded address. Click the marker to see the address label.

📧 Email Drafting

Ask the AI to draft professional emails using case context.

  • "Draft an email to captain@pd.gov summarizing case 2025-123"
  • "Write an email to the DA's office about the arrest for Case# 2025-456"

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.

  • "Find any reports related to a red stolen Ford in my records"
  • "Search my notes for any mentions of suspect John Doe"
  • "Check my records for prior contacts at 123 Main Street"

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:
  • Type a name, badge number, rank, or unit in the search box — results filter in real time
  • All fields (first name, last name, badge, rank, unit) are searched simultaneously
Contact Cards:
  • Click any user card to open a full Contact Card showing name, badge, rank, unit, shift pattern, phone, and email
  • The Contact Card also appears when you click View in Directory on a Task or other linked record

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:
  • Shift — Scheduled work shifts with start/end times
  • Call — Dispatched calls for service linked to CFS#
  • Court — Court appearances linked to Case#, with location
  • Training — Mandatory or voluntary training sessions
  • Task — Follow-up tasks, warrant service, notifications
  • Note — General reminders and personal calendar items
Tips:
  • Events auto-populate Case# and CFS# from the current case bar
  • Click an event chip to open and edit it
  • Opening an event loads its Case#/CFS# into the AI case bar and sets AI context so you can immediately ask questions about that event
  • New events default to Private — uncheck Private to share with your agency
  • Events can be linked to Reports for automatic cross-reference

Report Types:
  • Incident — Standard incident report (theft, assault, disturbance, etc.)
  • Arrest — Arrest report with charges, Miranda advisement, and booking details
  • Field Interview — FI contact documentation: subject description, location, reason for contact, disposition. Critical for intelligence gathering and pattern identification.
  • Use of Force — Detailed force documentation required for compliance and review
  • Supplemental — Follow-up reports adding to an existing incident case number
  • Accident — Traffic accident reports (MVC)
  • Property — Property damage or found/recovered property
  • Other — General-purpose report type
AI Report Workflow (Report Mode — recommended):
  1. Click 📋 Report Mode in the chat toolbar (or + Report in the Reports tab — they are identical)
  2. Choose Start New, pick the report type, enter a title, and click Start Collecting — a report record is created immediately and you are taken to the AI chat
  3. Describe the incident facts to the AI — each response automatically saves structured data to the report record
  4. Optionally upload a body-cam recording via 🎙️ Transcribe — the matching report narrative is generated and saved automatically
  5. Navigate to the Reports tab, open the report, edit the Final Report pane to refine, then click Submit
Continuing an existing report:

Click 📋 Report ModeContinue Existing tab → select your report → Continue Selected. The AI continues appending to the same record.

Traditional workflow (without Report Mode):
  1. Go to Reports tab → click + Report and fill in the form manually
  2. Open the report and click ✨ AI Draft to generate a narrative from your conversation history
  3. Edit Final Report, then Submit
Supervisor Workflow:

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:

  • Text — Type directly in the note editor
  • Voice (Dictate) — Click 🎤 in the note modal to speak your observation hands-free
  • AI Expanded — Write a short field note ("WM 30s, blue hoodie, ran northbound on Main") and click ✨ Expand with AI — AI converts it to a full professional observation paragraph. The original note is preserved.
Tags:

Add comma-separated tags to notes for filtering: suspect, vehicle, use-of-force, witness, property

Case Linking:

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:
  1. Enter Case# and CFS# in the case bar
  2. Conduct your AI session (narrative drafting, legal questions, analysis)
  3. Click 💾 Save in the case bar and give the session a title
Reviewing Conversations:

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:

  • Full turn-by-turn transcript (User / AI labeled)
  • AI-generated summary (click ✨ Generate Summary)
  • Case identifiers, date, and token usage
Court Export:

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:
  • Reports — Searches title, AI draft text, and final narrative
  • Notes — Searches note content and tags
  • Events — Searches event title, description, and location
  • Conversations — Searches conversation title and AI-generated summary
Search Tips:
  • Search by Case# or CFS# to find everything related to one incident
  • Search by suspect name, vehicle description, or address
  • Use the date range filters to narrow by time period
  • Use checkboxes to search only specific record types
  • Tip: Ask the AI to search for you — say "find my records on [topic]" and AI will call Search automatically

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:
  • Click ⚙️ Manage in the top bar to open the Incident Manager.
  • Click + New Incident and enter the Case# (RMS), CFS# (CAD), Key Event type, and an optional label.
  • Click Select to make an incident active — the Case#, CFS#, and Key Event fields at the top update instantly.
  • All new Reports, Notes, Calendar Events, Tasks, and AI conversations will automatically inherit these identifiers.
  • Use the dropdown to quickly switch between incidents without re-typing.
  • Incidents are saved in your browser and persist across sessions.
Tips:
  • Add a descriptive label (e.g. "Robbery at 4th & Main, 04/15") so you can quickly identify incidents in the dropdown.
  • When you clear the incident selector, new records will not be auto-tagged with a case number.

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:
  • When an AI task or long-running AI draft completes
  • When a submitted report is approved or returned by a supervisor
  • When a new task is assigned to you
Browser permission:
  • Clicking the bell asks your browser for notification permission. You must click Allow in the browser prompt.
  • Notifications work even when SPARK AI is in the background — as long as the browser tab is open.
  • To revoke permission: go to your browser's site settings and block notifications for this site.
  • Note: Notification permission is stored by your browser, not SPARK AI. It persists across sessions until you change it.
Browser support:

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:
  • Status — Not Started / In Progress / Blocked / On Hold / Complete
  • Priority — Critical / High / Normal / Low (controls left-border color)
  • % Done — Drag the slider to show progress. The progress bar updates in real time.
  • Start Date / Due Date — Due dates in the past are highlighted red if not complete.
  • Case# / CFS# — Link the task to an incident for retrieval via Case Timeline.
Kanban View:

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.

  • Click any marker to see the event title, type, date/time, and address
  • Click a row in the event list below the map to zoom to that location
  • Use the Type filter to show only specific event types (Shift, Call, Court, etc.)
  • Powered by OpenStreetMap — no API key required

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:
  1. Go to Search → Case Timeline
  2. Enter a Case# or CFS# and optional date range
  3. Click View Timeline
  4. Export the full timeline as CSV for court documentation

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 Tab

Update your personal and officer profile information. Changes are saved to the server and shared across all devices.

  • Name, email, phone — Contact details visible to your agency in the Directory
  • Badge #, Rank, Unit, Shift Pattern — Displayed on your Contact Card and used to filter Directory results
  • Profile Photo — Upload a photo via the URL field; displayed on your Contact Card
  • Share with All Agencies — Check to make your profile visible across agencies (off by default)
  • Screen Timeout — Choose how many minutes of inactivity before you are automatically signed out: 5, 10, 15, 30, or 60 minutes, or Off (disabled). Default is 5 minutes. Any mouse movement, keypress, click, or scroll resets the timer.
🤖 AI Settings Tab
  • AI Engine — Select the AI model used for all AI chat and Smart Actions
  • Auto-send after voice stops — When enabled, the message box is automatically submitted after you release the 🎤 voice button. The Send Delay (ms) field controls how many milliseconds to wait before sending (default 800 ms). Increase this if the AI sends before you finish speaking; decrease it for faster hands-free operation. Range: 0–5000 ms.
🎨 Appearance Tab

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:

ThemeCharacter
DefaultDeep navy header, blue accent — the standard SPARK AI look
CorporateProfessional dark blue with indigo accents, light grey background
CupcakeTeal header, pink accent, warm cream background — light and friendly
EmeraldForest green header, mint accent, pale green background
NordCharcoal header, cool slate-blue accent, soft Nordic palette
DarkNear-black header, light blue accent — full dark mode
HalloweenDark background, orange accent — high contrast dark mode
Yellow JacketBlack header, gold accent — dark mode with bold contrast
SunshineAmber/gold header, orange accent, cream background — bright and warm
AuburnBurnt orange header, navy accent, tan background
Tar HeelCarolina blue header, navy accent, pale blue background
CustomBuild your own using the Custom Theme Builder (CSS variable sliders)
Navigation Accent Color:

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:

SettingWho can see itIndicator
Private ✓ (default)Only the public safety user who created it (and agency Admins)No badge
Private uncheckedAll 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:
  • Audio: MP3, WAV, M4A, WebM, OGG
  • Video: MP4, MOV, AVI (audio track extracted automatically)
  • No file size limit. Files larger than 23 MB are automatically compressed to 16kHz mono MP3 and split into chunks before sending to Whisper. A 2-hour body-worn camera MP4 is handled end-to-end with no manual steps.
  • Multiple files can be selected at once — each is processed in sequence
Step-by-step workflow:
  1. Click 🎙️ Transcribe and select your file(s)
  2. A progress task card appears in the chat showing upload status, compression (for large files), and chunk-by-chunk progress (e.g., "Chunk 2/5 of bodycam.mp4")
  3. When transcription completes, the card transforms into an action card showing a preview of the transcript and action buttons
  4. Click an action button to use the transcript
Action buttons on the completed transcript card:
ButtonWhat it does
📋 I/OSends 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.
🚗 AccidentGenerates a Traffic Accident report narrative from the transcript — parties, vehicles, damage, injuries, sequence of events.
👤 Field InterviewGenerates an FI report — subject description, contact reason, location, disposition, follow-up actions.
📄 CitationGenerates a Citation/Traffic Stop narrative from the transcript.
💬 SummarizeProduces a concise plain-English summary of the transcript — useful for recorded witness interviews or 911 calls.
✕ DismissRemoves the card from chat. The transcript text is still available in the chat history if you need it.
Using in Report Mode:

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 PointHow
📋 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.
What Report Mode does while active:
  • A blue Report Mode banner appears at the bottom of the chat showing the report name and how many structured fields have been captured
  • Every AI response that contains structured data (names, dates, charges, evidence lists, etc.) is automatically saved to the report record in real time — no manual save needed
  • The 💾 Save as Report button is hidden while banner is active (saving is automatic)
  • If you upload a transcript while in Report Mode, the report narrative is generated and saved automatically
Example session:
  1. Click 📋 Report Mode → choose Incident Report → enter title → click Start
  2. Tell the AI: "Suspect John Doe, DOB 01/15/1990, 5-10, WM, was observed at 123 Main at 2200 hrs. I conducted a traffic stop on a black Camry, plate XYZ-123. Subject had a suspended license."
  3. The AI responds with a structured extraction. Banner updates: "3 fields captured"
  4. Continue adding facts — each AI response appends to the report automatically
  5. Click Exit Report Mode on the banner when done — or navigate to Reports and edit the final text
Continuing a previous report:

Click 📋 Report ModeContinue 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 formatExample
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.

What happens:
  1. The translated text appears in the chat as an AI response
  2. The browser speaks the translation aloud at natural speed in the target language
  3. The translation is added to the conversation history (you can continue asking follow-up questions)
Supported languages (28 total):

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:
  • Hold 🎤, say "translate to Spanish: please put your hands up", release — the translation plays back immediately
  • Text-to-speech quality depends on which voices your browser has installed. Chrome and Edge have the best language coverage.
  • For longer translations, you can click the speaker again — the translation text stays in chat and you can copy it

The Training Center (🎓 Training tab) is the AI reference library. It has four sub-tabs:

TabContents
🎓 AI Training GuideInteractive 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 ManualsSPARK AI product documentation uploaded by Southern Software. Activate one to give the AI deep knowledge of specific platform features.
🏢 Agency ManualsYour agency's standard operating procedures, policy documents, and custom reference materials. Uploaded by your Agency Admin.
🔵 FBIFBI reference documents — UCR definitions, NIBRS guidelines, crime classification guides. Uploaded by Southern Software.
Activating a Document as AI Context:

Click any document card with a green Active badge. Cards that are ready show "Click to activate as AI context →". When activated:

  • A green banner appears at the top of the Training section — 📖 AI context: [Document Title]
  • A toast notification confirms activation
  • The card shows ✅ Active AI context with a green border
  • Every AI chat message you send will automatically search that document and inject the most relevant passages into the AI's context before it replies

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:

📚 Referenced from training document — click to view excerpt
📄 FBI UCR Manual — Violent Crime Definitions › p.12 ▶

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:
  • Document is Processing — The card shows a yellow "Processing…" badge. The document hasn't been chunked yet. Wait for it to show a green "Active" badge, then activate it.
  • No matching content found — The document's text didn't contain passages closely matching your question. Try asking something more specific to the document's subject matter, or rephrase your question.
  • Document status is Error — Processing failed (often an image-only scanned PDF without OCR enabled). Contact Southern Software to configure Document Intelligence for scanned documents.
  • API connection issue — If the API server is unreachable, AI Chat will not respond at all and the document context cannot be retrieved. Check your network connection or contact your administrator.
Deactivating a Document:

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:
RoleCan uploadCan delete
Southern Software AdminProduct Manuals, FBI Docs, Agency SOPsAll types
Agency AdminAgency 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.

  • Import CFS — Retrieves Call for Service data (location, nature, units, disposition) from CAD and generates a pre-populated narrative
  • Import Case# — Retrieves RMS incident data linked to the case number

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.

ProductWhat It DoesAI CapabilityWhat'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.

Keyboard Shortcuts:
  • Enter in chat — Send message
  • Shift+Enter — New line in chat (no send)
  • Voice: Click 🎤 in chat or in Note modal to dictate
Workflow Best Practices:
  • Always fill Case# and CFS# first — Everything you do during the shift gets linked to the right incident automatically
  • Talk to the AI like a partner — Describe the call in plain language, then ask it to organize into a report narrative
  • Voice + AI Expand = fastest notes — Dictate raw field notes, then use AI Expand to professionalize them in one click
  • Save conversations after key sessions — Especially for complex calls where you asked the AI for legal guidance or narrative help
  • Use "Court Summary" quick prompt before testifying — Have the AI summarize the conversation in a court-ready format
  • Field Interviews — Use FI report type for all consensual contacts, link to CFS# if dispatch-generated, add suspect description in field notes and tag with field-interview, suspect
AI Engine Selection:

Use 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

🎓 SPARK AI Training Center
💡 Tip of the Day:
🎯 Training Scenarios — Click to practice in AI Chat

Select a scenario to load it into the AI chat. The AI will guide you through the situation step by step.

📋 Feature Quick Guides
💬 AI Chat
Ask the AI anything — write reports, analyze data, get policy guidance. Type a question or use voice input.
📋 Reports
Create incident reports, field interviews, and other report types. Use AI to generate or expand narratives from your notes.
📝 Notes
Capture quick field notes by typing or voice dictation. Use AI Expand to turn rough notes into professional text.
📅 Calendar
Track shifts, court dates, training, and calls. Say "Add court date Tuesday 9am" in AI Chat to create events automatically.
✅ Tasks
Manage follow-up items by status and priority. Tag tasks as Bug or App Request to report issues directly to the development team.
🔍 Search
Search across all your reports, notes, tasks, and events by keyword, Case#, or CFS#. View full case timelines.
🐛 Report a Bug
Found something broken? Click Report Bug in the top toolbar to send a screenshot and description to the support team.
💡 Request a Feature
Have an idea? Click Feature Request in the toolbar to submit it directly. Your requests shape what gets built next.
⌨️ Keyboard Shortcuts
C Calendar  ·  R Reports  ·  N Notes  ·  T Tasks  ·  S Search  ·  M Map  ·  Enter Send chat
📖 Useful AI Prompts — Copy & paste into chat

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.

Loading manuals…

Your agency's manuals and procedures. Click a document to activate it as AI context.

Loading agency manuals…

FBI training documents and reference materials. Click a document to activate it as AI context.

Note: If you need an FBI-related document added to this section, please notify the Southern Software team using the Feature Request button in the toolbar.
Loading FBI documents…
AI Assistant
Context: 
Quick:
🚧 Alpha Testing — Expect bugs and incomplete features. 🐛 Report a Bug 💡 Feature Request ✕ Got it