View the latest changes to Sonoran CAD!



3.32.0 12/TBD/2022

Tone Board - Repeat
  • Dispatchers can now set a tone to automatically repeat every X seconds for X number of times.
#9013 Link Records to Dispatch Call
  • Call notes have been overhauled and can now have linked records and dispatch calls pasted into them.
Dispatch Call Preview - Copy Link
  • Added a copy link button in the dispatch call preview window
Lookup Record by ID - Set Record Number
  • Fixed an issue where opening a record via specific ID would not have the ID field set properly in the record popup.
Create Template - Plate Type Checks
  • Fixed an issue with the custom record template editor not properly ensuring a plate field mapping ID existed on the vehicle registration type.
Emergency Call - Dispatch Address Autofill
  • Fixed an issue where the address field would not auto populate when opening an emergency call in the dispatch call editor.

3.31.0 11/21/2022

#8844 Live Map External Desktop Window
  • Windows desktop users can now open the interactive live map in a fully external window.
Live Map CAD Based Update - Coordinate Removal
  • Fixed an issue where updating a smart sign via CAD would cause it to disappear from the live map.
Switch Communities - Bug
  • Fixed an issue preventing users from "switching communities" on a custom domain or with a community set as default on the login page.
Discover Button - Custom Domain Fix
  • Fixed an issue with detecting custom and non-custom domains, preventing the "Discover" CMS button from appearing on non-custom domains.

3.30.1 11/08/2022

CMS Discovery Links
  • The CAD now links to the CMS discovery page on all non-custom domains.
Civilian DMV Error
  • Added a more descriptive error to the DMV dropdown if DB sync is enabled and there are no other custom types available.

3.30.0 10/04/2022

Admin Identifier Search - via Unit Number
  • Admins can now search for unit identifiers via unit number.
#10700 Call Notes Time Zone
  • Call notes now display with the local community time zone.
Lookup via Identifier - Optimization
  • Updated the way lookups via identifier are ran, now following the explicit department structure defined by admins.
Record Template Optimization
  • Moved community record templates to a new database column and separate WS/API methods to send them to the client. This dramatically reduces the size of the community login method, community search, etc. by minimizing the data size.
#10859 Call Note Duplication
  • Fixed an issue causing dispatch call notes to duplicate after manually running a call update.
Custom Lookup Types - Client Save
  • Fixed an issue causing custom lookup types to not save on the client's admin panel without a refresh.
Dispatch Close - Console Error
  • Fixed an issue causing dispatch close events from throwing a client error in the console.

3.29.6 09/20/2022

#10281 QB Core Multi-House DB Sync Mapping
  • Multi-match for a single field now works for database sync, allowing multiple properties to be displayed specifically for QB Core.
DB Sync Search Char by Custom Value
  • Fixed an issue causing the db sync search by custom value to not properly link all the character information.
#10725 Civilian Checkbox Fields
  • Fixed an issue causing non-db sync creation to not properly copy over checkbox values from a civilian to a new DMV record.

3.29.5 08/15/2022

Sonoran CMS - Permissions Sync
  • Sonoran CMS can now automatically manage Sonoran CAD user permissions
API ban_user - accId
  • Added an accId option to the endpoint.
API set_account_permissions - accId
  • Added an accId option to the endpoint.
API - Remove 911 UI Call - Fixed an issue with 911 calls being removed via API not updating in the UI until a refresh.

3.29.4 07/21/2022

Account Removal - In App
  • Added a button to request account removal from within the app, removing the need to use the external accounts website.
DBSync - Character Pull
  • Fixed an issue with loading database sync characters.
Root Domain - Community Query String
  • Fixed an issue with the ?comid query string not persisting to the /login page on redirect.
Dispatch From Emergency - Remove Call
  • Fixed an issue where creating a dispatch from an emergency call would not remove the emergency call.

3.29.3 07/12/2022

Join Community Safety
  • Added additional safeties on community join to handle errors and duplication.
Custom Domain DNS
  • Fixed an issue with custom domain DNS checks failing.
Tablet Live Map
  • Fixed an issue with the live map on tablet devices not having proper default height

3.29.0 06/01/2022

Discord SSO
  • Added a sign in with Discord option.
Apple SSO
  • Added a sign in with Apple option.
  • Fixed an issue with the API new_record endpoint not properly linking the record's owner via API ID.
  • Fixed an issue where removing an array custom map blips wouldn't remove them from the user's UI without a refresh.
#9023 Custom Lookup Masks
  • Fixed an issue where running a lookup for a custom search type doesn't work if the lookup mask is not clear of formatting
#9112 Partial Identifier Username Search
  • Partial search strings do not work for searching Unit Identifiers in the Admin Panel.

3.28.2 05/13/2022

Admin - Identifier Management
  • Admins can now view and manage all unit identifiers in the admin accounts menu.
#8934 New Dispatch Status Notes
  • Fixed an issue causing new dispatch calls to not automatically add notes when a unit changed their status, before the call was "updated" manually.
DB Sync Records - Disable Get Owner
  • Fixed an issue causing the admin get owner button on record searches from displaying on database sync records.

3.28.1 05/11/2022

Layout - Header/Footer
  • Updated the standard layout for consistency with other products.
#8909 Set Status - Call Note
  • The set_status API endpoint now supports status change notes on dispatch calls, allowing for the in-game /setstatus command to also add a call note.
#8893 Dispatch Call Notes
  • Fixed an issue where a dispatcher adding call notes and clearing the editor wouldn't show the notes when re-opening the call until a refresh was made.
ID Field - Disable Unique Toggle
  • Added a check to prevent the user from toggling the unique field on custom record ID fields.

3.28.0 05/04/2022

Preview Field Update - Re-index
  • When a record template is updated to add or remove preview fields you can now re-index and update all previously formed records to match.
#8718 Custom Record Dependency - Equal, Not Equal, Contains
  • Custom record dependencies can now be set to equal, not equal, or contains.
Record Webhooks - Dependencies
  • Added dependency checking to discord webhooks to not display "hidden" fields or sections.
Live Map - Range Circle
  • Custom live map blips can now have a radius field specified. When set, this will show a transparent circle to reflect range.
911 and Dispatch Calls - Last Updated Timestamp
  • Emergency and dispatch calls now contain an updated timestamp field in UTC. This allows a framework plugin or API method to be used to automatically close any inactive calls after a certain time.
