Skip to content
View in the app

A better way to browse. Learn more.

LCPDFR.com

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

AIDispatch 1.1 (For Policing Redefined) 1.1 full release

(7 reviews)

1 Screenshot

Support Development / AIDispatch 1.2 (NOW LIVE) Supporter Build

This public LCPDFR release is the AIDispatch v1.0 full release build.

If you enjoy AIDispatch and want to support continued development, you can follow the project on Patreon. Latest Builds available there.

Patreon: https://www.patreon.com/cw/Boboediting/posts

Discord - Free business icons

Discord channel for support on the mod and update on the devlopment.

https://discord.gg/9m5eWqK6Qw

BIG SHOUTOUT to FK for helping me test my mod!.He makes some good music, go check him out: https://www.youtube.com/watch?v=h5NdHisx0uE&list=PLrm0_QrSnNRIYWixIuWLOPaqZHoZvqtRz

AIDispatch - AI Voice Dispatch for Policing Redefined

AI Dispatch 1.1

AI Dispatch turns your microphone into an actual police dispatch channel for LSPDFR.

Instead of navigating menus or memorizing dozens of keybinds, simply talk to Dispatch naturally. Change your status, request backup and emergency services, run people or vehicles, report traffic stops, manage pursuits, request PIT authorization, ask for callouts, and more.

You can say things like "Dispatch, show me on a traffic stop," "Send me two additional units Code 3," "Run that plate," "What's my current location?" or "Do you have any calls for me?" and AI Dispatch handles the appropriate game action.

What's new in 1.1

Version 1.1 focuses heavily on making Dispatch feel more aware of what is actually happening during your patrol.

  • More reliable plate returns: A major issue where missing CDF information could be incorrectly treated as an all-clear return has been fixed. Vehicle information now comes directly from Policing Redefined's Common Data Framework.

  • Personalized callsigns: Dispatch can now address you directly using Adam or Lincoln callsigns, with numbers from 1 to 99.

  • New Status Panel: Press N for a quick overview of your callsign, current status, scene, location and incident state.

  • New Street / Location Widget: See your current street, cross street, direction and area, or simply ask Dispatch where you are.

  • Pedestrian Stops: Ped stops are now recognized and tracked separately from vehicle traffic stops.

  • Smarter traffic stops: Better context, corrections, vehicle descriptions, locations and follow-up communication.

  • More natural radio traffic: Dispatch can acknowledge routine scene updates without trying to turn everything you say into a command.

  • Request callouts by voice: Ask Dispatch if there are any calls available and receive one without navigating a menu.

  • Repeat information: Ask Dispatch to repeat your most recent plate or pedestrian return.

  • Improved emergency handling: Better Code 99, pursuit, road-name, cross-street and post-incident behavior.

1.1 takes the original AI Dispatch experience and makes it more contextual, more reliable and much more natural to use throughout an entire patrol.

Gemini API Key

AI Dispatch requires your own Google Gemini API key. get your own api key here: https://aistudio.google.com/api-keys

After installing the mod, open:

plugins\LSPDFR\AIDispatch.ini

Find:

[Gemini]
ApiKey=PUT_YOUR_GEMINI_API_KEY_HERE

Replace PUT_YOUR_GEMINI_API_KEY_HERE with your personal Gemini API key.

Never share your API key, screenshots containing it, or your configured INI file publicly.

Callsign Setup

AI Dispatch 1.1 supports personalized Adam and Lincoln callsigns from 1 through 99.

Open:

plugins\LSPDFR\AIDispatch.ini

Find the [OfficerCallsign] section and set your callsign.

For Adam 56:

[OfficerCallsign]
Enabled=true
Callsign=Adam 56
Family=Adam
Number=56

For Lincoln 21:

[OfficerCallsign]
Enabled=true
Callsign=Lincoln 21
Family=Lincoln
Number=21

Make sure Callsign, Family and Number all match the unit you want to use.

Callsign audio is read from:

lspdfr\audio\scanner\AIDispatch\Callsigns\Adam\TargetedFull\

or:

lspdfr\audio\scanner\AIDispatch\Callsigns\Lincoln\TargetedFull\

Place the appropriate callsign audio files in the matching folder.

