On demand call recording not working

Hi! Is there a trick to get on demand to work?

I’ve set the extension to allow on demand call recording
If i dial *1, i hear the single beep (assume indicates its starting?)
and if i dial *1 again, i’ll get the double beep to indicate its stopped

No call recording is showing up.in /var/spool/monitor/…location

If i set the call recording to “YES” the recordings show up, so i know the recording is working, just can’t get it to be working with *1

Anything I’m missing?

Log files?

Nothing out of the ordinary showing up, although not sure on hangup if this is significant
– Executing [s@macro-hangupcall:3] ExecIf(“SIP/8860-000000c0”, “0?Set(CDR(recordingfile)=)”) in new stack

LOG SNIP OF CALL

  == Using SIP RTP TOS bits 184
  == Using SIP RTP CoS mark 5
    -- Executing [5551234@from-internal:1] Macro("SIP/8860-000000c0", "user-callerid,LIMIT,EXTERNAL,") in new stack
    -- Executing [s@macro-user-callerid:1] Set("SIP/8860-000000c0", "TOUCH_MONITOR=1501169402.617") in new stack
    -- Executing [s@macro-user-callerid:2] Set("SIP/8860-000000c0", "AMPUSER=8860") in new stack
    -- Executing [s@macro-user-callerid:3] GotoIf("SIP/8860-000000c0", "0?report") in new stack
    -- Executing [s@macro-user-callerid:4] ExecIf("SIP/8860-000000c0", "1?Set(REALCALLERIDNUM=8860)") in new stack
    -- Executing [s@macro-user-callerid:5] Set("SIP/8860-000000c0", "AMPUSER=8860") in new stack
    -- Executing [s@macro-user-callerid:6] GotoIf("SIP/8860-000000c0", "0?limit") in new stack
    -- Executing [s@macro-user-callerid:7] Set("SIP/8860-000000c0", "AMPUSERCIDNAME=Mark Gordon") in new stack
    -- Executing [s@macro-user-callerid:8] GotoIf("SIP/8860-000000c0", "0?report") in new stack
    -- Executing [s@macro-user-callerid:9] Set("SIP/8860-000000c0", "AMPUSERCID=8860") in new stack
    -- Executing [s@macro-user-callerid:10] Set("SIP/8860-000000c0", "__DIAL_OPTIONS=Ttr") in new stack
    -- Executing [s@macro-user-callerid:11] Set("SIP/8860-000000c0", "CALLERID(all)="Mark Gordon" <8860>") in new stack
    -- Executing [s@macro-user-callerid:12] GotoIf("SIP/8860-000000c0", "0?limit") in new stack
    -- Executing [s@macro-user-callerid:13] ExecIf("SIP/8860-000000c0", "1?Set(GROUP(concurrency_limit)=8860)") in new stack
    -- Executing [s@macro-user-callerid:14] ExecIf("SIP/8860-000000c0", "0?Set(CHANNEL(language)=)") in new stack
    -- Executing [s@macro-user-callerid:15] GotoIf("SIP/8860-000000c0", "1?continue") in new stack
    -- Goto (macro-user-callerid,s,29)
    -- Executing [s@macro-user-callerid:29] Set("SIP/8860-000000c0", "CALLERID(number)=8860") in new stack
    -- Executing [s@macro-user-callerid:30] Set("SIP/8860-000000c0", "CALLERID(name)=Mark Gordon") in new stack
    -- Executing [s@macro-user-callerid:31] GotoIf("SIP/8860-000000c0", "0?cnum") in new stack
    -- Executing [s@macro-user-callerid:32] Set("SIP/8860-000000c0", "CDR(cnam)=Mark Gordon") in new stack
    -- Executing [s@macro-user-callerid:33] Set("SIP/8860-000000c0", "CDR(cnum)=8860") in new stack
    -- Executing [s@macro-user-callerid:34] Set("SIP/8860-000000c0", "CHANNEL(language)=en") in new stack
    -- Executing [5551234@from-internal:2] Gosub("SIP/8860-000000c0", "sub-record-check,s,1(out,5551234,dontcare)") in new stack
    -- Executing [s@sub-record-check:1] GotoIf("SIP/8860-000000c0", "0?initialized") in new stack
    -- Executing [s@sub-record-check:2] Set("SIP/8860-000000c0", "__REC_STATUS=INITIALIZED") in new stack
    -- Executing [s@sub-record-check:3] Set("SIP/8860-000000c0", "NOW=1501169402") in new stack
    -- Executing [s@sub-record-check:4] Set("SIP/8860-000000c0", "__DAY=27") in new stack
    -- Executing [s@sub-record-check:5] Set("SIP/8860-000000c0", "__MONTH=07") in new stack
    -- Executing [s@sub-record-check:6] Set("SIP/8860-000000c0", "__YEAR=2017") in new stack
    -- Executing [s@sub-record-check:7] Set("SIP/8860-000000c0", "__TIMESTR=20170727-123002") in new stack
    -- Executing [s@sub-record-check:8] Set("SIP/8860-000000c0", "__FROMEXTEN=8860") in new stack
    -- Executing [s@sub-record-check:9] Set("SIP/8860-000000c0", "__MON_FMT=wav") in new stack
    -- Executing [s@sub-record-check:10] NoOp("SIP/8860-000000c0", "Recordings initialized") in new stack
    -- Executing [s@sub-record-check:11] ExecIf("SIP/8860-000000c0", "0?Set(ARG3=dontcare)") in new stack
    -- Executing [s@sub-record-check:12] Set("SIP/8860-000000c0", "REC_POLICY_MODE_SAVE=") in new stack
    -- Executing [s@sub-record-check:13] ExecIf("SIP/8860-000000c0", "0?Set(REC_STATUS=NO)") in new stack
    -- Executing [s@sub-record-check:14] GotoIf("SIP/8860-000000c0", "3?checkaction") in new stack
    -- Goto (sub-record-check,s,17)
    -- Executing [s@sub-record-check:17] GotoIf("SIP/8860-000000c0", "1?sub-record-check,out,1") in new stack
    -- Goto (sub-record-check,out,1)
    -- Executing [out@sub-record-check:1] NoOp("SIP/8860-000000c0", "Outbound Recording Check from 8860 to 5551234") in new stack
    -- Executing [out@sub-record-check:2] Set("SIP/8860-000000c0", "RECMODE=dontcare") in new stack
    -- Executing [out@sub-record-check:3] ExecIf("SIP/8860-000000c0", "1?Goto(routewins)") in new stack
    -- Goto (sub-record-check,out,7)
    -- Executing [out@sub-record-check:7] Gosub("SIP/8860-000000c0", "recordcheck,1(dontcare,out,5551234)") in new stack
    -- Executing [recordcheck@sub-record-check:1] NoOp("SIP/8860-000000c0", "Starting recording check against dontcare") in new stack
    -- Executing [recordcheck@sub-record-check:2] Goto("SIP/8860-000000c0", "dontcare") in new stack
    -- Goto (sub-record-check,recordcheck,3)
    -- Executing [recordcheck@sub-record-check:3] Return("SIP/8860-000000c0", "") in new stack
    -- Executing [out@sub-record-check:8] Return("SIP/8860-000000c0", "") in new stack
    -- Executing [5551234@from-internal:3] ExecIf("SIP/8860-000000c0", "0 ?Set(CDR(accountcode)=)") in new stack
    -- Executing [5551234@from-internal:4] Set("SIP/8860-000000c0", "MOHCLASS=default") in new stack
    -- Executing [5551234@from-internal:5] Set("SIP/8860-000000c0", "_NODEST=") in new stack
    -- Executing [5551234@from-internal:6] Macro("SIP/8860-000000c0", "dialout-trunk,1,5551234,,off") in new stack
    -- Executing [s@macro-dialout-trunk:1] Set("SIP/8860-000000c0", "DIAL_TRUNK=1") in new stack
    -- Executing [s@macro-dialout-trunk:2] GosubIf("SIP/8860-000000c0", "0?sub-pincheck,s,1()") in new stack
    -- Executing [s@macro-dialout-trunk:3] GotoIf("SIP/8860-000000c0", "0?disabletrunk,1") in new stack
    -- Executing [s@macro-dialout-trunk:4] Set("SIP/8860-000000c0", "DIAL_NUMBER=5551234") in new stack
    -- Executing [s@macro-dialout-trunk:5] Set("SIP/8860-000000c0", "DIAL_TRUNK_OPTIONS=Ttr") in new stack
    -- Executing [s@macro-dialout-trunk:6] Set("SIP/8860-000000c0", "OUTBOUND_GROUP=OUT_1") in new stack
    -- Executing [s@macro-dialout-trunk:7] GotoIf("SIP/8860-000000c0", "1?nomax") in new stack
    -- Goto (macro-dialout-trunk,s,9)
    -- Executing [s@macro-dialout-trunk:9] GotoIf("SIP/8860-000000c0", "0?skipoutcid") in new stack
    -- Executing [s@macro-dialout-trunk:10] Set("SIP/8860-000000c0", "DIAL_TRUNK_OPTIONS=T") in new stack
    -- Executing [s@macro-dialout-trunk:11] Macro("SIP/8860-000000c0", "outbound-callerid,1") in new stack
    -- Executing [s@macro-outbound-callerid:1] ExecIf("SIP/8860-000000c0", "0?Set(CALLERPRES(name-pres)=)") in new stack
    -- Executing [s@macro-outbound-callerid:2] ExecIf("SIP/8860-000000c0", "0?Set(CALLERPRES(num-pres)=)") in new stack
    -- Executing [s@macro-outbound-callerid:3] ExecIf("SIP/8860-000000c0", "0?Set(REALCALLERIDNUM=8860)") in new stack
    -- Executing [s@macro-outbound-callerid:4] GotoIf("SIP/8860-000000c0", "1?normcid") in new stack
    -- Goto (macro-outbound-callerid,s,7)
    -- Executing [s@macro-outbound-callerid:7] Set("SIP/8860-000000c0", "USEROUTCID="Mark Gordon" <5558860>") in new stack
    -- Executing [s@macro-outbound-callerid:8] Set("SIP/8860-000000c0", "EMERGENCYCID=") in new stack
    -- Executing [s@macro-outbound-callerid:9] Set("SIP/8860-000000c0", "TRUNKOUTCID=") in new stack
    -- Executing [s@macro-outbound-callerid:10] GotoIf("SIP/8860-000000c0", "1?trunkcid") in new stack
    -- Goto (macro-outbound-callerid,s,15)
    -- Executing [s@macro-outbound-callerid:15] ExecIf("SIP/8860-000000c0", "0?Set(CALLERID(all)=)") in new stack
    -- Executing [s@macro-outbound-callerid:16] ExecIf("SIP/8860-000000c0", "1?Set(CALLERID(all)="Mark Gordon" <5558860>)") in new stack
    -- Executing [s@macro-outbound-callerid:17] ExecIf("SIP/8860-000000c0", "0?Set(CALLERID(all)=)") in new stack
    -- Executing [s@macro-outbound-callerid:18] ExecIf("SIP/8860-000000c0", "0?Set(CALLERPRES(name-pres)=prohib_passed_screen)") in new stack
    -- Executing [s@macro-outbound-callerid:19] ExecIf("SIP/8860-000000c0", "0?Set(CALLERPRES(num-pres)=prohib_passed_screen)") in new stack
    -- Executing [s@macro-outbound-callerid:20] Set("SIP/8860-000000c0", "CDR(outbound_cnum)=5558860") in new stack
    -- Executing [s@macro-outbound-callerid:21] Set("SIP/8860-000000c0", "CDR(outbound_cnam)=Mark Gordon") in new stack
    -- Executing [s@macro-dialout-trunk:12] GosubIf("SIP/8860-000000c0", "0?sub-flp-1,s,1()") in new stack
    -- Executing [s@macro-dialout-trunk:13] Set("SIP/8860-000000c0", "OUTNUM=5551234") in new stack
    -- Executing [s@macro-dialout-trunk:14] Set("SIP/8860-000000c0", "custom=IAX2/Lync_Gateway_100_238_A") in new stack
    -- Executing [s@macro-dialout-trunk:15] ExecIf("SIP/8860-000000c0", "0?Set(DIAL_TRUNK_OPTIONS=M(setmusic^default)T)") in new stack
    -- Executing [s@macro-dialout-trunk:16] ExecIf("SIP/8860-000000c0", "0?Set(DIAL_TRUNK_OPTIONS=TM(confirm))") in new stack
    -- Executing [s@macro-dialout-trunk:17] Macro("SIP/8860-000000c0", "dialout-trunk-predial-hook,") in new stack
    -- Executing [s@macro-dialout-trunk-predial-hook:1] MacroExit("SIP/8860-000000c0", "") in new stack
    -- Executing [s@macro-dialout-trunk:18] GotoIf("SIP/8860-000000c0", "0?skipcrm") in new stack
    -- Executing [s@macro-dialout-trunk:19] Set("SIP/8860-000000c0", "__CRM_DIRECTION=OUTBOUND") in new stack
    -- Executing [s@macro-dialout-trunk:20] Set("SIP/8860-000000c0", "__CRM_DESTINATION=5551234") in new stack
    -- Executing [s@macro-dialout-trunk:21] Set("SIP/8860-000000c0", "__CRM_SOURCE=8860") in new stack
    -- Executing [s@macro-dialout-trunk:22] AGI("SIP/8860-000000c0", "sangomacrm.agi") in new stack
    -- Launched AGI Script /var/lib/asterisk/agi-bin/sangomacrm.agi
    -- <SIP/8860-000000c0>AGI Script sangomacrm.agi completed, returning 0
    -- Executing [s@macro-dialout-trunk:23] Set("SIP/8860-000000c0", "CHANNEL(hangup_handler_push)=crm-hangup,s,1") in new stack
    -- Executing [s@macro-dialout-trunk:24] NoOp("SIP/8860-000000c0", "CRM Finished") in new stack
    -- Executing [s@macro-dialout-trunk:25] GotoIf("SIP/8860-000000c0", "0?bypass,1") in new stack
    -- Executing [s@macro-dialout-trunk:26] ExecIf("SIP/8860-000000c0", "1?Set(CONNECTEDLINE(num,i)=5551234)") in new stack
    -- Executing [s@macro-dialout-trunk:27] ExecIf("SIP/8860-000000c0", "1?Set(CONNECTEDLINE(name,i)=CID:5558860)") in new stack
    -- Executing [s@macro-dialout-trunk:28] ExecIf("SIP/8860-000000c0", "0?Set(CONNECTEDLINE(name,i)=CID:(Hidden)5558860)") in new stack
    -- Executing [s@macro-dialout-trunk:29] GotoIf("SIP/8860-000000c0", "0?customtrunk") in new stack
    -- Executing [s@macro-dialout-trunk:30] Dial("SIP/8860-000000c0", "IAX2/Lync_Gateway_100_238_A/5551234,300,T") in new stack
    -- Called IAX2/Lync_Gateway_100_238_A/5551234
    -- Call accepted by 10.1.100.238:4569 (format ulaw)
    -- Format for call is (ulaw)
    -- IAX2/Lync_Gateway_100_238_A-19861 is ringing