Server ID - Safety Checks
  • Added safety checks to ensure all server IDs are 1 based via index and disabled the ID field in the UI.
Self-Dispatch: Close Call
  • Fixed an issue where users in self-dispatch couldn't close a dispatch call from the editor.
#8682 Supervisor Checkbox
  • Fixed an issue with supervisor toggled checkboxes (legacy) from not being removed from the supervisor panel.

3.27.0 04/12/2022

#8372 Multi-Select Emergency & Dispatch Calls
  • Dispatchers can now multi-select emergency and dispatch calls to delete multiple at a time.
#8453 Preview Duplicates
  • Previewing custom records with duplicated section preview fields will display an icon. Hovering over the icon will display a tooltip with all duplicate value entries.
API: Lookup By Int - Direct Number Handling
  • When looking up a specific record number via the API (Discord bot webhook reactions for new records) the UI will open the full record directly, instead of opening a search tab with the ID inserted.
  • The EVENT_REMOVE_911 push event has changed the callId property to a callIds array.
  • The EVENT_DISPATCH_CLOSED push event has changed the callId property to a callIds array.
API: remove_blip array IDs
  • The remove_blip API method has changed the id property to an ids array.
DB Merge - Select
  • Fixed an issue causing db merge to not properly set the value on select type fields.
#8338 Custom Records - Supervisor Checkbox
  • Removed the supervisor only attribute from the custom record checkbox section, resolving an issue where reports with supervisor checkboxes would always show as awaiting supervisor.
#8457 Custom Record Required Dependencies
  • Fixed an issue where custom record required fields that were hidden via dependency would prevent the user from submitting the record.

3.26.1 04/01/2022

Custom Blips - Display JSON
  • Custom blips can now have text data displayed upon selection.
Custom Blips - subType
  • Added a subType property to custom blips, allowing users to toggle visibility on/off for different custom blip types.
#8257 Tone Board Shortcut
  • Fixed an issue where opening the tone board from a shortcut, like the active units, failed.

3.26.0 03/21/2022

Live Map - Custom Blips
  • Custom blips can now be added, edited, and removed in real-time via API endpoints.
  • Photos can now be sent from in-game to the user as a pop-up via API. Allowing for easy image attachments for custom records.
#8028 API lookup_int Limit
  • The lookup_int endpoint now supports pagination with limits and offsets.
Admin Accounts: Pagination
  • The admin page's account table now uses server-sided pagination for a more optimized experience.
#8051 Edit Record Webhook
  • Fixed an issue where sending a webhook for editing a record was based on the add toggle and not the edit one.

3.25.7 03/15/2022

Database Merge - Flag Section Handling
  • Database merge now supports saving custom flag sections on database sync records.
Database Merge - Checkbox Handling
  • Database merge now supports select and checkbox fields for custom records with database sync.
Database Sync - Checkbox Handling via Friendly Mapping
  • Custom record checkboxes can now have their values set via DB Sync and friendly mapping.
Admin Accounts: Pagination
  • The admin page's account table now uses server-sided pagination for a more optimized experience.
#8051 Edit Record Webhook
  • Fixed an issue where sending a webhook for editing a record was based on the add toggle and not the edit one.

3.25.6 03/14/2022

#7977 Link Dispatch Call
  • Dispatch calls can now be linked in custom records for quick reference.
ERLC Map Update
  • Updated the ERLC live map image.
Linked Records - Remove
  • Fixed an issue where clicking the delete button on a linked record still opened the record preview after removing it.
#7978 Field Dependency
  • Fixed an issue causing field dependencies to not function properly.
#7981 Field Add Exception
  • Fixed an issue generating a console error when adding a new field to a custom record.
Admin Customization - Sonoran One
  • Fixed an issue where Sonoran One members couldn't access the proper tone board and custom search customization options.
Custom Record Dependency - Select
  • Fixed an issue causing custom record dependencies on a select field to throw an exception.

3.25.3 03/11/2022

#7314 Custom Records - Dependencies
  • Custom record sections and fields can now have their visibility toggled via custom dependencies from other record fields.
Custom Records - Copy/Paste Sections
  • The custom record editor now allows you to copy/paste record sections.
#7920 Record Logs
  • Modified the custom record add and edit logs to include more details on the record type and ID.
Inactivity - Email Notice
  • Automated emails are sent to community owners if no logins have been made in 3 weeks, giving them 7 days notice prior to community deletion.
DB Sync - Safety Checks
  • Added safety checks and errors for database sync configurations that have license or vehicle mapping enabled, but no table name or character mapping column set.
Custom Records - Required Type Duplicate Check
  • Added additional safety checks to ensure a community does not have duplicate required custom record types and the ability to remove duplicated required types.
DMV New Record - Disable with Sync
  • Fixed an issue allowing new licenses or vehicle registrations to be created in the DMV panel even if DB Sync is enabled.
  • Fixed an issue with the SET_SERVERS endpoint not properly deploying the new live map.

3.25.2 03/04/2022

#7615 Custom Records - Unit Location Field
  • The UNIT_LOCATION custom field type can be used to autofill the unit location on a new record.
  • The new GET_IDENTIFIERS endpoint allows you to retrieve all unit identifiers for a user and view the currently selected one.
  • Added an endpoint to change the selected unit identifier via API.
#7511 Modify Identifier
  • Unit identifiers can now be added, edited, and removed via API.
Custom Records - Show Field UIDs
  • The custom record editor now shows the field mapping ID column (UID) for all record types.

3.25.0 02/17/2022

Live Map - Optimization
  • Optimized the live map to increase performance with larger communities.
Live Map - Search for Postal
  • Pro communities can now search and zoom to a postal on the live map with the postals plugin configured.
Live Map - Selected Unit Filter
  • Units displayed on the live map can now be filtered by selecting units/groups in the active units panel.
#6998 Blip Customization
  • Live map unit blips can now have the unit number display toggled on/off. Unit blips can be filtered down to unit type. Additionally, unit blips have customizable outline colors.
#7414 Wyze LED Strips
  • Expansion of supported light integrations. For example, Wyze has multiple other smart bulbs, such as LED light strips, which could be really cool to have like under a table, behind a desk, or on the walls. Would also allow for more customization.
  • Added a push event for when tones are played.
Unit Login - Clear Position
  • Unit positions are cleared on an initial login until their position is updated in-game. Preventing units who are no longer in-game from displaying on the map.
