๐Ÿ“‹
Changelog
View the latest changes to Sonoran CAD!

Roadmap

Changelog

3.28.2 05/13/2022

New
Fixed
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

New
Fixed
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

New
Changed
Fixed
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

New
Changed
Fixed
#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.
EVENT_REMOVE_911 - ID Array
  • The EVENT_REMOVE_911 push event has changed the callId property to a callIds array.
EVENT_DISPATCH_CLOSED - ID 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

New
Fixed
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

New
Changed
Fixed
Live Map - Custom Blips
  • Custom blips can now be added, edited, and removed in real-time via API endpoints.
API: SEND_PHOTO
  • 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

New
Changed
Fixed
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

New
Changed
Fixed
#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

New
Fixed
#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.
API SET_SERVERS - Deploy Map
  • Fixed an issue with the SET_SERVERS endpoint not properly deploying the new live map.

3.25.2 03/04/2022

New
Changed
#7615 Custom Records - Unit Location Field
  • The UNIT_LOCATION custom field type can be used to autofill the unit location on a new record.
API: GET_IDENTIFIERS
  • The new GET_IDENTIFIERS endpoint allows you to retrieve all unit identifiers for a user and view the currently selected one.
#7066 API: SET_IDENTIFIER
  • 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

New
Fixed
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.
EVENT_TONE Push Event
  • 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

New
Fixed
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

New
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

New
Fixed
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

New
Fixed
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

New
Fixed
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

New
Fixed
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
Notepad
  • 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

New
Fixed
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

New
Changed
Fixed
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

New
Changed
Fixed
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

New
Changed
Fixed
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

New
Changed
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

New
Fixed
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

New
Fixed
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

New
Fixed
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

New
Changed
Fixed
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

New
Fixed
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

New
Changed
Fixed
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

New
Changed
Fixed
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

New
Changed
Fixed
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

New
Fixed
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

New
Fixed
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

New
Changed
Fixed
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

New
Fixed
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

Fixed
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

New
Fixed
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

Fixed
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

New
Changed
Fixed
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

New
Changed
Fixed
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

New
Fixed
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

New
Changed
Fixed
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

New
Changed
Fixed
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

New
Fixed
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

New
Change
Fixed
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

New
Fixed
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

New
Changed
Fixed
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

Fixed
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

New
Changed
Fixed
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

New
Changed
Fixed
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

Changed
Fixed
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

New
Changed
Fixed
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

New
Fixed
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 bar.
Small Screens - Increase initial width - Improved and fixed issues with some popout windows being too small by default.
Civilian - Popout Windows - Fixed an issue with civilian popout windows being stuck below the character UI.
Dispatch Login - Security Warning - Fixed an issue where dispatchers logging in would make a get call request resulting a security warning without the police, fire, or EMS permission.

3.10.0 5/10/2021