CALLING 5551234 HERE

-- IAX2/Lync_Gateway_100_238_A-19861 answered SIP/8860-000000c0
-- Channel IAX2/Lync_Gateway_100_238_A-19861 joined 'simple_bridge' basic-bridge <3c02455f-5e70-4412-a68a-5c28c8fe8dc1>
-- Channel SIP/8860-000000c0 joined 'simple_bridge' basic-bridge <3c02455f-5e70-4412-a68a-5c28c8fe8dc1>

PRESS *1 here to start and then to stop
Nothing in log. Hear Double Beep

-- Channel SIP/8860-000000c0 left 'simple_bridge' basic-bridge <3c02455f-5e70-4412-a68a-5c28c8fe8dc1>
-- Channel IAX2/Lync_Gateway_100_238_A-19861 left 'simple_bridge' basic-bridge <3c02455f-5e70-4412-a68a-5c28c8fe8dc1>
-- Hungup 'IAX2/Lync_Gateway_100_238_A-19861'
  == Spawn extension (macro-dialout-trunk, s, 30) exited non-zero on 'SIP/8860-000000c0' in macro 'dialout-trunk'
  == Spawn extension (from-internal, 5551234, 6) exited non-zero on 'SIP/8860-000000c0'
-- Executing [h@from-internal:1] Macro("SIP/8860-000000c0", "hangupcall") in new stack
-- Executing [s@macro-hangupcall:1] GotoIf("SIP/8860-000000c0", "1?theend") in new stack
-- Goto (macro-hangupcall,s,3)
-- Executing [s@macro-hangupcall:3] ExecIf("SIP/8860-000000c0", "0?Set(CDR(recordingfile)=)") in new stack
-- Executing [s@macro-hangupcall:4] Hangup("SIP/8860-000000c0", "") in new stack
  == Spawn extension (macro-hangupcall, s, 4) exited non-zero on 'SIP/8860-000000c0' in macro 'hangupcall'
  == Spawn extension (from-internal, h, 1) exited non-zero on 'SIP/8860-000000c0'