#7092 Live Map Duplication
  • Fixed an issue causing the live map image to duplicate after closing and re-opening.
Desktop - Prevent Zoom Out
  • Prevented users from ctrl - zooming out in the desktop app.
#7455 Maintain Full Screen after Toggle Key
  • When showing (w/ global hotkeys) a Sonoran CAD Desktop window that was fullscreen when it was hidden (w/ global hotkeys), it'll show back up no longer full screen in a smaller window.
DBSync Save - Handle null columns on trim
  • Added safety checks if the user enabled license or vehicle mapping but had a null owner or table name set.

3.24.0 01/16/2022

GTA Live Map - Overhaul
  • An entirely new live map system allows you to edit and view units, emergency calls, smart signs, and more!
Live Map - Permissions
  • Access to the live map is now restricted via user permission.
Window - Draggable Area
  • Fixed an issue causing draggable windows to be draggable from anywhere, preventing users from scrolling or grabbing inside the window.
Custom Layout - Drag-and-Drop
  • Fixed an issue causing users with custom layouts to not be able to drag-and-drop elements from one window to another.
#6859 Window Options
  • Fixed an issue causing windows to not force display the close and minimize options.
#6871 Window Scrolling
  • Fixed an issue causing custom windows to have disabled vertical scrolling.

3.23.1 01/09/2022

ER:LC - Live Map
  • Added an interactive live map for ER:LC Roblox communities
Portuguese Translation
  • Added Portuguese translations

3.23.0 01/06/2022

Command Line
  • Dispatchers can now utilize a CLI to quickly create and close dispatches, attach, detach, view, clear, change statuses, add notes, and more all via keyboard
#6638 Custom Records - Drag Support
  • Custom record sections and fields can now be dragged-and-dropped to be re-ordered
Lighting Integration - Draggable Frames
  • Lighting sequence frames can now be dragged-and-dropped for easy re-ordering
Desktop App - Code Signing Certificate
  • Added a code signing certificate to the desktop application to help with Windows Defender and general trust
Dispatch Push Event - Include Action Creator Identifer
  • Include the identifier of the dispatcher that’s added/modified calls to the push events
Stripe Pending Cancellation - Status
  • Added a feature to highlight subscriptions pending cancellation instead of still listing them as active or cancelled
Record Center - Lookup Filter Icon/Number
  • Updated the record filter icon to match the lookup window, including displaying the number of record type filters
Custom Record Add - Prevent Duplicate Required Type
  • Added safety checks to prevent a user from manually uploading a duplicate required record type, preventing them from removing it
Custom Domain - DNS Check
  • Added DNS verification with a TXT record community ID check
#6698 BOLO Removal
  • Fixed an issue causing bolo removals to locally remove a second one from the UI
#6694 Close Dispatch without Idents
  • Fixed an issue with dispatch auto-status causing an error when closing a dispatch without any attached units

3.22.6 12/21/2021

Dispatch - Auto Status Toggles for Attach/Detatch/Close
  • Dispatchers can now configure automatic status changes for units when they're attached, detached, or have their dispatch call closed
Record Filter - Icon w/Number
  • Updated the lookup's record type filter bar with a better icon, lighter background, and selected count number for better awareness
API Record Remove - Webhook
  • Fixed an issue causing record removal via API to not send a webhook event
API: remove_record isReport property
  • Removed an unused isReport field from the remove record API endpoint

3.22.4 12/18/2021

Records API - Simplified Dictionary
  • Creating and editing records can now be easily done through the API with a simplified key/value dictionary
Records API - API ID Support Addition
  • Record adding and removal via API now also accepts API IDs in addition to the existing user UUID field
Record API - Webhook Support
  • Added webhook support for all custom record API endpoints
#6255 Notepad Label
  • The notepad shows police.header.notepad and when you click on it it does not bring up the notepad. This is both on the desktop app and the website
Wyze Color - API Updates
  • Updated the lighting integration to handle Wyze's new payload encryption + encoding

3.22.0 12/1/2021

Custom Records - Identifier Fields
  • Custom fields can now be added to records to auto-fill unit information for new records
Custom Records - Read Only Toggle
  • Custom records can now have auto-filled fields marked as "read only" to prevent users from modifying the values
  • Added a notepad for quick multi-notes
#5683 Search Via Department/Agency
  • Added the option to search for record by agency, department, or subdivision instead of just a specific identifier. Improved the agency, department, and subdivision drop downs to only display departments that existed in the admin menu. Improved the identifier drop down to auto-filter while typing.
Unit Group - Individual Options Once Expanded
  • Added individual unit context menu options when a unit group is expanded
Unit Group - Flash if one is Panicked
  • Unit groups will now panic flash if it contains a unit in a panic state. The group can be expanded to view the individual unit in panic
API: GET_ACTIVE_UNITS - offline and pagination
  • Added support to the GET_ACTIVE_UNITS endpoint to include offline unit identifiers. Added proper pagination support up to 100 identifiers per page
New Subscription: Set ID Before Checkout
  • When purchasing a subscription, users are asked to set the community ID before purchase to help reduce the number of subscriptions without an ID set after purchase
API Lookup - Identifier Info
  • The API lookup endpoint now contains optional properties to search based on an identifier agency, department, or subdivision
Timer Group Attachment
  • Fixed an issue preventing unit groups from being attached to the first timer in an existing list from the group context menu

3.21.9 11/21/2021

Unit Info - Include Page
  • The unit info object now contains a page property reflecting what emergency page the unit is logged into, viewable via API.
Add Record Push Event - ID
  • Fixed an issue where the add record push event didn't have the new record ID set on it
Tablet Record Windows - Resize
  • Fixed an issue causing the record windows on the in-game tablet to not save resize preferences
Pagination - Block All Selection
  • Fixed an issue with the BOLO and call history tabs where changing the "record per page" to all broke functionality

3.21.8 11/11/2021

Unit Groups - Dropdown Expanded View
  • Unit groups can now have the units section expanded to view the details of the group
Desktop Download - Round Percentage
  • The desktop auto-updater now rounds download progress to one decimal
Bodycam - Anti-Tamper
  • Changed the way the bodycam webpage is served, preventing users from tampering with the branding
Tone Board - UI Limits
  • Fixed an issue causing the UI to limit the custom tone board by one more than it should
#5915 Dispatch Call Notes PDF
  • Fixed a formatting issue with dispatch call notes in PDF

