I have two asterisk servers on with PBX inflash and other only Asterisk installed on CentOS . I need to migrate the stuff from PBXINFLASH to Asterisk 11.9.0 . The PbX in flash is running Asterisk 10.12.1.
I have a dialplan which works perfectly fine on the Asterisk 10.12.1 but on my new box with Asterisk 11.9.0 the DTMF or user key input is not working . I have tried to do debug for dtmf both the servers are same no difference in debug also strange this is my dialplan one one machine works fine and other works partially. The dial plan is call screen where caller presses 1 to proceed and recipient gets call and ask to press 1 or hangup now one Asterisk 11.9.0 caller press 1 input is working fine but recipient press 1 does not do any thing at all.
I am sip account to test my dtmf in sip conf is auto and I have swapped my sip accounts and sip softphones to test still the same . Following are two parts of same macro half working and second half not on user input :–
Part that works :-
exten => _X.,n,GotoIf($[${GROUP_COUNT(${CallerNum})} > 1]?Exceeded) ;Exceeded?
exten => _X.,n,Set(HngupCount=1);Hangup
exten => _X.,n,NoOp(Call Rate: ${Rate}, Xtra Rate: ${XRate}, Dest Num: ${DestNum}, Billing increment ${BillIncrement}, max Duration: ${MaxDuration})
exten => _X.,n,AGI(announceCallInfo.agi,${MaxDuration},${Rate},${XRate},${BaseCurrency},${ARate},${AXRate})
exten => _X.,n,Flite(Please press 1 to speak with ${destUID})
;exten => _X.,n,Playback(press_1_dst)
;exten => _X.,n,Flite(${destUID})
exten => _X.,n,Read(yesno,sip-silence,1,,2,5)
exten => _X.,n,GotoIf($[${yesno} = 1]?continue:hangup)
Part to which not working :-
[macro-Dial2]
exten => s,1,Wait(1);ResetCDR
exten => s,n,Set(_StartTime=${STRFTIME(${EPOCH},,%Y-%m-%d %H:%M:%S)})
exten => s,n,ResetCDR
exten => s,n,Set(_RCount=1)
exten => s,n(Repeat),Flite(Hi there)
exten => s,n,Flite(${ARG1} wants to speak to you. Please press 1 to accept the call. 2 to forward the call to voicemail or 3 to reject the call.)
exten => s,n,Flite(we are connecting you)
exten => s,n,Read(ACCEPT,sip-silence,1,,1,5)
exten => s,n,Set(_RCount=$[${RCount} + 1])
exten => s,n,NoOp(Counter is ${RCount} -- the user selected: ${ACCEPT});
exten => s,n,Gotoif($[${ACCEPT} = 1]?accept:vm) ;Accept the call
exten => s,n(vm),Gotoif($[${ACCEPT} = 2]?voicemail:rej) ;forward the call to dummy voicemail (Actually just record the callers message)
exten => s,n(rej),Gotoif($[${ACCEPT} = 3]?reject) ;Reject the call and hangup
exten => s,n,Gotoif($[${RCount} > 2]?reject:Repeat) ; If no key pressed, just hangup the call and inform the User.
exten => s,n(accept),set(SecLeg=${STRFTIME(${EPOCH},,%Y-%m-%d %H:%M:%S)})
It works till
exten => s,n,Flite(${ARG1} wants to speak to you. Please press 1 to accept the call. 2 to forward the call to voicemail or 3 to reject the call.)
exten => s,n,Flite(we are connecting you)
Strange thing is if its a dtmf issue it should not work with first participant either . If it was issue with macro then it should not work properly on older version of asterisk either .