Adapt our script with pma-voice

Then integrated it is lines in the file server.cfg

setr voice_useNativeAudio true
setr voice_use2dAudio false
setr voice_use3dAudio false
setr voice_useSendingRangeOnly true
setr voice_enableUi 1
setr voice_enableProximityCycle 1
setr voice_defaultCycle 'F11'
setr voice_defaultRadioVolume 30
setr voice_defaultPhoneVolume 60
setr voice_defaultVoiceMode 2
setr voice_enableRadios 1
setr voice_enablePhones 1
setr voice_enableSubmix 1
setr voice_enableRadioAnim 0
setr voice_defaultRadio 'LMENU'
setr voice_refreshRate 200

For more information on commands details follow this documentation

Good to know: You can use the manual method below.
It must be the latest version of pma-voice available on their github.
Go to your pma-voice folder and open a client/command.lua file.
Watch the video below, and do exactly the same procedure.
table.insert(Cfg.voiceModes, {60.0, "Megaphone"})
exports("setMegaphone", function(bool, value)
if bool then
mode = #Cfg.voiceModes
setProximityState(Cfg.voiceModes[#Cfg.voiceModes][1], true)
TriggerEvent('pma-voice:setTalkingMode', #Cfg.voiceModes)
mode = value
setProximityState(Cfg.voiceModes[value][1], false)
TriggerEvent('pma-voice:setTalkingMode', value)
exports("getMegaphone", function()
return mode
RegisterCommand('cycleproximity', function()
-- Proximity is either disabled, or manually overwritten.
if GetConvarInt('voice_enableProximityCycle', 1) ~= 1 or disableProximityCycle then return end
local newMode = mode + 1
-- If we're within the range of our voice modes, allow the increase, otherwise reset to the first state
if newMode <= #Cfg.voiceModes and newMode ~= #Cfg.voiceModes then
mode = newMode
mode = 1
setProximityState(Cfg.voiceModes[mode][1], false)
TriggerEvent('pma-voice:setTalkingMode', mode)
end, false)
if gameVersion == 'fivem' then
RegisterKeyMapping('cycleproximity', 'Cycle Proximity', 'keyboard', GetConvar('voice_defaultCycle', 'F11'))
Or directly download the resource below with all of the above