Installation

  1. Install LSPDFR and RAGE Plugin Hook.

  2. Install Policing Redefined 1.0.0.5.

  3. Extract the AI Dispatch download.

  4. Copy the contents of the included Release folder into your main Grand Theft Auto V directory.

  5. Allow Windows to merge the folders when prompted.

  6. Open plugins\LSPDFR\AIDispatch.ini.

  7. Enter your Gemini API key under [Gemini].

  8. Configure your Adam or Lincoln callsign under [OfficerCallsign].

  9. Launch GTA V through RAGE Plugin Hook, go on duty and hold your configured dispatch talk key to speak.

Notes

  • AI voice recognition can occasionally mishear words, especially with background noise or unusual street-name pronunciation.

  • Hold your radio key for your entire transmission and release it when you finish speaking.

  • Avoid talking over active dispatcher/scanner audio.

  • The N key opens the AI Dispatch status panel.

  • HUD elements can be repositioned using the included F12 UI editor.

  • If you need support, include your AIDispatch.log, but never upload an INI or screenshot containing your Gemini API key.

Edited by boboediting
new version release

What's New in Version 1.1 full release

Released

  1. Fixed a major plate-return bug where missing CDF data could incorrectly be reported as an "all clear" vehicle return.

  2. Added personalized Adam and Lincoln callsign responses for status changes, incidents, backup, pursuits and important alerts.

  3. Added the new N-key Status Panel showing your callsign, duty status, current scene, location and incident state.

  4. Added the Street / Location Widget with current street, cross street, direction and area information.

  5. Added the ability to ask Dispatch for your current location by voice.

  6. Added a dedicated Pedestrian Stop system, allowing pedestrian encounters to be tracked separately from vehicle traffic stops.

  7. Significantly improved traffic-stop context, including vehicle descriptions, locations, corrections, follow-up information and fewer repeated prompts.

  8. Added natural acknowledgements for routine scene updates, allowing Dispatch to acknowledge non-command radio traffic without triggering unrelated actions.

  9. Added the ability to request an available callout directly through Dispatch.

  10. Added Repeat Last Plate and Repeat Last Ped commands for replaying recent database returns.

  11. Added improved Code 99 and post-incident handling, including a dedicated emergency state and better aftermath behavior.

  12. Improved road-name and cross-street recognition, including better handling of corrections and misheard locations.

  13. Improved radio command recognition and contextual follow-ups, reducing false commands and incorrect interpretations.

  14. Added cleaner GTA-style notifications and expanded HUD/UI functionality.


Short Description

AI-powered voice dispatch for LSPDFR that understands natural speech and triggers Policing Redefined dispatch actions.

AI disclosure

The author has disclosed that AI tools were used in creating the following aspects of this file:

  • Description
  • Mod and Mod Content (Substantial)

I'm absolutely terrible at codding. I always use AI to troubleshoot, help me create, give me feedback and ideas on what to upload next and how to keep a pase for the future updates.

User Feedback

Recommended Comments

Jackal1T1

Members

Did this update add any status display by chance?

StiX32

Members

My english is not perfect but holy cow this ai can't understand sh*t, when i say "Dispatch" it understands "This place".

boboediting

Members Author

2 hours ago, Jackal1T1 said:

Did this update add any status display by chance?

yes the update includes Status displayed and custom voices for status change.

1 hour ago, StiX32 said:

My english is not perfect but holy cow this ai can't understand sh*t, when i say "Dispatch" it understands "This place".

Go to your plugin folders and then go to AI Dispatch folder. inside there should be a AI Dispatch.log folder. now copy that and go back to your plugins folder. Inside should be AI dispatch_customphrases.txt. Take that file too and copy it. Open an AI of your choice and send the AI both files and ask it to Make the AIDispatch_customphrase.text custom to you and your pronunciation. This should help. Also the Gemeni 2.5 version of my mod is notorious for being a bit hard of hearing and theres only so much we can do to help it understand. The latest build of the mod is 1.0 and uses Gemeni 3.0 instead which is faster and hears better. You can find that version on my patreon.

6 hours ago, FlyBullx said:

work other language ?? answer other language ?

it does but their is no focused on supporting other language right now. You might need to use your AIDispatch.log and your AIDispatch_customphrases.text files to create a tailored Custom phrases file that will work best for your language. This might help alot.

Jackal1T1

Members

9 minutes ago, boboediting said:

yes the update includes Status displayed and custom voices for status change.

I’ll give it a try thanks!

boboediting

Members Author

7 hours ago, ZORIXQ said:

