Hi
I’ve got a custom context I’ve created to collect verify a user ID (there are multiple) and then present a dialtone using DISA to allow an outbound call.
Using both the FreePBX default DISA and also my code there seems to be an issue with stopping and on demand call recording. From the phone that is calling out if I try to enable/disable call recording I get a “access denied” message. The remote party that has been called can enter the correct code and succesfully disable and enable call recordings. It seems if these are simply the wrong way around.
I’ve tried various combinations of Astrisk dial options and Outbound Trunk dial options but can’t seem to resolve this
The issue seems to be the macro-one-touch-record line
[macro-one-touch-record]
include => macro-one-touch-record-custom
exten => s,1,Set(ONETOUCH_REC_SCRIPT_STATUS=)
exten => s,n,System(${AMPBIN}/one_touch_record.php “${CHANNEL(name)}”)
exten => s,n,Noop(ONETOUCH_REC_SCRIPT_STATUS: [${ONETOUCH_REC_SCRIPT_STATUS}])
exten => s,n,Noop(REC_STATUS: [${REC_STATUS}])
exten => s,n,GotoIf($["${ONETOUCH_REC_SCRIPT_STATUS:0:6}"=“DENIED”]?denied)
exten => s,n,ExecIf($["${REC_STATUS}"=“STOPPED”]?Playback(beep&beep))
exten => s,n,GotoIf($["${REC_STATUS}"=“STOPPED”]?end)
exten => s,n,GotoIf($["${REC_STATUS}"=“RECORDING”]?startrec)
exten => s,n(startrec),MixMonitor(${MIXMON_DIR}${YEAR}/${MONTH}/${DAY}/${CALLFILENAME}.${MON_FMT},ai(LOCAL_MIXMON_ID)${MIXMON_BEEP},${MIXMON_POST})
exten => s,n,ExecIf($["${REC_STATUS}"=“RECORDING”]?Playback(beep))
exten => s,n(denied),ExecIf($["${ONETOUCH_REC_SCRIPT_STATUS:0:6}"=“DENIED”]?Playback(access-denied))
exten => s,n(end),MacroExit()
Does anybody have any ideas how to resolve this without hacking all of these?