Stream Automations require the Pro version of Sonoran Studio, the Sonoran Studio desktop app, and Streamer.bot running on the same computer.
How it works
- The Studio desktop app receives realtime CAD and Radio events plus native-backed gameplay moments from the FiveM or LSPDFR integration.
- Studio converts a supported event into a Stream Automation event.
- If that event has a mapped Streamer.bot action, Studio invokes the action through Streamer.bot’s local WebSocket server.
- Studio includes the event name and any available unit, call, channel, location, priority, or panic data as action arguments.
Set up Streamer.bot
- Create an action
In Streamer.bot, create the action you want Studio to run. Add sub-actions such as changing an OBS scene, playing audio, showing a source, or sending a chat message. Make sure the action is enabled.
- Start the WebSocket server
In Streamer.bot, open Servers/Clients → WebSocket Server and start the server. The defaults are:
Enable Auto Start if the server should start with Streamer.bot. If authentication is enabled and enforced, enter the same password in Sonoran Studio. See Streamer.bot’s WebSocket server configuration for more detail.
- Connect Sonoran Studio
- Open the Sonoran Studio desktop app and select Bot.
- Enter the WebSocket Port and Endpoint. Enter the password only if Streamer.bot requires one.
- Select Save & connect.
- Confirm that Studio reports Connected and loads your enabled Streamer.bot actions.
- Map and test events
Choose a Streamer.bot action beside each Sonoran event. Select Test to invoke that mapping immediately. A test supplies sonoranEvent, test, occurredAt, and the title Sonoran Studio test; live event-specific data appears only when the corresponding event actually occurs.
Supported events
Channel-only changes do not currently invoke a separate automation event. Call updates use Call changed, and call-note notifications use Call note.
Gameplay moments are available from either the standalone or Sonoran CAD FiveM integration and from the LSPDFR integration. Set the two health limits directly beside their Streamer.bot mappings or in the Smart Device scene builder’s Health threshold event; the defaults are 35% and 50%, and the same limits drive lighting and Streamer.bot. Player revived combines respawns and revives because GTA natives expose the dead-to-alive transition, not the recovery system that caused it.
Action arguments
Every live action receives these arguments:
CAD and Radio actions also receive
sonoranSourceEvent, the original Studio event such as cad.panic.changed, and eventId, its unique realtime event ID.
Gameplay actions receive sonoranSource as fivem or lspdfr. Depending on the moment, they can include weaponHash, health, maximumHealth, healthPercent, healthLowerThan, healthHigherThan, travelMode, vehicleClass, and vehicleModel.
Studio also includes the following values when they are available for the event or current overlay state:
communityId, serverId, unit, displayName, unitNumber, department, status, location, postal, callsign, channel, priority, callId, title, message, toneName, toneNames, and emergencyCall.
Tone actions receive toneName for the first tone and toneNames for the complete tone sequence when available. Radio emergency-call actions receive emergencyCall as true.
Panic actions additionally receive:
Call actions can receive
callAttached: true when a call attaches and false when it detaches.
Streamer.bot exposes action arguments to sub-actions with %variable% syntax. For example, use %unitNumber%, %status%, or %sonoranEvent% in a compatible text field. Open Actions & Queues → Action History after a live event to inspect the values supplied to that run.
Troubleshooting
Studio does not connect
- Confirm Streamer.bot is running and its WebSocket server is started.
- Verify the port and endpoint match. The defaults are
8080and/. - If authentication is enabled, re-enter the matching password in Studio.
- Keep the server address on
127.0.0.1; Studio intentionally connects only to the local computer.
An action is missing
Studio loads enabled actions reported by Streamer.bot. Enable the action, then select Reload actions in Studio.A mapped action does not run
- Confirm Studio shows Connected and the event is not set to Do nothing.
- Use Test beside the mapping. If the test succeeds, wait for the real Sonoran event to inspect its full arguments.
- Check Actions & Queues → Action History in Streamer.bot for the action result and supplied arguments.
- CAD and Radio events require the desktop app to be signed into the same Sonoran account and community producing the activity. FiveM and LSPDFR gameplay moments require their local game integration and the Studio desktop app.