I fixed it, it was because GTA V was blocked by the Outbound Rule in the Firewall. It works, but how do I improve the hearing for AIDispatch? I do have an accent (Australian) and a minor lisp, the intent is good but sometimes doesn’t hear well. Anything I can do to improve hearing or speech recognition of the ai?

Yes! play for a while and let it miss hear you for a bit. Then once you've used most commands a few times, open your plugins folder and find AIDispatch_customphrases.text, put that file somewhere you will remember. In the same folder find AIdispatch folder, open it grab the AIdispatch.log file. Now grab both those files (AIdispatch.log and AIdispatch_customphrases.text.) and go to the AI of your choise (I use chatgpt) and ask the AI to make you a tailored AIdispatch_customphrases.txt based on your log. Replace the Customphrases file in your plugin folder with the one the AI will provide and this should help. Keep updating it every few playthrough and you should have a better experience. Keep in mind the AI I use for the public release is not the greatest at understandung phrases. The 1.0 release on my patreon use Gemini 3.1 and is much better at understanding. If you like the Public release and enough and want to support my work feel free to head over to my patreon and become a memeber to try the latest most up to date release of the mod.

Sonny Plourde

Members

7 minutes ago, boboediting said:

Yes! play for a while and let it miss hear you for a bit. Then once you've used most commands a few times, open your plugins folder and find AIDispatch_customphrases.text, put that file somewhere you will remember. In the same folder find AIdispatch folder, open it grab the AIdispatch.log file. Now grab both those files (AIdispatch.log and AIdispatch_customphrases.text.) and go to the AI of your choise (I use chatgpt) and ask the AI to make you a tailored AIdispatch_customphrases.txt based on your log. Replace the Customphrases file in your plugin folder with the one the AI will provide and this should help. Keep updating it every few playthrough and you should have a better experience. Keep in mind the AI I use for the public release is not the greatest at understandung phrases. The 1.0 release on my patreon use Gemini 3.1 and is much better at understanding. If you like the Public release and enough and want to support my work feel free to head over to my patreon and become a memeber to try the latest most up to date release of the mod.

Mr Bobo, when is the Stop the Ped version coming out? I am just really hyped for an Ai Dispatch mod compatible with STP thank you

boboediting

Members Author

5 minutes ago, Sonny Plourde said:

Mr Bobo, when is the Stop the Ped version coming out? I am just really hyped for an Ai Dispatch mod compatible with STP thank you

Hey man! I'm starting to work on this today. I really want everyone to have a chance to enjoy the mod. Now keep in mind that the mod pairs really well with NPCAI 3.0 and that mod is unfortunately not available for stop the peds at the moment. But I will still find a way to make my mod work for stop the ped and ultimate backups! so fear not 😁

Sonny Plourde

Members

21 minutes ago, boboediting said:

Hey man! I'm starting to work on this today. I really want everyone to have a chance to enjoy the mod. Now keep in mind that the mod pairs really well with NPCAI 3.0 and that mod is unfortunately not available for stop the peds at the moment. But I will still find a way to make my mod work for stop the ped and ultimate backups! so fear not 😁

Thanks for the answer i trust you! Thanks for the good work you are revolutionizing LSPDFR i'll be waiting for that!

deejaymaxx2k

Members

(edited)

Would it be possible to make a short video showing the advantages of the Patreon version compared to this version, so people can actually see the differences in action?

I checked out the features listed for the 1.0 Patreon version, but I think it would be much more interesting for many people if they could see everything live rather than just reading about it.

I really like the concept with the sound files. It reminds me a lot of how Blueline handles things with the Bluelines upcoming Dispatcher Mod. I also noticed that your mod has those chain commands where dispatch asks things like, "Do you need a Code 2 or Code 3 unit?" That's a feature I really like.

Also, is it correct that the mod can be purchased directly? If so, would future updates be included with the purchase?

Edited by deejaymaxx2k

TrooperBrooks

Members

Doesn't work for me for some reason. None of my speech is picked up at all. I have a gemini API set up and the proper keybinds.

boboediting

Members Author

18 minutes ago, TrooperBrooks said:

Doesn't work for me for some reason. None of my speech is picked up at all. I have a gemini API set up and the proper keybinds.

send the AIdispatch.log please.

Chris B.

Members