3.21.4 11/05/2021

Closed Calls - Pagination
  • Closed dispatch calls now support full server side pagination to view the entire history
GET_CALLS API - Pagination
  • The GET_CALLS API endpoint now supports pagination for closed dispatch calls
Emergency Call MetaData - Postal, Block, etc.
  • The call_911 endpoint now has additional metadata support to specify the call postal, block, etc
Active Bolos/Warrants - Pagination
  • Added proper server sided pagination for active warrants and bolos. Resolves issues and improves performance for communities with several hundred or more active records at a time
GET_SERVERS - Standard
  • Updated the GET_SERVERS endpoint to only require the standard version
Translation Updates
  • Updated submitted translation files
#5831 & 5835 - Dispatch Identifier Change
  • Fixed an issue where updating your identifier on the dispatch page doesn't update it for other units, along with displaying the proper dispatch icon after
DB Sync - Structure Save Null Checks
  • Added null checks when trimming db sync fields preventing an object reference error
#5757 - Webhook Tutorial Link
  • Fixed a tutorial button for Discord webhooks going to an invalid page
Drag-and-drop Custom Layout
  • Fixed an issue preventing drag-and-drop from working on custom layouts

3.21.3 10/19/2021

Desktop Update Search - Show Downloading
  • The desktop splash screen now includes live details on update searches and download progress
CHANGED: Websocket Connection Endpoint
  • Updated the backend websocket connection to resolve disconnection issues
Govee - Lighting Fixes
  • Fixed issues with the Govee lighting integration where the Bluetooth server couldn't be unpacked and WiFi based lights wouldn't load

3.21.0 10/12/2021

Dispatch Timers
- Dispatchers can create customizable timers and attach units, groups, and dispatch calls for periodic notifications
Smart Lights - Unit Status
- Smart lighting scenes are now available for your unit status
Govee - Lighting Integration
- Govee smart bulbs are now supported with our lighting integration via Bluetooth and WiFi
Norwegian Translations
- Added Norwegian translations
Server Config - Trim IP/Port
- Added additional safety checks on the backend to trim any spaces in server IPs or ports
UNIT_PANIC Push - Panic Bool
- The EVENT_UNIT_PANIC push event now includes an isPanic bool
Unit - Group Menu Consolidation
- The unit group section on the unit context menu is broken into a separate menu

3.20.11 10/1/2021

Friendly Mapping: Import JSON/CSV - Database sync friendly mapping values can now be imported via JSON or CSV
Wyze Color - Black - The Wyze Color bulbs are now checked for a black hex color, and are turned off rather than set to black
Philips Hue - Black - Philips Hue bulbs are now checked for the black RGB code and are toggled off, as Hue does not support a black color code
DB Sync - Merge in Multi-Table Values - Fixed an issue with DB Sync causing multiple table values for character records to only merge in the first found value in a section and disregard the last
DB Sync - Update Custom Record - Fixed an issue where saving custom records with DBSync would leave some of the old, non-custom fields in the sync config
Smart Lighting Restore - Fixed an issue causing the restore lighting scene to not start until the second trigger
DB Sync - Reserved Word Column Names - Added special handling for selecting reserved MySQL words as column names

3.20.8 9/28/2021

Philips Hue - Lighting Integration - Philips hue color bulbs can now be used with the smart lighting integration
Wyze Color - Lighting Integration - Wyze color bulbs can now be used with the smart lighting integration
Import Penal Codes - Int Parse - Added additional handling and safety checks to ensure the bondAmount column for imported penal codes is forced to an integer
SetServer API - Fixed an issue with the set server endpoint not setting the map URL in the livemap config

3.20.7 9/14/2021

TTS - Numbers - Text to speech now separates all numbers. Ex: "Incoming nine hundred and eleven" -> "Incoming nine one one"
Bodycam - Null Fields - Fixed an issue where bodycam fields set to null would display the {field} key instead of being blank
Modify Unit - Local Update - Fixed an issue where updating your unit identifier wouldn't locally update your information until a refresh

3.20.6 9/13/2021

Desktop App - Save Last Size - The desktop app now re-opens with the size it was last set to Multi-Group Set Status - Dispatchers can now change the status on multiple unit groups at a time
Self-Dispatch - Toggle Improvements - Optimized the toggle process when switching self-dispatch on and off. Additionally, fixed an issue causing the new dispatch TTS to run a second time when you toggled self-dispatch on or off
Smart Signs - Top Alignment - Fixed an issue causing the smart signs UI to display a sign box on the top row next to the search bar

3.20.5 9/9/2021

CAD - Toggle View for In-Game Use - Users can now bind a hotkey to display and hide the CAD on top of the game for a better and more native experience than the Steam Browser. Minimizing with the hotkey will also auto-refocus the game layer below
Duplicate Sections - Bug - Fixed an issue preventing duplicated sections from being removed once a record was filed
Record Preview - Duplicated Sections - Fixed an issue causing records with duplicated sections to overwrite preview fields further down in the lookup preview

3.20.2 9/8/2021

Unit - Drag to Tone Tab - Units can now be dragged to a minimized tone tab to automatically open and attach the unit to the tone
Unit & Call - Drag to Tone Board - Units, groups, and dispatch calls can be dragged-and-dropped to the tone board to automatically add them to the "Send To" box
Unit & Call - Drag to Lookup Tab - Active units and unit groups can be dragged to a pinned lookup tab to automatically open a lookup with those unit(s) selected for result transmission
Dispatch Saved Types - Capitalization - Capitalized all options in the dispatch's saved types dropdown to match consistent formatting
Multi-Unit: Tone Board - Fixed an issue preventing users from attaching multiple units at a time to the tone board via the active units context menu

3.20.1 9/7/2021

Self-Dispatch - Save State - Unit's self-dispatch mode will now save and persist through a refresh/restart
Settings - Sound Volume Save - System volume now saves and persists
FR Translations - Update - Updated French translations
Tablet - Window Sizes and Dragging - Fixed an issue causing the in-game tablet to lock and misplace windows on re-join, requiring a layout reset to resolve. This had to do with a screen size detection plugin malfunctioning
Unit Groups - Creation - Fixed an issue preventing unit groups from being created via right-click
Multi-Unit - Drag to Lookup - Fixed an issue preventing users from dragging multiple selected units or groups to a lookup window to send them the search results

3.20.0 9/6/2021

