Advanced Interrogation
The recorder item does nothing
Section titled โThe recorder item does nothingโCheck that your framework and inventory backend are detected correctly.
Config.Framework = "auto" -- or qbx | qb | esxConfig.Inventory = "auto" -- or ox_inventory | qb-inventoryAlso confirm that all five items from install/items_ox.lua or install/items_qb.lua were added correctly and that their names were not changed.
I cannot place the recorder
Section titled โI cannot place the recorderโRecorder placement requires an authorized job and a valid interrogation_recorder inventory slot.
Check Config.Jobs first.
Config.Jobs = {police = 0,sheriff = 0,}If you are using object_gizmo, make sure the resource is installed and started before enabling it.
Config.Placement = {gizmo = false,}No target option appears on the equipment
Section titled โNo target option appears on the equipmentโMake sure Config.Target matches a resource that is actually started.
Config.Target = "auto" -- auto | ox_target | qb-target | sleepless | textuiUse textui if you want the ox_lib interaction mode with the E key instead of a target resource.
Microphone access was blocked
Section titled โMicrophone access was blockedโFiveM must allow NUI microphone access for recording.
When prompted, click Allow and try REC again. If access was denied previously, restart FiveM and check your operating system microphone privacy settings before testing again.
The script displays this message when microphone permission is blocked:
Microphone access was blocked. Click Allow when the game asks, then try recording again.The recording says no microphone audio was detected
Section titled โThe recording says no microphone audio was detectedโMake sure at least one participant speaks while REC is active. Each player inside Config.Recording.captureRadius captures their own microphone track.
Config.Recording = {captureRadius = 12.0,}Capture also respects distance and line of sight. Players behind walls or outside the radius will not produce a normal track.
FiveManage recordings are not saving
Section titled โFiveManage recordings are not savingโConfirm the backend and API key.
Config.Recording = {storage = "fivemanage",}set rs_interrogation_fivemanage_api_key "your_key_here"Use set, not setr.
Local recordings are not saving
Section titled โLocal recordings are not savingโWhen using the local backend, confirm that the resource contains the recordings/ directory and that the server process can write to it.
Config.Recording.storage = "files"The local folder is fixed at rs_interrogation/recordings/.
A cassette station says I need a blank cassette
Section titled โA cassette station says I need a blank cassetteโDirect station recording and dubbing both require blank_cassette.
A used cassette_tape cannot be overwritten as a blank tape.
Pending recordings do not appear at the station
Section titled โPending recordings do not appear at the stationโPending recordings come from handheld or placed recorder device memory. Carry the relevant interrogation recorder when opening the cassette station so the station can access its pending recordings.
Completed recordings leave the Pending list after they are successfully dubbed to a cassette.
Playback has no audio
Section titled โPlayback has no audioโCheck the following:
- The recording completed with detected microphone audio.
- The cassette has not been wiped with
cassette_magnet. - The audio still exists in the configured storage backend.
- The listener is within
Config.Recording.listeningRadius. - Line of sight is not completely blocked.
A successfully wiped cassette keeps its normal item metadata, but its audio references are removed and PLAY will no longer produce the recording.
The recorder battery drains too fast
Section titled โThe recorder battery drains too fastโAdjust the battery drain values in config.lua.
Config.Battery = {enabled = true,idleDrainPerSecond = 0.004,recordDrainPerSecond = 0.075,playbackDrainPerSecond = 0.03,lowThreshold = 10,}The script uses the highest active drain rate. Recording and playback drain are not added together.
How do I replace a dead battery?
Section titled โHow do I replace a dead battery?โPlayers need recorder_battery in their inventory.
Use BAT on the handheld recorder or Swap battery on a placed recorder. Cassette stations do not use batteries.
A placed recorder disappeared after restart
Section titled โA placed recorder disappeared after restartโPlaced recorders are persisted through the database. Check that oxmysql started before rs_interrogation and review the server console for database or placement save errors.
The schema is applied automatically from sql/schema.sql when the resource starts.
Storage boxes cannot be opened
Section titled โStorage boxes cannot be openedโStorage access is job gated. By default, each box uses Config.Jobs.
You can assign different jobs to an individual box.
{coords = vector4(439.73, -980.26, 30.80, 177.71),jobs = { police = 0,},}Only cassette tapes can be stored in these boxes.
How do I disable cassette stations or storage boxes?
Section titled โHow do I disable cassette stations or storage boxes?โUse empty placement tables.
Config.Placements = {cassette_player = {},storage = {},}This lets you run a handheld only setup if desired.
A recorder session is stuck
Section titled โA recorder session is stuckโUse the built in reset command.
recorderresetIt clears the current playerโs active recorder session and capture state.
How do I allow admins to use recorderrepublish?
Section titled โHow do I allow admins to use recorderrepublish?โAdd the ACE permission to server.cfg.
add_ace group.admin command.recorderrepublish allowThen use:
recorderrepublish <sessionId>This command cannot recover audio that never existed on the server, including some direct FiveManage client upload cases.