Honestly, I generally like the mod. Its recent integration and updates have added more to it. I've been using it since release, quite a few hours on it. The most annoying issue I have, and it's significant enough to make me want to go back to GP is accepting callouts. Countless callouts come through my CI MDT and I informed dispatch I am responding, and it always says the same error (repeat etc. 10-9, and it will say "attempted to accept callout" "no callout active"). This is despite there literally having been a callout coming through to my system a second earlier. This happens when I try to use the dispatch to accept the callout, or if I am forced to press Y to accept it simply because if I did not, I would never have any callouts to attend, its just a failed loop.

On the plus side, I find the back up response system excellent. The traffic stop piece is also very good.

Thank you

boboediting

Members Author

18 minutes ago, Chris B. said:

Honestly, I generally like the mod. Its recent integration and updates have added more to it. I've been using it since release, quite a few hours on it. The most annoying issue I have, and it's significant enough to make me want to go back to GP is accepting callouts. Countless callouts come through my CI MDT and I informed dispatch I am responding, and it always says the same error (repeat etc. 10-9, and it will say "attempted to accept callout" "no callout active"). This is despite there literally having been a callout coming through to my system a second earlier. This happens when I try to use the dispatch to accept the callout, or if I am forced to press Y to accept it simply because if I did not, I would never have any callouts to attend, its just a failed loop.

On the plus side, I find the back up response system excellent. The traffic stop piece is also very good.

Thank you

I appreciate the feedback. Can you send me your AIDispatch.log please I would like to take a look at that because accepting callouts using dispatch and clearing them using sentences like "latest call is code 4" should be something that works perfectly fine in the 0.90.0 release. I've been working alot on the 1.0+ updates this weekend but if its an actual issue that I can repeat on my end I'd like to fix it. Thank you for your feedback.

GoD5p33d666

Members

Dam this new update can't understand my old custom phrases!! I use NSW Police, so i need highway patrol fot state, i need raptor fro swat, T O U for noose, and it literally can't understand it, keeps saying clarify! Iv added them all in and it lt keeps throwing me a "Request understood, but action could not be completed. Intent: clarify, or if it does it sends something else.

All of my previous custom phrases worked flawlessly. im using the correct command request_swat_code3 etc, just copied and pasted from the last version all of my old phrases and pasted it in. but no new phrases are working now.

boboediting

Members Author

3 hours ago, GoD5p33d666 said:

Dam this new update can't understand my old custom phrases!! I use NSW Police, so i need highway patrol fot state, i need raptor fro swat, T O U for noose, and it literally can't understand it, keeps saying clarify! Iv added them all in and it lt keeps throwing me a "Request understood, but action could not be completed. Intent: clarify, or if it does it sends something else.

All of my previous custom phrases worked flawlessly. im using the correct command request_swat_code3 etc, just copied and pasted from the last version all of my old phrases and pasted it in. but no new phrases are working now.

Send me your log please so I can see why the custom phrases are failing

Lodan341

Members

I have a problem! I downloaded everything and put it all where it has to go, give it my API key but I don't think the thing is recognized by the Rage hook. When i go into plugins for rage hook it isnt there and in game it just doesn't work. like theres no layout or interface or anything.

boboediting

Members Author

4 hours ago, GoD5p33d666 said:

Dam this new update can't understand my old custom phrases!! I use NSW Police, so i need highway patrol fot state, i need raptor fro swat, T O U for noose, and it literally can't understand it, keeps saying clarify! Iv added them all in and it lt keeps throwing me a "Request understood, but action could not be completed. Intent: clarify, or if it does it sends something else.

All of my previous custom phrases worked flawlessly. im using the correct command request_swat_code3 etc, just copied and pasted from the last version all of my old phrases and pasted it in. but no new phrases are working now.

Hey I'm uploading a new version right now that should help with this.

35 minutes ago, Lodan341 said:

I have a problem! I downloaded everything and put it all where it has to go, give it my API key but I don't think the thing is recognized by the Rage hook. When i go into plugins for rage hook it isnt there and in game it just doesn't work. like theres no layout or interface or anything.

when you use CAPS LOCK keybind nothing happens? all the widget might not be on by default so you might not see much on your screen but if you installed it correctly it will be there and work.

data.dll

Members

Does this work with any language?

nova2727

Members

Does not work for me either

boboediting

Members Author

4 minutes ago, nova2727 said:

Does not work for me either

I need specific, did the mod work before? can you reinstall the previous build, 0,90.0 and does that one work? if it dosent work and you go into the AIDispatch folder do you have a log and if so can you send it? I need as much information as you can provide if you want me to find a fix. Log is always needed if you have it available. A screenshot helps too, anything that can queue me in onto what is not working exactly.