New
Changed
Fixed
SSO Accounts - All user accounts have been migrated over to a general "Sonoran" account. This allows for a centralized place to edit your account info, view your billing, and more.
Custom Layouts - Users can now fully customize the placement of any window and lock them to create a custom layout. This includes all default dispatching windows and additional popout windows. Layouts are also saved locally to the user's device.
Dispatch Editor - Drag and Drop Units - Active units can be dragged over to the call editor to more easily attach them.
Active Units & Groups - Drag and Drop - Units can be dragged and dropped into a new or existing group.
Dispatch Call History - Drag and Drop Units - Units and unit groups can be dragged and dropped directly to an active call, removed from a call, or dragged from one call to another without having to open the full call in the editor.
Dispatch Call Note: Attach/Detach - Dispatch calls now receive a note when a unit or unit group is attached or detached.
Emergency Calls - Drag and Drop - Emergency/911 calls can now be dragged and dropped from the call list to the dispatch editor.
Status Change - Dispatch Call Note - Units attached to a dispatch call will send a note to the call when updating their status.
Custom Search - Partial Matches - Custom search types now allow for partial searches.
Translation: Chinese - Added Chinese translations to the CAD settings.
Translation - Traditional Chinese - Added Traditional Chinese translations.
Login - Emit Session Data - Data is now emitted to the page's parent (for iframe) allowing the username and session ID to be captured for authentication with the auto API ID set feature.
API: Set API ID - The set API ID endpoint now allows for an array to be sent along with specification to push or overwrite the existing account IDs.
Active Calls - Postal Column - The active calls list now has an optional field to view the call's postal field.
BOLO Records - Status Field - The custom records UI now requires BOLO records to contain a "Status" field.
Civilian 911 - Modify Caller Name - Civilians can now remove their name in the 911 caller to remain anonymous.
Push Events - Server Port - The push event system now utilizes your existing game server port. This reduces the number of open ports your server requires. Push events are now sent to http://ip:gameport/sonorancad/event. The framework will automatically forward events to this new path if you have not updated your port in the CAD admin panel.
API - SET_ACCOUNT_PERMISSIONS - Separated the account permission arrays in the SET_ACCOUNT_PERMISSION API endpoint to allow a caller to both add and remove specific permissions in a single call. Also, added an additional option to specify the user by their CAD username as opposed to only their API ID. Additionally, added an option to toggle the account status from PENDING to ACTIVE.
API: NEW_CHARACTER Response - API NEW_CHARACTER responds with the full JSON character record built.
API IDs - Array - API IDs are now stored as an array and allow for more API IDs to be stored. The UI has also been improved and will auto-save.
API: Unit Push Events - Push events including unit updates no longer contain the full unit structure, but instead include the unique identifier ID.
API: Change Unit Status - The change unit status endpoint now requires a server ID argument.
Live Map - Custom Upload - Fixed an upload limit issue causing some custom live map uploads to fail.
Remove Record - Fixed an issue preventing users from removing a record due to an incorrect UUID placement.
Default Records - Flags - Fixed an issue where the default record type templates contained records with hidden flags.
911 - Text to Speech - Fixed an issue where the webpage text to speech for "Incoming 911" would fail.
Record - Get Owner - Fixed an issue where searching for a record's owner would fail on types other than a civilian.
Custom Search - Case Sensitivity - Fixed an issue where custom searches were not case-insensitive and would fail on searches with lowercase DB values.
Unit Location - Duplicate API IDs - Fixed an issue where unit locations would not update via API if multiple user accounts had conflicting API IDs.
DB Sync/Merge Primary Key Column - Resolved issues with DB Sync/Merge mapping manual values properly if the user had a primary key column name set as a reserved MySQL character. Ex: '#"
DB Sync/Merge - Character ID vs Primary Key - Resolved an issue with DB Sync/Merge if the community has a different character unique ID that is not the primary key column.
Character Records: Validation - Fixed an issue where custom character validation was not being processed for required fields.
Custom Records: Supervisor Status - Fixed an issue where custom records with a status field in a section before fields requiring a supervisor may not be indexed properly as requiring supervisor permissions.
DBSync - Character Multi-Table - Fixed an issue where database sync would fail to select the correct "owner ID" when using multiple character tables.
Dispatch Address Filter - Mistype - Fixed an issue on the dispatch address field filtering where backspacing after a misspelling would fail to re-correct the filtered list.
Lookup - Closed BOLO - Fixed an issue with the lookup UI preview showing a BOLO's status as 0 or 1 instead of "Closed" and "Open".
Call Note - Permission - Fixed an issue where units could not add a note to the call unless they were in self-dispatch.
Clear Subscription - Handle non-existing subscriptions - Fixed an issue where clearing a subscription's ID on an expired subscription would fail.
Police Supervisor Panel - DMV Records - Fixed an issue where the police supervisor panel would also show DMV records that required supervisor completion.
Favicon - Alternate Sizes - Fixed an issue with alternate sized favicons not displaying and causing a mixed-media SSL warning.

3.9.0 2/9/2021

New
Fixed
Lookup - Custom Search - Communities can now create custom lookup search types (Ex: SSN on a civilian, license firearm number, etc.). Search types can also specify a mask format, work with DB Sync, DB Merge, and all custom records.
Custom Records - Custom Search Field - Custom records can now have a custom searchable field set by using the UID field.
Logging - User UUID from Validation - Enhanced user logging for increased security and debugging.
API - GET_ACCOUNT - Search By Username - The GET_ACCOUNT API endpoint can now use the username in addition to the API ID.
DB Sync - Port Length - Fixed an issue where DB Sync port numbers were limited to only 5 integers instead of 6 in the UI.

3.8.1 - 2/2/2021