-- SIP/8860-000000c0 Internal Gosub(crm-hangup,s,1) start
-- Executing [s@crm-hangup:1] NoOp("SIP/8860-000000c0", "Sending Hangup to CRM") in new stack
-- Executing [s@crm-hangup:2] NoOp("SIP/8860-000000c0", "HANGUP CAUSE: 16") in new stack
-- Executing [s@crm-hangup:3] ExecIf("SIP/8860-000000c0", "0?Set(__CRM_VOICEMAIL=)") in new stack
-- Executing [s@crm-hangup:4] NoOp("SIP/8860-000000c0", "MASTER CHANNEL: 1501169402.617 = 1501169402.617") in new stack
-- Executing [s@crm-hangup:5] GotoIf("SIP/8860-000000c0", "0?return") in new stack
-- Executing [s@crm-hangup:6] Set("SIP/8860-000000c0", "__CRM_HANGUP=1") in new stack
-- Executing [s@crm-hangup:7] AGI("SIP/8860-000000c0", "sangomacrm.agi") in new stack
-- Launched AGI Script /var/lib/asterisk/agi-bin/sangomacrm.agi
-- <SIP/8860-000000c0>AGI Script sangomacrm.agi completed, returning 0
-- Executing [s@crm-hangup:8] Return("SIP/8860-000000c0", "") in new stack
  == Spawn extension (from-internal, h, 1) exited non-zero on 'SIP/8860-000000c0'