57 minutes ago, data.dll said:

Does this work with any language?

My tester uses it in portuguese and it works apparently really well for him. Keep in mind I designed it in english so your experience may vary, but feel free to try it.

data.dll

Members

5 minutes ago, boboediting said:

I need specific, did the mod work before? can you reinstall the previous build, 0,90.0 and does that one work? if it dosent work and you go into the AIDispatch folder do you have a log and if so can you send it? I need as much information as you can provide if you want me to find a fix. Log is always needed if you have it available. A screenshot helps too, anything that can queue me in onto what is not working exactly.

My tester uses it in portuguese and it works apparently really well for him. Keep in mind I designed it in english so your experience may vary, but feel free to try it.

It barely works for spanish, radio status works, backup works but mostly will not recognize it or do another action, if you say shots fired for example it will put you " one 95 in custody" or a different status/action. Though it works amazing.

10 minutes ago, boboediting said:

I need specific, did the mod work before? can you reinstall the previous build, 0,90.0 and does that one work? if it dosent work and you go into the AIDispatch folder do you have a log and if so can you send it? I need as much information as you can provide if you want me to find a fix. Log is always needed if you have it available. A screenshot helps too, anything that can queue me in onto what is not working exactly.

My tester uses it in portuguese and it works apparently really well for him. Keep in mind I designed it in english so your experience may vary, but feel free to try it.

1 minute ago, data.dll said:

It barely works for spanish, radio status works, backup works but mostly will not recognize it or do another action, if you say shots fired for example it will put you " one 95 in custody" or a different status/action. Though it works amazing.

this is the log:

Pasted content

2026-06-07 18:11:27 | Action result: intent=request_local_code2 success=False reason=No matching/working handler returned success.

2026-06-07 18:11:27 | Failure feedback: 10-9, repeat your last transmission.

2026-06-07 18:11:27 | Played custom scanner WAV: lspdfr\audio\scanner\AIDispatch\General\repeat_last.wav

2026-06-07 18:11:34 | Recording started. requestId=14

2026-06-07 18:11:34 | Radio animation started: mode=shouldermic dict=random@arrests anim=generic_radio_chatter prop=0

2026-06-07 18:11:36 | Recording stopped. ms=2064 bytes=64044

2026-06-07 18:11:36 | Live API connecting endpoint=wss://generativelanguage.googleapis.com/ws/google.ai.generativelanguage.v1beta.GenerativeService.BidiGenerateContent?key=REDACTED model=models/gemini-2.5-flash-native-audio-preview-12-2025

2026-06-07 18:11:37 | Live API websocket connected.

2026-06-07 18:11:38 | Live API sent PCM bytes=64000

2026-06-07 18:11:39 | Live input transcript: .

2026-06-07 18:11:41 | Live tool call parsed intent=status_one95_custody confidence=1

2026-06-07 18:11:41 | Gemini command: heard='.' intent=status_one95_custody confidence=1.00 source=live_tool_call quantity=1 notes=Live API tool call.

2026-06-07 18:11:41 | TESTER DEBUG | source=live_tool_call | intent=status_one95_custody | confidence=1.00 | quantity=1 | heard='.' | notes='Live API tool call.'

2026-06-07 18:11:41 | Executing intent: status_one95_custody

2026-06-07 18:11:41 | Setting status: One 95 In Custody available=False

2026-06-07 18:11:41 | LSPDFR availability set using SetPlayerAvailableForCalls(False)

2026-06-07 18:11:41 | Action result: intent=status_one95_custody success=True status=INVOKED_UNVERIFIED note=Handler returned success. Some Policing Redefined/LSPDFR requests do not expose a verification result.

2026-06-07 18:11:41 | Context memory updated: scene= lastIntent=status_one95_custody heard='.'

2026-06-07 18:11:43 | Played custom scanner WAV: lspdfr\audio\scanner\AIDispatch\Status\status_one95_custody.wav

2026-06-07 18:11:44 | Recording started. requestId=15

2026-06-07 18:11:44 | Radio animation started: mode=shouldermic dict=random@arrests anim=generic_radio_chatter prop=0

2026-06-07 18:11:44 | Recording stopped. ms=396 bytes=6444

2026-06-07 18:11:44 | Recording ignored, too short.