New
Dispatch - Auto Street Names - The address section on dispatch calls is now a drop-down with auto-suggested street names as you type. You can customize the list of street names in the admin menu by uploading a CSV or JSON file.

3.8.0 - 2/1/2021

New
Geographical Settings - Emergency Code - Improved the geographical setting section's emergency code (911) to be fully customizable.
Geographical Settings - Currency - Geographical customization now allows you to change the currency delimiter from $ to any other currency symbol.
Geographical Settings - 10-Codes - Geographical customization allows you to customize references of "10-Codes" to other phrasing.
Geographical Settings - Penal Codes - Geographical customization allows you to customize references of "Penal Codes" to other phrasing.
10-Codes - Import/Export CSV and JSON - 10-Codes can now be imported and exported via CSV and JSON.
Penal Codes - CSV Export - Penal codes can now be exported to a CSV file as well.
Change Community ID - Update Subscription - For all newly created subscriptions, updating your community ID will auto-update the community ID on your Stripe subscription as well.
Billing - Set Community ID - When setting the community ID of a subscription in the billing page, the options are restricted to communities you are already in.

3.7.4 - 1/29/2021

Fixed
Lookup - Custom Records Tab -Fixed an issue causing the reports result section in the lookup window to not properly display the results table.

3.7.3 - 1/29/2021

New
Changed
Fixed
Penal Codes - CSV Import - Communities can now import all penal codes directly from a CSV spreadsheet file.
Translation - Russian - Added Russian translations.
Custom Community ID - Starter - Community IDs are now randomly generated and require the starter plan or higher to customize. This helps ensure less community ID conflicts.
Stripe - Dynamic Tax Rates - Stripe checkout sessions now automatically charge sales tax based on location, rather than requesting the user's ZIP code in the CAD prior.
Discord - Webhook URL - Fixed an issue requiring Discord webhooks to only work with discordapp.com in the URL and not discord.com.

3.7.2 - 1/25/2021

New
Changed
Fixed
Live Map - Custom Map - Communities can now upload custom map image files if they are using a custom live map.
Requests - Ensure no Username Spoof - Improved a possible security exploit where a user could spoof their username to confuse community webhook logs, making it more difficult for communities to properly stop misuse.
Custom Records - Lookup Preview Columns - Fixed an issue where custom records with the same name but a different ID would cause a key conflict in the lookup preview.
Live Map - Static URL - Fixed an issue causing the toggle "Static URL" option for the live map to be disabled.
NSIS Installer Update - Updated the Windows Desktop NSIS installer to resolve an issue where users who removed the app without using the uninstaller would have the installer freeze while re-downloading it.
DB Sync - Primary Key Detection - Fixed an issue where database sync could find multiple primary keys in user defined tables if the MySQL database had multiple schemas with the same table name, but different primary keys in each.
Remove Character - Fixed an SQL error causing some users to be unable to remove their characters.
Webhooks - Multiple Embeds - Discord webhooks that failed due to containing more than 25 fields have now been broken down into multiple embeds.
Unit Locations - Fixed an issue where unit locations may not be updated if the last unit object in the API call contained an invalid API ID or had a different server ID selected.

3.7.1 - 1/15/2021

New
Fixed
Payment - Set Community ID - Added checks to ensure a payment can not have it's community ID set if the community ID already has an existing subscription. This prevents someone from downgrading another community ID if they switch their subscription's community ID back and forth.
Payment - No Community ID Set - Added an additional, clickable warning badge in the payment center when a user has a subscription without a community ID set.
Records Center - Pending and Supervisor - Fixed an issue in the records center where completing a supervisor or pending record would not auto-update the supervisor/pending panel to remove it and required a search refresh.
DB Merge - Local Edit - Fixed an issue where saving a record with database merge would add a bugged local duplicate of the edited record instead of updating the existing one on the UI.
DBSync - Primary Key Detection - Fixed issues and improved handling for ensuring database sync tables contain a proper primary key.
DB Merge - Primary Key - Fixed an issue where saving database merge records was not using the new unique primary key system and would show merged/saved values on all license and vehicle registrations owned by that character.
Middle Initial - Check Length - Fixed an issue where submitting custom reports with a middle initial field larger than one letter would fail to save in the database.

3.7.0 - 1/8/2021

