Body Camera
The Sonoran CAD bodycam enables dispatchers to see live images from units in-game.
Last updated
The Sonoran CAD bodycam enables dispatchers to see live images from units in-game.
Last updated
This plugin utilizes API endpoints that require the Pro version of Sonoran CAD or higher. For more information, view our pricing page.
Looking for VPS, web, or dedicated hosting? Check out our official server hosting!
Sonoran CAD is the only external CAD system offering live image feeds from in-game users accessible through the live map, active units preview, or a dedicated window.
This feature updates the image feed at intervals that can be configured by the user (1-10 seconds).
Learn more about the technology and limitations of this system.
If you haven't already, be sure to install and configure the plugin framework first.
The locations plugin includes all logic required to send bodycam images to the CAD.
The bodycam settings are stored inside of the framework configuration file.
When in-game, units must also be actively signed into the dispatch, police, fire, or EMS panel.
Use the /bodycam
command to toggle your body camera on or off.
If enabled in your framework configuration, a periodic beep and blinking body camera logo will appear on your screen reflecting that your body camera is active.
In the active units panel, units with their body camera enabled will show a pulsing camera icon.
Hover over this icon to see a preview image of their body camera.
Click the icon to open an adjustable window of their body camera.
In the live map, units with their body camera enabled will show a pulsing camera icon.
Click on the unit blip to view a live preview of their body camera in the unit action menu.
Some servers may see the following error print in their console:
SCRIPT ERROR: @sonorancad/core/screenshot.lua:15: No such export requestClientScreenshot in resource screenshots-basic
This means that you do not have the screenshot-basic resource installed on your server.
We recommend that you update your server artifacts, as newer versions come with this resource installed by default. Alternatively, you can manually install it from GitHub.
We are aware of an issue with the CFX proxy being unreachable on ZAP Hosting, a required piece for the body camera functionality.
Your CFX proxy URL is formatted as https://someCFXUsernameHere.users.cfx.re/
with someCFXUsernameHere
being your CFX username. This proxy is native functionality to all FiveM servers.
We suggest contacting ZAP hosting directly (your game server provider) to try and resolve this issue.
Real-time video streams from in-game, right in the CAD panel.
Individual users require significantly upgraded PC hardware and networking to transcode and upload live video feeds.
The infrastructure to host and share these streams would require massive amounts of new hardware, making the service unaffordable for gaming communities.
Client Image Handling
Units in-game have local screenshots created and sent to the local game server for processing. These screenshots result in next to zero noticeable performance drop in comparison to transcoding live video streaming.
The local game server stores and serves these images to Sonoran CAD when requested by a CAD user. An on-going "feed" of images is sent, stored, and replaced as newer images replace the old ones. When the body camera is toggled off, or the server restarts, these folders are completely wiped to ensure your game server isn't bloating with old images.
CAD Image Requests
When a CAD dispatcher requests to look at a unit's body camera, they ask the game server for the screenshot and continually request new screenshots at the rate they're being generated. The current default is 2000ms (2 seconds) but can be lowered to as little as 1000ms (1 second).
This "screenshot feed" system allows dispatchers to stay up-to-date without requiring massive amounts of bandwidth, expensive processing for the user's PCs, and ensures quick responsiveness within the CAD.
Please note that this feature is in early development and may exhibit instability, influenced by server and network performance. Body camera images are generated by the client and temporarily stored on the community's server. Viewing these images, whether by dispatchers or units, involves active requests to your CFX nucleus proxy, leading to increased network traffic and processing demands.
Variable | Description |
---|---|
bodycamEnabled
Enables or disables the body camera command.
Default: true
bodycamBeepFrequency
Adjusts the frequency at which unit body camera beeps when turned on(in milliseconds).
Default: 30000
(30 seconds)
bodycamPlayBeeps
Enables or disables the body camera beeping when turned on.
Default: true
bodycamScreenshotFrequency
Adjusts the frequency at which unit body cameras update (in milliseconds).
Default: 2000
(2 seconds)
bodycamOverlayEnabled
Enables or disables the blinking body camera image on screen when enabled.
Default true
bodycamOverlayLocation
The position (corner) of the screen where the body camera image is displayed.
Options: top-left
, top-right
, bottom-left
, bottom-right
Default: top-right
bodycamCommandToggle
The command name to toggle your body camera on or off.
Default: bodycam
bodycamCommandChangeFrequency
The command to adjust your individual body camera screenshot frequency to be different than the server's bodycamScreenshotFrequency
value.
Default: bodycamFreq