2026-06-07 18:12:00 | Recording started. requestId=16

2026-06-07 18:12:00 | Radio animation started: mode=shouldermic dict=random@arrests anim=generic_radio_chatter prop=0

2026-06-07 18:12:02 | Recording stopped. ms=2152 bytes=64044

2026-06-07 18:12:02 | Live API connecting endpoint=wss://generativelanguage.googleapis.com/ws/google.ai.generativelanguage.v1beta.GenerativeService.BidiGenerateContent?key=REDACTED model=models/gemini-2.5-flash-native-audio-preview-12-2025

2026-06-07 18:12:03 | Live API websocket connected.

2026-06-07 18:12:03 | Live API sent PCM bytes=64000

2026-06-07 18:12:05 | Live input transcript: Amb 18 a 24.

2026-06-07 18:12:09 | Live tool call parsed intent=status_responding confidence=0.6

2026-06-07 18:12:09 | Gemini command: heard='Amb 18 a 24.' intent=accept_callout confidence=0.90 source=live_tool_call+callout_accept quantity=1 notes=Voice phrase matched callout acceptance; emulating LSPDFR accept-callout key.

2026-06-07 18:12:09 | TESTER DEBUG | source=live_tool_call+callout_accept | intent=accept_callout | confidence=0.90 | quantity=1 | heard='Amb 18 a 24.' | notes='Voice phrase matched callout acceptance; emulating LSPDFR accept-callout key.'

2026-06-07 18:12:09 | Executing intent: accept_callout

2026-06-07 18:12:09 | GetCalloutAcceptanceState zero-parameter method not found; skipping state verification.

2026-06-07 18:12:09 | Voice accept_callout started. acceptanceStateBefore=''

2026-06-07 18:12:09 | Voice accept_callout: attempting key fallback modifier=None key=REDACTED

2026-06-07 18:12:09 | Voice accept_callout: key tap sent.

2026-06-07 18:12:10 | GetCalloutAcceptanceState zero-parameter method not found; skipping state verification.

2026-06-07 18:12:10 | Voice accept_callout: first key tap not verified; retrying key fallback once.

2026-06-07 18:12:10 | Voice accept_callout: attempting key fallback modifier=None key=REDACTED

2026-06-07 18:12:10 | Voice accept_callout: key tap sent.

2026-06-07 18:12:11 | GetCalloutAcceptanceState zero-parameter method not found; skipping state verification.

2026-06-07 18:12:11 | Setting status: Responding / En Route available=False

2026-06-07 18:12:11 | LSPDFR availability set using SetPlayerAvailableForCalls(False)

2026-06-07 18:12:11 | Voice accept_callout key sent after fallback attempts; verification unavailable or not yet active. Treating as success.

2026-06-07 18:12:11 | Action result: intent=accept_callout success=True status=INVOKED_UNVERIFIED note=Handler returned success. Some Policing Redefined/LSPDFR requests do not expose a verification result.

2026-06-07 18:12:11 | Context memory updated: scene= lastIntent=accept_callout heard='Amb 18 a 24.'

2026-06-07 18:12:22 | Recording started. requestId=17

2026-06-07 18:12:22 | Radio animation started: mode=shouldermic dict=random@arrests anim=generic_radio_chatter prop=0

2026-06-07 18:12:22 | Recording stopped. ms=450 bytes=12844


it doesn't recognize it, i even spoke slowly to see if it worked but nothing.

it works with backup:

2026-06-07 18:11:22 | Live API websocket connected.

2026-06-07 18:11:23 | Live API sent PCM bytes=102400

2026-06-07 18:11:25 | Live input transcript: envíame refuerzos códigos.

2026-06-07 18:11:26 | Live tool call parsed intent=request_local_code2 confidence=0.9

2026-06-07 18:11:27 | Gemini command: heard='envíame refuerzos códigos.' intent=request_local_code2 confidence=0.90 source=live_tool_call quantity=1 notes=Live API tool call.

2026-06-07 18:11:27 | TESTER DEBUG | source=live_tool_call | intent=request_local_code2 | confidence=0.90 | quantity=1 | heard='envíame refuerzos códigos.' | notes='Live API tool call.'

2026-06-07 18:11:27 | Executing intent: request_local_code2

boboediting

Members Author

1 hour ago, data.dll said:

It barely works for spanish, radio status works, backup works but mostly will not recognize it or do another action, if you say shots fired for example it will put you " one 95 in custody" or a different status/action. Though it works amazing.