-- SIP/8860-000000c0 Internal Gosub(crm-hangup,s,1) complete GOSUB_RETVAL=

This system does have FOP2 installed, and i did some testing in the user control panel for that, and I can do on demand recording through the GUI on that product. Although I can’t say for certain that one can affect the other.

If nothing is in the log when you press *1 then Asterisk is not getting the *1.

-THAT is a very good point-
I was thinking that it was like pressing * in conference bridge for the menu where you don’t see the * button being pressed in the log for the menu options in the log, but at very least you should see SOMETHING.
I"m definitely getting the single and double beeps though which is throwing me.

I"ll check further into this. There has to be a setting not toggled somehwere.

You’d at least see Asterisk playing back beeps. Pressing *1 also launches an AGI script.

100% agree. …and I found the problem.

The feature code was not set to enabled (FFS).
Interesting, enabled or not, *1 will give a single or double beep anyway.

When I looked earlier, the box said “ENABLED” beside it, but wasn’t highlighted in the blue color.
That sorted it.

One thing that I noticed now though, is *1 will respond with a single/double beep even if its not enabled. Also I changed the on demand record to *3, and although that worked, *1 still will respond with a single/double beep (although has no effect on call recording).

Most likely that is because of the features file, which I forgot about. I dont know if this file is updated when you update the feature code. If it is updated then that beeping is coming from your phone not Asterisk.

[root@freepbxdev1 framework]# cat /etc/asterisk/features_applicationmap_additional.conf
;--------------------------------------------------------------------------------;
;          Do NOT edit this file as it is auto-generated by FreePBX.             ;
;--------------------------------------------------------------------------------;
; For information on adding additional paramaters to this file, please visit the ;
; FreePBX.org wiki page, or ask on IRC. This file was created by the new FreePBX ;
; BMO - Big Module Object. Any similarity in naming with BMO from Adventure Time ;
; is totally deliberate.                                                         ;
;--------------------------------------------------------------------------------;
apprecord=>*1,caller,Macro,one-touch-record

I dunno…i’ve tested on a Nortel, Yealink and Xlite and all are doing it. I’ve really curious why now.

apprecord=>*3,caller,Macro,one-touch-record

Thats in my features_applicationmap_additional.conf file, but if i press *1 on any of those phones, i hear the exact same beep. Strange!