Active Units - Multi-Select - Active units and unit groups can now be multi-selected for faster management. Multi-select also allows you to drag and drop multiple units or groups at once
DBSync - External Keys - DB Sync now supports mapping a unique license or vehicle registration ID to an external table containing the proper character ID
API: Add Call Note - Added a new API endpoint to add call notes
API: Detach Unit - Added a new API endpoint to detach units from dispatch calls
Push Event: Unit Panic - Added a server push event for unit panic events
Bodycam: Auto-correct Toggles - Improved the bodycam data fields to auto-toggle on if listed but not enabled
Call Note: UTC Timestamp - All dispatch call notes now have timestamps appended to them in UTC
API Kick/Ban - Add username to log - Improved the kick/ban log to include the username when performed via API
DB Sync - Multi-Table Search by Val - Fixed an issue causing custom lookups with DB sync failing when used with a multi-table civilian config
DB Sync - MySQL v8 Syntax - Fixed an issue causing DB Sync to fail on MySQL v8+ due to a syntax change
Bodycam: Timestamp - Fixed an issue causing the bodycam timestamp to glitch on restart

3.19.0 9/1/2021

Community Logs - Communities can now search an in-depth logging history for abuse and other user actions.
Overlay: Unit Agency - Fixed an issue causing the unit agency to not properly display
Overlay: Department Label - Fixed the department unit update label from being plural.
#4999 Sonoran CAD Bug Report - Discord webhooks for removed records still get sent even when the sliders are only set to new records only

3.18.1 8/22/2021

Stream Overlay: Bodycam - The stream overlay now allows users to easily self-host a customized bodycam webpage to be visible on their livestream.
Unit Group - Drag-and-Drop Unit Changes - Units in a group can now be dragged-and-dropped to another group.
Unit Group - Edit Name Dispatchers can easily update a unit group's name by clicking on the group name in the active units panel.
Pined Tabs - Open Event - Fixed an issue where navigating back to the community menu, then back to an emergency page would cause the pinned tab open event to not properly register.
Permission Key: Modify Street Signs - Fixed an issue causing the modify street signs permission key label to not display properly.
Desktop - Discord Presence - Resolved an error thrown when toggling off Discord rich presence.

3.18.0 8/21/2021

Dispatch Lookup - Send to Unit - Dispatchers can send lookup results to specific units. This also supports shortcuts from the active units list and drag-and-drop support.
Stream Overlay: Multi-line - The stream overlay custom text files now has multi-line support.
Twitch Bot - Notes - The livestream bot can now be configured to send chat messages when a new call note is added.
Twitch Bot: Lookup Events - The Twitch bot can now be configured to send chat updates when the user runs a lookup in the CAD.
Tone Files - Formats - Added wav, mp4, and m4a audio file format support to the tone board uploader.
Self-Dispatch: Auto Attach - When creating a new dispatch call via self-dispatch, it will automatically add your identifier to the call.
Server IP - Optional Outbound Field - Community servers can now specify a different inbound/outbound IP address. This is useful for communities on shared hosts, who authenticate and send data on a different IP than they receive push events and traffic to their server.
Stream Overlay - Copy Fields - Users can now more quickly create custom text files by copying field keys right from the UI.
Stream Overlay: Custom Text Safety Checks - Added safety checks to the custom overlay text files to ensure the user has every field enabled.
API ID - Trim Spaces - Added a check to ensure API IDs are not added with leading or trailing spaces.
Lookup - Header - Fixed an issue causing the lookup window to not display the updated header when searches are ran.

3.17.0 8/13/2021

Stream Overlay and Twitch Bot - Our new stream overlay allows you to customize and display your active unit information, call information, and more to your Livestream. Our Twitch bot automatically sends customizable chat updates when your unit information or attached call info is updated.
French Translation - Added French translations.
Active Units - Multiple Sessions - Implemented an improved active unit handler, fixing edge cases where users with multiple sessions would log their unit out even though they're still logged in on another device.
Disable Highlighting - Disabled text highlighting for a better drag-and-drop experience.
Desktop - Livemap Window - For desktop users, the live map now opens in a proper popup window if you click the "External" icon.
Pinned Tabs - Top Taskbar - Fixed an issue causing user's pinned tabs from loading if their taskbar position was set to the top of the screen.
Mobile - Switch Servers Popup - Fixed an issue on mobile devices preventing a user from changing their server.
Call Editor - Detach and Attach - Fixed an issue where removing units from a call via editor, then adding them back would attach and immediately detach them.
Active Calls - Search by ID - Fixed an issue preventing users from searching in the active calls list by call ID.
Active Calls - Detach - Fixed an issue where users in self-dispatch mode would not see call detachments if they cleared themselves via the active calls window.
Custom Login Page - Direct to Community - Fixed an issue causing custom login pages to not take the user directly to the community menu on login.
Record Center Preview - Capitalization - Fixed an issue causing record previews in the record panel to not be displayed as all uppercase letters.
Dispatch Saved Types - Backspace - Fixed an issue where backspacing on the dispatch's saved call types would remove or freeze the call editor from the UI.

3.16.1 8/1/2021

Smart Signs - Push Events - Fixed an issue with smart signs when capital letters were sent from the CAD, resulting in blank spaces on in-game signs.
Lookup - DB Sync - Fixed an issue causing some DB Sync lookups to fail if you had only license or only vehicle mapping enabled.
Close Dispatch - Fixed an issue where closing a call through a manual call update would fail.
Record Searchable Fields - Trim Spaces - Fixed an issue where searchable record fields were not having leading or trailing spaces trimmed.

3.16.0 7/31/2021