this is the log:

Pasted content

2026-06-07 18:11:27 | Action result: intent=request_local_code2 success=False reason=No matching/working handler returned success.

2026-06-07 18:11:27 | Failure feedback: 10-9, repeat your last transmission.

2026-06-07 18:11:27 | Played custom scanner WAV: lspdfr\audio\scanner\AIDispatch\General\repeat_last.wav

2026-06-07 18:11:34 | Recording started. requestId=14

2026-06-07 18:11:34 | Radio animation started: mode=shouldermic dict=random@arrests anim=generic_radio_chatter prop=0

2026-06-07 18:11:36 | Recording stopped. ms=2064 bytes=64044

2026-06-07 18:11:36 | Live API connecting endpoint=wss://generativelanguage.googleapis.com/ws/google.ai.generativelanguage.v1beta.GenerativeService.BidiGenerateContent?key=REDACTED model=models/gemini-2.5-flash-native-audio-preview-12-2025

2026-06-07 18:11:37 | Live API websocket connected.

2026-06-07 18:11:38 | Live API sent PCM bytes=64000

2026-06-07 18:11:39 | Live input transcript: .

2026-06-07 18:11:41 | Live tool call parsed intent=status_one95_custody confidence=1

2026-06-07 18:11:41 | Gemini command: heard='.' intent=status_one95_custody confidence=1.00 source=live_tool_call quantity=1 notes=Live API tool call.

2026-06-07 18:11:41 | TESTER DEBUG | source=live_tool_call | intent=status_one95_custody | confidence=1.00 | quantity=1 | heard='.' | notes='Live API tool call.'

2026-06-07 18:11:41 | Executing intent: status_one95_custody

2026-06-07 18:11:41 | Setting status: One 95 In Custody available=False

2026-06-07 18:11:41 | LSPDFR availability set using SetPlayerAvailableForCalls(False)

2026-06-07 18:11:41 | Action result: intent=status_one95_custody success=True status=INVOKED_UNVERIFIED note=Handler returned success. Some Policing Redefined/LSPDFR requests do not expose a verification result.

2026-06-07 18:11:41 | Context memory updated: scene= lastIntent=status_one95_custody heard='.'

2026-06-07 18:11:43 | Played custom scanner WAV: lspdfr\audio\scanner\AIDispatch\Status\status_one95_custody.wav

2026-06-07 18:11:44 | Recording started. requestId=15

2026-06-07 18:11:44 | Radio animation started: mode=shouldermic dict=random@arrests anim=generic_radio_chatter prop=0

2026-06-07 18:11:44 | Recording stopped. ms=396 bytes=6444

2026-06-07 18:11:44 | Recording ignored, too short.

2026-06-07 18:12:00 | Recording started. requestId=16

2026-06-07 18:12:00 | Radio animation started: mode=shouldermic dict=random@arrests anim=generic_radio_chatter prop=0

2026-06-07 18:12:02 | Recording stopped. ms=2152 bytes=64044

2026-06-07 18:12:02 | Live API connecting endpoint=wss://generativelanguage.googleapis.com/ws/google.ai.generativelanguage.v1beta.GenerativeService.BidiGenerateContent?key=REDACTED model=models/gemini-2.5-flash-native-audio-preview-12-2025

2026-06-07 18:12:03 | Live API websocket connected.

2026-06-07 18:12:03 | Live API sent PCM bytes=64000

2026-06-07 18:12:05 | Live input transcript: Amb 18 a 24.

2026-06-07 18:12:09 | Live tool call parsed intent=status_responding confidence=0.6

2026-06-07 18:12:09 | Gemini command: heard='Amb 18 a 24.' intent=accept_callout confidence=0.90 source=live_tool_call+callout_accept quantity=1 notes=Voice phrase matched callout acceptance; emulating LSPDFR accept-callout key.

2026-06-07 18:12:09 | TESTER DEBUG | source=live_tool_call+callout_accept | intent=accept_callout | confidence=0.90 | quantity=1 | heard='Amb 18 a 24.' | notes='Voice phrase matched callout acceptance; emulating LSPDFR accept-callout key.'

2026-06-07 18:12:09 | Executing intent: accept_callout

2026-06-07 18:12:09 | GetCalloutAcceptanceState zero-parameter method not found; skipping state verification.

2026-06-07 18:12:09 | Voice accept_callout started. acceptanceStateBefore=''