New
Fixed
Custom Records - Linked Records - Custom record templates can now have a "linked records" section added. You can now click the "copy link" button in any record header and "paste link" in the linked records section. Linked records can be clicked to cross-reference reports, characters, and more.
Sonoran Servers - Bundle and Save - Sonoran Servers customers can now link their VPS plan in the billing center and save 30% every month!
Lookup Results - Quick Search - On a lookup window's returned results, result rows with a name or license plate have a quick search icon to open a new lookup window with that name or plate.
Items Per Page - Save Preferences - The "Items Per Page" for lookup tables, penal code tables, active units, 10-codes, and others will now locally save your selected preference.
Dispatch - Track Primary Unit - The dispatch UI now has a checkbox to track the primary unit. When paired with the dispatch notify plugin, units in-game will be auto routed to the current position of the primary unit. This is useful in a chase, where units can have their GPS routed to the lead unit in real time. NOTE: This additional plugin functionality is still in development.
Electron - Settings Modal - Fixed an issue making it difficult to close the settings modal on the Windows desktop application.
Penal Codes - Manual Sort - Fixed an issue causing penal codes to not properly save their position in the list when manually sorted and saved.

3.6.0 - 12/30/2020

New
Changed
Fixed
Hotkeys - Lookup - Hotkeys can now be configured to open a new lookup window.
Hotkeys - Record Center - Hotkeys can now be configured to open the records center.
Custom Records - Custom Flags - The flags section for custom records is now customizable for every individual custom record type.
Custom Records - Label - Custom records now have a "label" type available in the record template editor.
PDF Records - Checkbox - If a custom record has a checkbox that does not have a label set, the PDF will show an "X" if it's checked.
Account - Change Email - Users can now update their account's email address in the account settings menu.
Reconnection Handling - Components - Improved reconnection handling for components and other sub-modules in the CAD's UI.
Lookup - Cooldown - Decreased the lookup cooldown significantly to allow for faster re-searching.
Reconnection Handling - Logout - Fixed an issue causing some clients to be logged out when connection is lost and re-established.
Custom Record Editor - Width Label - Fixed an issue causing the custom record editor's "Width" section to display with the wrong label.

3.5.1 - 12/21/2020

New
Fixed
Selected Character - Your currently selected character is saved in the civilian menu and will persist through sessions.
API - Get Characters Ordering - The API get_characters endpoint ensures that the first character record in the list returned (index 0) is always the account's currently selected character.
Push Event - 911 Removed - API push event EVENT_REMOVE_911 is now sent when an emergency call is removed.
Dispatch - 911 Origin MetaData - Dispatch metadata contains the origin call ID if sent from a 911 call.
Translation - Italian - Italian language files have been added.
Custom Records - No Name - The custom record editor will now display an error if a custom record is created without a name set.
Custom Records - No Preview Fields - The record template editor will now error if the template has no record fields with the lookup preview enabled. The lookup UI will also now properly inform the user of the issue when searching and still allow them to click and open the bad record.
911 Calls - UI Remove from API - Fixed an issue where 911 calls would not be removed from the local user's UI screen when removed via API, requiring a page refresh.
Lookup - DbSync and Regular Mix - Fixed an issue where a lookup finding a manual character, license, or vehicle registration record while DBSync is enabled would break the search loop and return only partial results.

3.5.0 - 12/07/2020

New
Fixed
Admin - Edit Character - Admins can now search and edit or remove characters for users in addition to getting the character owner's username.
Admin - Edit Records - Admins can now search and edit or remove all records, in addition to searching for the record owner's account username.
DBSync - Friendly Mapping - DBSync now allows you to map specific DB value results like "driver_license" to a more readable "Driver's License" string format.
Stripe Checkout - External - The payment system has been rewritten to use external Stripe checkout pages for all community subscription management.
API - Get Live Map/Servers Config - The get_servers API endpoint can now be utilized to retrieve your community's server configuration. This contains valuable information particularly for ensuring your live map ports and IP is correctly configured.
Custom Records - Null UID - Fixed an issue where older custom record formats without a UID would cause the UI to not properly validate and save the record format.
DMV Edit - Supervisor Permission - Fixed an issue allowing civilians to edit supervisor fields on records they have to apply to.
Import Custom Record - Fixed an issue where importing a custom record from another community with the custom recordTypeId field already being set would fail to add it to your community as a new record.
DBSync - Custom Mapping - Fixed an issue causing DBSync to lose references to custom object mappings in rare cases.