Tones - Specific Users - The tone board now has a selector to play tones to specific units, groups, dispatch calls, agencies, departments, or subdivisions. You can also click on the active units number/group/agency/department/subdivision or the active call for a dropdown shortcut to add these to the tone board play to selector.
Dispatch Call - Presave Data - Dispatchers can now save filled call templates for use with common calls.
Lookup - Disable Partial - The lookup window now has a partial search toggle, allowing you to run a standard partial search or filter an exact search term. Your preference is also saved to the local device for any new windows.
Active Units Dropdown - Icons - Added icons to the active units dropdown menu for faster selection.
API: Partial Lookup - The API lookup by name/plate now includes a partial flag to toggle a partial or exact search. If undefined, a partial is assumed as default.
Community Customization - Save - Fixed an issue causing the community customization info to not properly save.
Civilian Records - No Partial - The civilian lookup panel ensures all lookups are exact, preventing partial matches from showing.
Custom Record - UID Values - Added additional safety checks and sanitization for communities that somehow manage to manually add dashes to custom field UID values, resulting in an SQL syntax error if the fields are indexed for unique or custom search values.
Smart Signs - Cancel Edit - Fixed an issue causing the smart signs UI to duplicate the sign if you cancel an edit. Resulting from Lua's 1 based indices vs JS 0 based indices.
Tone Board - Hotkey - Fixed an issue causing the tone board hotkey from not properly detecting if a tone board already existed, resulting in a new window every time.
Dispatch Call Notes - Reversed - Fixed an issue causing the call notes for dispatch to be in reversed history for the initial load in.
Checkout - Set Community ID - Fixed an issue where the popup to set your community ID after purchasing a subscription would be blank.

3.15.1 7/30/2021

Server Selector - Fixed an issue where navigating to and from the community menu would display the incorrect server in the server selector, even though you were properly logged into the correct one. Change Server - Login - Fixed an issue where an undisposed event handler would be registered multiple times with menu navigations, causing multiple unit logins when switching your server. Active Units - Dispatch Flag - Fixed an issue causing units to display the dispatch flag incorrectly in the active units panel.
Modify Signs Permission - Translation - Fixed an issue causing a translation file error with the modify signs permission label.

3.15.0 7/27/2021

Street Signs Integration - Our new street signs integration plugin and UI allows you to modify in-game street signs right from the CAD! This is visible for dispatchers and users in the DMV page.
Street Signs - Permission - Added a new permission to allow users to modify street signs in the dispatch and DMV page. By default, only the CAD owner will have this new permission.
Discord RPC - The desktop application now adds rich presence info and buttons to your Discord profile. You can customize the invite link to your Sonoran CAD community, or your community's Sonoran CMS new member application.
Dispatch Signal - Draggable Window - Desktop users only now can access the dispatch signal window as a draggable/lockable window and not a popup modal.
Tabs - Quick Close - On tabs with multiple minimized windows, the preview will display a close button to more efficiently close multiple tabs.
Push Event: Detach Unit - The EVENT_UNIT_DETACH now may contain a plural 'idents' field as opposed to a single 'ident' field when more than one unit is being detached at a time.
Custom Login Pages - Fixed an issue causing requests for custom login page info to fail.
Record Lookup - Fire and EMS - Fixed a permissions error preventing fire and EMS users from searching for a character or vehicle to import into a custom record.
10-Codes CSV Upload - Null Check - Added a null/empty string check when importing and setting 10-codes.

3.14.2 7/18/2021

Permission Update - Auto Update UI - Editing a user's permissions will now live update these without requiring them to refresh their page. This makes the Discord permissions sync feature more seamless.
Discord Bot - Multi-Server - The Discord bot now supports permission sync with multiple different servers for a single community.
Discord Bot - linkme - The discord bot now automatically runs the /syncme command after linking your secret ID.
API: set_streetsign_config - Added an endpoint to set the street sign configuration in the CAD. This is for an upcoming integration plugin.
API: update_streetsign - Added an endpoint to update street signs in the CAD from in-game. This is for an upcoming integration plugin.
Push Event: event_streetsign_updated - Added a push event for when street signs are updated in the CAD. This is for an upcoming integration plugin.
Push Event: event_record_add - Added a push event when records are added.
Push Event: event_record_edit - Added a push event when records are edited.
Push Event: event_record_remove - Added a push event when records are removed.
Websocket Connection - Keepalive - Added a manual keepalive heartbeat from server to client in attempt to prevent Cloudflare from closing some user's websocket connections, resulting in an unstable connection.
Mobile Taskbar Focus - The taskbar search no longer auto-focuses for tablet devices.
Secret ID - Default Blank - Fixed an issue causing the secret ID to be blank for some users, requiring a refresh before utilizing it.
Dispatch Update Call - Duplication - Fixed an issue where dispatchers would see call notes duplicated if they manually updated the call.

3.14.1 7/14/2021

Server Selector - Loading - Added a loading screen when switching servers to prevent confusion on delay.
Server Selector - Fixed an issue causing a failure when trying to switch servers in the fire, police, ems, or dispatch page.
Custom Records - Image - Fixed an issue causing the custom record image field to not display the uploader.
Taskbar - Pinned Windows - Fixed an issue causing the pinned windows on the taskbar to not load after more than one visit back to the community menu.

3.14.0 7/11/2021

Start Menu - Quick Search - The start menu now has an auto-focused search box to filter window options for all mid-sized screen users and larger.
Hotkey: Start Menu - Added a new configurable hotkey to toggle the start menu.
Vue 3 - Migrated the UI to Vue JS 3. This should also resolve issues some users experienced with the in-game tablet.
Classic Layout - Default Enabled - The "Classic Layout" is enabled by default for all users. This can be disabled in the customization menu to allow users to customize their dispatching panels into different locations.
Desktop Header - Updated the desktop header bar to match the new header in emergency pages.
New Record - Conflict with Lookup Filters - Fixed an issue causing the saved lookup preferences from also impacting the available records types in the records center.
Tone Board - Direct Upload - Fixed an issue causing direct upload of audio files to the dispatch tone board from properly setting the new URL.
Window Layout - Fixed issues with custom window layouts not saving or persisting properly.
Self-Dispatch: Logout - Fixed a permissions issue for self-dispatchers logging out.
Image Uploader - Name - Changed the file uploader to no longer be labeled as only an image loader.
Admin - Get Owner - Fixed an issue preventing the admin page's "Get Owner" button from properly searching for the record owner.
BOLO Update - Fixed an issue where updating or removing a bolo would not automatically update this in the other unit's screen without re-opening the window or searching again.

3.13.0 7/1/2021