2026-06-07 18:12:09 | Voice accept_callout: attempting key fallback modifier=None key=REDACTED

2026-06-07 18:12:09 | Voice accept_callout: key tap sent.

2026-06-07 18:12:10 | GetCalloutAcceptanceState zero-parameter method not found; skipping state verification.

2026-06-07 18:12:10 | Voice accept_callout: first key tap not verified; retrying key fallback once.

2026-06-07 18:12:10 | Voice accept_callout: attempting key fallback modifier=None key=REDACTED

2026-06-07 18:12:10 | Voice accept_callout: key tap sent.

2026-06-07 18:12:11 | GetCalloutAcceptanceState zero-parameter method not found; skipping state verification.

2026-06-07 18:12:11 | Setting status: Responding / En Route available=False

2026-06-07 18:12:11 | LSPDFR availability set using SetPlayerAvailableForCalls(False)

2026-06-07 18:12:11 | Voice accept_callout key sent after fallback attempts; verification unavailable or not yet active. Treating as success.

2026-06-07 18:12:11 | Action result: intent=accept_callout success=True status=INVOKED_UNVERIFIED note=Handler returned success. Some Policing Redefined/LSPDFR requests do not expose a verification result.

2026-06-07 18:12:11 | Context memory updated: scene= lastIntent=accept_callout heard='Amb 18 a 24.'

2026-06-07 18:12:22 | Recording started. requestId=17

2026-06-07 18:12:22 | Radio animation started: mode=shouldermic dict=random@arrests anim=generic_radio_chatter prop=0

2026-06-07 18:12:22 | Recording stopped. ms=450 bytes=12844


it doesn't recognize it, i even spoke slowly to see if it worked but nothing.

it works with backup:

2026-06-07 18:11:22 | Live API websocket connected.

2026-06-07 18:11:23 | Live API sent PCM bytes=102400

2026-06-07 18:11:25 | Live input transcript: envíame refuerzos códigos.

2026-06-07 18:11:26 | Live tool call parsed intent=request_local_code2 confidence=0.9

2026-06-07 18:11:27 | Gemini command: heard='envíame refuerzos códigos.' intent=request_local_code2 confidence=0.90 source=live_tool_call quantity=1 notes=Live API tool call.

2026-06-07 18:11:27 | TESTER DEBUG | source=live_tool_call | intent=request_local_code2 | confidence=0.90 | quantity=1 | heard='envíame refuerzos códigos.' | notes='Live API tool call.'

2026-06-07 18:11:27 | Executing intent: request_local_code2

have you tried the custom phrases that I suggest in the mod description? you should try to make one for yourself with your log. See how much it helps. Becasue right now from your log there is quite a bit of spanish miss understanding and keep in mind this is using gemini 2.5 which even in english struggles to translate speech to text reliably. Try to make A AIDispatch_customphrases.txt based on your log and if theres still alot of errors come back to me with the log again. You can also just upload the full log file instead of pasting it. Iis actually helps me alot so I can make sure you're using the latest build too.

data.dll

Members

23 minutes ago, boboediting said:

have you tried the custom phrases that I suggest in the mod description? you should try to make one for yourself with your log. See how much it helps. Becasue right now from your log there is quite a bit of spanish miss understanding and keep in mind this is using gemini 2.5 which even in english struggles to translate speech to text reliably. Try to make A AIDispatch_customphrases.txt based on your log and if theres still alot of errors come back to me with the log again. You can also just upload the full log file instead of pasting it. Iis actually helps me alot so I can make sure you're using the latest build too.

I figured how to make it to understand but you have to talk very slowly

boboediting

Members Author

1 hour ago, data.dll said:

I figured how to make it to understand but you have to talk very slowly

Yeah I’m sorry, once version 1.0 comes out on lcpdfr, it will probably be much better at understanding other languages. Right now its exclusive to my patreon but as I update the mod, I will eventually release it here. My tester is running version 1.0.1 and so far gemeni 3.1 is much better at understanding everything he says in portuguese.

Sosa18k

Members

Figured id give this a shot since gp is no longer available, and i must say that I am impressed how well the ai recognizes commands and doesnt misinterpret what i said, but my only thing ive noticed is that im not getting any callouts. Im not sure if this mod is messing with callout interface but other then that i love it and looking forward to future updates to it. Excellent job!

Create an account or sign in to comment

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.