3.4.3 - 11/28/2020

New
Fixed
Promotional Handling - Added new side menu handling for special promotional banners and URL handling.
DMV - Status - Fixed an issue causing the STATUS type field in custom records to not be read properly in the backend. This caused cases where all new records would show up in the PENDING section of the DMV page even if they had been approved.
DMV - Record Center Update - Fixed an issue where lookup preview table results would not update locally after editing or removing a record. Causing the user to have to manually refresh the search query.
DB Merge - Error - Fixed an issue causing DB merge searches to fail if the results only contained records, and no civilians.
Civilian - DBSync Add Character - Fixed an issue where civilians couldn't search to link a new character with DBSync due to a race condition with the event registration.

3.4.2 - 11/23/2020

Fixed
My Records - Fixed an issue causing the "My Records" section in the record center to not show properly.
Civilian: Apply - Fixed an issue where civilians without the "Add" permission for records and could only apply would have the sections all disabled.

3.4.1 - 11/22/2020

New
Changed
Fixed
Vehicle Registration - UID Status Required - All vehicle registrations now require a field with a UID of "Status". This enables the radar plugin to pull up and find the vehicle registration status.
Reconnection and Event Handling - Further improvements have been made to the reconnection and event handling logic to improve the overall user experience.
Law Section - Lookup - Fixed an issue causing the lawyer page lookup section to not work properly.
Event Handling - Page Switch - Fixed an issue where some event handlers would not be properly registered when switching from one page and back to another.
Verify Account - Fixed an issue with the validate page's event handler preventing new users from verifying their email address.
Custom Record - Fail without UID - Additional safety checks have been added to handle any legacy record containing fields without a proper UID property that prevented some users from adding custom records.
Lookup By Int - Fixed an issue causing lookup by integer values (ID, ident, status) from not working properly.
DBSync - License and Vehicle - Fixed an issue causing custom vehicle and license records to not be returned by DBSync if the custom civilian sync record contained data that the mapped vehicle or license records do not.

3.4.0 - 11/21/2020

New
Changed
Fixed
DbSync/Records - Custom Character Mapping Fields - Civilian records are fully customizable in every field. Custom DbSync fields can also be added for every custom field.
DBSync/Records - Custom Vehicle Mapping Fields - Vehicle registration records are fully customizable in every field. Custom DbSync fields can also be added for every custom field.
Login - Multiple Sessions - Users may have multiple valid session tokens based on the IP, time, and session key. This ensures sessions are not invalidated when switching devices, particularly to and from our desktop and mobile apps.
API Endpoint: Version Check - This API endpoint allows you to check the current subscription version of the community.
Re-connection Handling - Improved app re-connection event registration and handling. This greatly improves user experience with connection drop outs, backend service restarts, etc. and fixes common bugs where units may experience with data not updating randomly until the page is refreshed.
Penal Codes - Import/Export - Penal code lists can now be imported and exported from one community to another.
Penal Codes - Manual Sort - Penal codes can now be manually sorted in order using the action buttons in the admin customization menu.
DbSync - Column Space Check - All database sync column and table name values are trimmed to ensure no accidental spaces were entered that could cause an invalid SQL syntax error.
Lookup - Trim trailing spaces - Added additional checks to ensure no beginning or trailing spaces are entered into the search terms.
Stay Signed In - The stay signed in option is now enabled by default. All session tokens are now stored in local storage as opposed to session storage.
Discord Webhooks - Fixed an issue where Discord webhook URLs with Discord.com instead of discordapp.com would fail.
Side Menu - Scroll - Fixed an issue where the side menu buttons would be overlapping on smaller screens.
Empty Bolo - No Table - Fixed an issue where the view BOLOs tab wouldn't show anything but the top navbar if there were no BOLOs or warrants active. It now properly shows a "No Records Found" to minimize confusion.

3.3.0 - 10/25/2020

New
Fixed
User Accounts - Purge - Admins can now "purge" inactive users in the admin menu. This will kick all users who have not logged in for the past 30 days.
Signal 100 - Webhook - Webhooks can now be configured for signal 100 notifications.