Dispatch Tone Board - Custom audio tones can be configured and played by dispatchers. Customizations include the label, icon, color, and sound file.
Hotkey - Tone Board - A global hotkey can be configured to open the dispatch tone board more quickly.
Custom Audio Notifications - Customizable audio notifications for new dispatches, panics, alerts, and more.
Active Units - Show/Hide Dispatchers - The active units panel now has a toggle to show or hide dispatchers.
Custom Records - ID Field - Custom record fields can now have the type set to "ID" to display the unique record ID.
Tone Board - Webhook - Added a Discord webhook to log when a user plays a tone from the tone board.
Lookup Filter - Save Preferences - Lookup filter preferences are saved locally and won't reset when you open a new or different lookup window.
Text-to-speech - Toggle - Toggle off text-to-speech in the settings menu.
API: get_active_units - onlyUnits flag - The get_active_units endpoint now has an optional onlyUnits flag to show or hide dispatchers. Unit objects also contain an isDispatch boolean flag.
Dispatch Panel - Table UI - Small UI changes and improvements to the dispatch panels with tables and their column customization, search boxes, and buttons.
S3 Hosting - All image and file uploads have been migrated from AWS S3 to Sonoran S3.
Discord Bot IP - Bad Request Whitelist - SonoranBot API failures no longer count towards a community API blacklist. Ex: verify_secret
Tablet - Resize Window Save - Fixed an issue with the in-game tablet not being able to detect as a non-mobile user agent - locking draggable windows and not persisting the saved size preferences.
Custom Records - Disabled Scrollbar - Fixed an issue where text-areas couldn't be scrolled if the record editing was disabled. (Ex: Viewing a civilian record)
Unit Group - Remove from Call - Fixed an issue preventing unit groups from being removed from a dispatch call.
Dispatch Call - PDF - Fixed an issue preventing call logs from printing to PDF.
Records Webhook: Charges - Fixed an issue causing record webhooks to not display values from the "Charges" sections.
SSO - Change Username Push Event Improved username update handling with the SSO system.
Unit Group - Add to Call - Fixed an issue causing the unit group's "Add to Call" button to be all white.
Dispatch - Change Server - Fixed an issue where dispatchers changing servers would still show on the active units list for other dispatchers.

3.12.3 6/16/2021

PDF - Chinese Localization - PDF records now support Chinese localization, and will print in a font supporting Chinese characters if the user has their language set to Traditional or Simplified Chinese.
Self Dispatch - Notes - Fixed an issue where self-dispatchers attaching to an active call would not receive new notes on the call until a page refresh was executed.
Hide Secret ID Field Until Logged In - Fixed an issue where the secret ID field was still displayed as blank before logging into a specific community.

3.12.2 6/14/2021

Report Window - Save Last Window's Size - Resizing a popout window will save this width and height preference for when you open a new window of this type.
Account Secret ID - User accounts now have a "Secret ID" similar to an API unique to each community account. These can be used with third party/external applications for authentication/security (Discord bot role sync) and can be refreshed/regenerated in the UI if ever leaked.
Custom Map Images - File Size - Increased the file size limit of custom map images from 25 to 30MB each.
Self-Dispatch 911 Calls - Fixed an issue causing self-dispatchers to not receive incoming 911 calls properly.
API: set_api_id pushNew Flag - Fixed an issue in the set_api_id endpoint preventing the pushNew flag from working properly.

3.12.1 6/10/2021

Custom Login Page: DNS Record - Custom login pages can now be created by adding a simple CNAME DNS record. Communities no longer need to host an iFrame webpage. The old query strings (other than community ID) have also been depreciated.
Webhook Footer - Server ID - Added the server ID metadata to specific webhook footers for the discord bot parsing.
Active Units - Sorting - Fixed an issue where some columns of the active units table wouldn't properly sort.
Custom Search Types - Disable on Civilian - Fixed an issue where custom search types were displayed in the civilian menu.
PDF: Margins - Fixed an issue with PDF records sometimes running outside of the page margins.
Self Clear - Disable without Perms - Fixed an issue where units could not self-clear from a call unless they had dispatch or self-dispatch permissions.
API: Unit Status - Fixed an issue with the unit status API endpoint not updating the status on the user's local UI.

3.12.0 6/5/2021

Custom Records - Duplicatable Section - Custom record sections can be toggled as "duplicatable" allowing the user to duplicate a section (similar to charges) while filling out the report.
Custom Records - Unique Field - Custom records now support enforcing unique fields for any non-db sync record type.
Custom Records - Address Type - Custom records now have an "Address" type that will display a dropdown containing the community's imported spreadsheet of street addresses. This auto-filters as you type, just as the dispatch editor does.
Custom Records - Removed Vehicle Limit - Custom records can now have an unlimited number of 'plate' UID fields that will index and make the vehicle plate searchable. (Previous limit of 3 vehicle sections per record.)
Custom Records - Removed Civilian Limit - Custom records can now have an unlimited number of 'first', 'last', and 'mi' UID fields that will index and make the character names searchable. (Previous limit of 3 civilian sections per record.)
Emergency Call Columns - Persist - Modifying the displayed column preferences on the emergency calls list will persist past a refresh on a local device.
Active Calls Columns - Persist - Modifying the displayed column preferences on the calls list will persist past a refresh on a local device.
Active Units Columns - Persist - Modifying the displayed column preferences on the active units list will persist past a refresh on a local device.
Custom Records - Required Field Color - Changed the custom records required field text from red to orange for higher contrast.
API: Set Call Primary - Heavily optimized the set_call_primary API endpoint for quick unit tracking updates via Dispatch Notify. Added an additional required 'trackPrimary' field to the call to toggle the unit tracking.
API: Set Call Postal - Heavily optimized the set_call_postal API endpoint for quick unit tracking updates via Dispatch Notify.
Character Tab: Icon - Fixed an issue causing the character Windows minimized tab to not have an icon.
Live Map - Self DIspatch - Fixed an issue where units with self-dispatch enabled would be marked as a true dispatcher, preventing them from being shown on the live map.
Unit Group Columns - Dropdown - Fixed an issue where the active units group column dropdown had incorrect column values.

3.11.2 6/1/2021

Dispatch Classic Layout - Fixed an issue where the dispatch classic layout would be off on full-sized desktops.
Server Selector - Fixed an issue where the server selector wouldn't work in the fire, EMS, and police pages.
Electron: Top Taskbar Cover - Fixed a bug in the desktop application where the taskbar would cover the application header.
Active Units - UI - Fixed an issue with the UI causing active units to not properly be displayed when new units login.

3.11.1 6/1/2021

Tab: Labels - Tabs can now have their text and icon displays toggled. By default, desktop users have tabs that display both the icon and text with mobile users only seeing the icon.
Dispatch: Unit Identifier - Dispatch now has a unit identifier panel by default.
Dropdown Filter - Backspace - Improved dropdown auto-filtering to properly re-compute options after backspacing from a typo for dropdowns like; dispatch address, code, primary unit, and charge title.
Window: Bring to Top - Added a "Bring to Top" menu option when right-clicking a locked window.
Penal Code - Value Safety Checks - Adding or modifying penal codes will ensure that any property is not set to NULL.
Unit Status - Mobile Enhancement - Improved the unit status buttons display style for mobile users.
Mobile: Auto Height - Improved the automatic height calculation of windows for mobile users.
Start Menu: Icon - Fixed an issue causing the start menu's Sonoran CAD icon from not properly displaying in apps.
iOS Padding - Fixed an issue where the taskbar wouldn't add extra padding to account for iOS "safe" areas.
Active Units Tab - Fixed an issue where the active units tab had no icon and would not automatically open a new units window if it was pinned with no actively minimized windows.
Mobile: Side Taskbar - Fixed an issue for mobile users where the taskbar would be closed and unable to be reopened if they customized it to be displayed on the side.
Live Map: Dynamic Start Menu Display - Fixed an issue where the live map option in the start menu would still display even if the live map was disabled in the admin menu.
Tabs: Navigation - Fixed an issue where old tabs would still be minimized if you navigated to the menu and back from an emergency services page.
Active BOLOs: Status - Fixed an issue where BOLOs with the status set to CLOSED would still be displayed in the active BOLO window.
Active Calls: Tab - Fixed an issue where the active calls tab had no icon and would not automatically open a new units window if it was pinned with no actively minimized windows.
Emergency Calls: Tab - Fixed an issue where the emergency calls tab had no icon and would not automatically open a new units window if it was pinned with no actively minimized windows.

3.11.0 5/29/2021

Discord Bot - Released a new Discord bot to sync Discord roles with CAD account permissions automatically. Kicking and banning a user from Discord will also preform those actions on the user in the CAD.
Emergency Services - Layout Overhaul - The UI for police, fire, EMS, and Dispatchers has been overhauled to a more "Desktop" style theme. This includes a new taskbar with customizable positions. In addition, tabs of the same type now condense together. Tabs can be pinned in addition to dragging and dropping their positions. Pinned tabs will save their position past a reload.
API: set_call_postal - Added an endpoint to update a dispatch call's postal code.
API: set_call_primary - Added an endpoint to update a dispatch call's primary unit.
Wraith - Custom Fields - Communities can now customize the status and expiration date fields to be displayed in the Wraith lookups with custom records.
Dispatch - Update Call Clearing Editor - Dispatch updating a call no longer clears the call from their UI editor.
Chinese Translation Labels - Changed the Chinese symbols for the simplified and traditional Chinese translation menu options.
Dispatch Call Notes - Fixed an issue where dispatchers were not getting call notes if the call was not being viewed. Causing them to override the existing call notes if they opened a new existing call and updated it.
Dispatch Call Edits - Fixed an issue where dispatchers were not receiving updated call data if a self-dispatcher updated information.
Department Editor - Error Codes - Fixed an issue with invalid i18n translations in the department editor for error codes.
DMV Pending - Default Filter - Fixed an issue where the PENDING records section for DMV had the default filter set to only DMV records, hiding vehicle and license records.
Wraith Plugin - Closed BOLO Records - Fixed an issue with the Wraith V2 integration plugin where "Closed" BOLO records would still be displayed.
Call Close - Detach Units - Fixed an issue where units were not being detached in the database when a call was closed.
Admin - Lookup Window - Fixed an issue where the "Get Owner" lookup window in the admin menu could not be dragged above the accounts table.

3.10.3 5/14/2021

SQL Connections - SQL connections are now cleared back to the connection pool in-between data processing to free up idle connections as quickly as possible.
Dispatch Address - Type to Filter - Fixed an issue causing the dispatch addresses dropdown to not support live filtering via text input.
Record Editor - Copy Link - Fixed an issue where the copy record link button was not showing in the record viewer.
Record Editor - Get Owner - Fixed an issue preventing the "Get Owner' button from displaying in the admin menu's lookup tool.
Dispatch - Note Updates - Fixed an issue where dispatchers could not receive new call notes.
Dispatch Preview - Scroll Description - Fixed an issue where previewing a dispatch call wouldn't allow you to scroll down on the description.
Android - Settings Menu - Fixed an exception for android devices preventing the settings modal from displaying.

3.10.2 5/12/2021

Window Layout - Classic Version - Added a toggle in the settings modal to enable "Classic Layout" removing the ability to customize your layout, reverting back to the older static, responsive layout.
Quick Dropdown Menu UI - Improved UI style and consistency for the quick action dropdown menus on the active dispatch calls, units, and emergency call windows.
Capacitor - Disable Stripe Library - Stripe library now only loads on the billing page, removing this from mobile capacitor builds.
Tablet - Allow Window Drag - Popout window dragging is now re-enabled for tablet users.
Self Dispatch - Duplicated Calls - Fixed an issue where self dispatchers would see new dispatch calls duplicated if they are initially attached.
Set API ID - Fixed an issue causing an error when new accounts set their API ID.
Self Dispatch - Close from Active Calls - Fixed an issue preventing users in self dispatch mode from closing an active call.
Electron - Reload Exception - Fixed an issue on the desktop version causing reloads from resetting a window layout or changing the language translation to throw a popup exception.

3.10.1 5/12/2021

Tablet - Auto Set API ID - The tablet resource now automatically sets a users API ID in the CAD when they login.
Quick Resize - Lock Button - Added an additional "Lock Window" button while quick-resize is enabled, preventing users from having to right-click to access the lock menu.
Dispatch - Call Notes - Fixed an issue where units couldn't see new call notes until they refreshed the page.
Primary Unit - Display - Fixed an issue causing the primary unit on the dispatch call editor to not properly work.
Popout Windows - Save Size/Position on Minimized - Fixed an issue causing some popout windows to not save their size and positioning after being minimized.
Self Dispatch - Create Call - Fixed an issue where users with self-dispatch enabled couldn't create a new dispatch call.
Self Dispatch - Edit Call - Fixed an issue where users with self-dispatch were unable to edit an existing dispatch call.
Self Dispatch - Clear Call - Fixed an issue where users with self-dispatch were unable to clear themselves from a call.
Call Viewer - Initial Width - Fixed an issue where the initial unlocked placement of the call editor was 1px too wide for the police, fire, and EMS pages.
Record Viewer - Fixed an issue with records having a blank space below the bottom action ba