Andy Bender
New Member
- Joined
- Apr 4, 2016
- Messages
- 2
- Reaction score
- 0
Hello,
I’m a newbie with a Pi: Incredible PBX 11-12.2, Asterisk 11.19.0, GUI 12.0.20
I have a trunk connected to a Cisco system, the Peer details are:
The Peer is defiened as follows:
type=peer
host=10.10.0.77
port=5060
insecure=port,invite&port,invite
nat=no
disallow=all
allow=ulaw&alaw
qualify=yes
canreinvite=no
promiscredir=yes
trustrpid=yes
; dtmfmode=short
; SIPDtmfMode=short
fromdomain=10.10.0.254
context= CiscoOut
In extensions_custom.conf, I’ve got:
; exten => _940060XX,n,SIPDtmfMode(rfc2833)
exten => _940060XX,n,Dial(SIP/CiscoOut/${EXTEN:1},60)
I have an extension in sip_additional.conf as:
[2001]
deny=0.0.0.0/0.0.0.0
secret=adbbd123
dtmfmode=shortinfo
canreinvite=no
context=from-internal
host=dynamic
trustrpid=yes
sendrpid=yes
type=friend
nat=no
port=5060
qualify=yes
qualifyfreq=60
transport=udp
avpf=no
force_avp=no
icesupport=no
encryption=no
callgroup=
pickupgroup=
dial=SIP/2001
permit=0.0.0.0/0.0.0.0
callerid=2001 Sip Extenstion <2001>
callcounter=yes
faxdetect=no
cc_monitor_policy=generic
With the above if I connect to 2001 with a PhonerLike SIP phone I can call into an IVR on the Cisco system and both voice and DTMF work just fine.
However……
I have a test.call file containing:
channel: Local/3001@from-internal
Context: CiscoOut
Extension: 2001
I have an included extensions_make_calls.conf file containing:
[CiscoOut]
;--------------------------------------------------------------------------
; exten 2001 is used to put a FIFO into VH w/CB Canceled
exten => 2001,1,NoOp(==============> ? EXTN 2001 Test call BEGIN <=====================)
exten => 2001,n,Wait(1)
exten => 2001,n,Monitor(wav,${CALLFILENAME},m)
exten => 2001,n,Flite("This is 2 0 0 1, Press 1 ")
exten => 2001,n,Wait(1)
exten => 2001,n,SendDTMF(1,1500, 150 )
exten => 2001,n,Wait(2)
exten => 2001,n,Flite(", Press 33033")
exten => 2001,n,SendDTMF(33033#,150,150)
exten => 2001,n,Wait(2)
exten => 2001,n,Flite(", Press 1")
exten => 2001,n,SendDTMF(1,150,150)
exten => 2001,n,Wait(2)
exten => 2001,n,Flite(", Press 1")
exten => 2001,n,SendDTMF(1,150,150)
exten => 2001,n,Wait(2)
exten => 2001,n,Flite(", Press 1")
exten => 2001,n,SendDTMF(1,150,150)
exten => 2001,n,Wait(4)
exten => 2001,n,Flite(", Goodbye!")
exten => 2001,n,NoOp(==============> EXTN 2001 Test call HANGUP <=====================)
exten => 2001,n,Hangup()
When the call file is dropped into the outgoing directory the call is made to the Cisco IVR ok, but the DTMF is not getting there.
I have recorded the call from the asterisk side and do not hear any DTMF.
I have tried various combinations of the SIPDtmfMode values (rfc2833, info, auto, etc), settings in:
- the Trunk Peer
- the extensions_custom.conf, just before the before dial
- and on the 2001 extension
With rfc2833 mode set in extensions_custom.conf:
exten => _940060XX,n,SIPDtmfMode(rfc2833)
exten => _940060XX,n,Dial(SIP/CiscoOut/${EXTEN:1},60)
Calling from x3001, DTMF signaling as SIP INFO, I can get:
[2016-04-08 10:51:02] DTMF[25693][C-00000001] channel.c: DTMF begin '1' received on SIP/3001-00000003
[2016-04-08 10:51:02] DTMF[25693][C-00000001] channel.c: DTMF begin passthrough '1' on SIP/3001-00000003
[2016-04-08 10:51:02] DTMF[25693][C-00000001] channel.c: DTMF end '1' received on SIP/3001-00000003, duration 80 ms
[2016-04-08 10:51:02] DTMF[25693][C-00000001] channel.c: DTMF end accepted with begin '1' on SIP/3001-00000003
[2016-04-08 10:51:02] DTMF[25693][C-00000001] channel.c: DTMF end '1' detected to have actual duration 59 on the wire, emulation will be triggered on SIP/3001-00000003
[2016-04-08 10:51:02] DTMF[25693][C-00000001] channel.c: DTMF end '1' has duration 59 but want minimum 80, emulating on SIP/3001-00000003
[2016-04-08 10:51:02] DTMF[25693][C-00000001] channel.c: DTMF end emulation of '1' queued on SIP/3001-00000003
I believe this is the logging of the out-of-band DTMF….. (is that correct?)
Which is NOT recognized by the IVR on Cisco.
If, I do a call with the call file, x2001, I get:
[2016-04-08 11:06:58] VERBOSE[26881][C-00000002] pbx.c: -- Executing [2001@CiscoOut:6] SendDTMF("SIP/10.10.0.117-00000007", "1,1500, 150 ") in new stack
[2016-04-08 11:07:00] VERBOSE[26881][C-00000002] pbx.c: -- Executing [2001@CiscoOut:7] Wait("SIP/10.10.0.117-00000007", "2") in new stack
[2016-04-08 11:07:02] VERBOSE[26881][C-00000002] pbx.c: -- Executing [2001@CiscoOut:8] Flite("SIP/10.10.0.117-00000007", "", Press 33033"") in new stack
[2016-04-08 11:07:02] VERBOSE[26881][C-00000002] file.c: -- <SIP/10.10.0.117-00000007> Playing '/tmp/flite_34400481.slin' (language 'en')
[2016-04-08 11:07:05] VERBOSE[26881][C-00000002] pbx.c: -- Executing [2001@CiscoOut:9] SendDTMF("SIP/10.10.0.117-00000007", "33033#,150,150") in new stack
[2016-04-08 11:07:07] VERBOSE[26881][C-00000002] pbx.c: -- Executing [2001@CiscoOut:10] Wait("SIP/10.10.0.117-00000007", "2") in new stack
[2016-04-08 11:07:09] VERBOSE[26881][C-00000002] pbx.c: -- Executing [2001@CiscoOut:11] Flite("SIP/10.10.0.117-00000007", "", Press 1"") in new stack
No logging of the out-of-band DTMF…..
This DTMF, is also NOT recognized by the IVR on Cisco.
In summary, I can manual calls from a Phonerlite phone into the Cisco IVR and DTMF works OK.
However, I cannot get it to work from a .call file.
I have also tried tweaking: the port, insecure, nat, the codecs…, qualify, canreinvite, promiscredir, trustrpid
If it’s an issue on the Cisco side, why does it only fail when I call from a call file ?
The voice seems OK, it’s just the DTMF that is a problem.
Is there something wrong with how I trying to do this ?
Just to be clear I want to use .call files to make calls into an IVR through a Cisco system and DTMF digits into it.
Thanks,
Andy
I’m a newbie with a Pi: Incredible PBX 11-12.2, Asterisk 11.19.0, GUI 12.0.20
I have a trunk connected to a Cisco system, the Peer details are:
The Peer is defiened as follows:
type=peer
host=10.10.0.77
port=5060
insecure=port,invite&port,invite
nat=no
disallow=all
allow=ulaw&alaw
qualify=yes
canreinvite=no
promiscredir=yes
trustrpid=yes
; dtmfmode=short
; SIPDtmfMode=short
fromdomain=10.10.0.254
context= CiscoOut
In extensions_custom.conf, I’ve got:
; exten => _940060XX,n,SIPDtmfMode(rfc2833)
exten => _940060XX,n,Dial(SIP/CiscoOut/${EXTEN:1},60)
I have an extension in sip_additional.conf as:
[2001]
deny=0.0.0.0/0.0.0.0
secret=adbbd123
dtmfmode=shortinfo
canreinvite=no
context=from-internal
host=dynamic
trustrpid=yes
sendrpid=yes
type=friend
nat=no
port=5060
qualify=yes
qualifyfreq=60
transport=udp
avpf=no
force_avp=no
icesupport=no
encryption=no
callgroup=
pickupgroup=
dial=SIP/2001
permit=0.0.0.0/0.0.0.0
callerid=2001 Sip Extenstion <2001>
callcounter=yes
faxdetect=no
cc_monitor_policy=generic
With the above if I connect to 2001 with a PhonerLike SIP phone I can call into an IVR on the Cisco system and both voice and DTMF work just fine.
However……
I have a test.call file containing:
channel: Local/3001@from-internal
Context: CiscoOut
Extension: 2001
I have an included extensions_make_calls.conf file containing:
[CiscoOut]
;--------------------------------------------------------------------------
; exten 2001 is used to put a FIFO into VH w/CB Canceled
exten => 2001,1,NoOp(==============> ? EXTN 2001 Test call BEGIN <=====================)
exten => 2001,n,Wait(1)
exten => 2001,n,Monitor(wav,${CALLFILENAME},m)
exten => 2001,n,Flite("This is 2 0 0 1, Press 1 ")
exten => 2001,n,Wait(1)
exten => 2001,n,SendDTMF(1,1500, 150 )
exten => 2001,n,Wait(2)
exten => 2001,n,Flite(", Press 33033")
exten => 2001,n,SendDTMF(33033#,150,150)
exten => 2001,n,Wait(2)
exten => 2001,n,Flite(", Press 1")
exten => 2001,n,SendDTMF(1,150,150)
exten => 2001,n,Wait(2)
exten => 2001,n,Flite(", Press 1")
exten => 2001,n,SendDTMF(1,150,150)
exten => 2001,n,Wait(2)
exten => 2001,n,Flite(", Press 1")
exten => 2001,n,SendDTMF(1,150,150)
exten => 2001,n,Wait(4)
exten => 2001,n,Flite(", Goodbye!")
exten => 2001,n,NoOp(==============> EXTN 2001 Test call HANGUP <=====================)
exten => 2001,n,Hangup()
When the call file is dropped into the outgoing directory the call is made to the Cisco IVR ok, but the DTMF is not getting there.
I have recorded the call from the asterisk side and do not hear any DTMF.
I have tried various combinations of the SIPDtmfMode values (rfc2833, info, auto, etc), settings in:
- the Trunk Peer
- the extensions_custom.conf, just before the before dial
- and on the 2001 extension
With rfc2833 mode set in extensions_custom.conf:
exten => _940060XX,n,SIPDtmfMode(rfc2833)
exten => _940060XX,n,Dial(SIP/CiscoOut/${EXTEN:1},60)
Calling from x3001, DTMF signaling as SIP INFO, I can get:
[2016-04-08 10:51:02] DTMF[25693][C-00000001] channel.c: DTMF begin '1' received on SIP/3001-00000003
[2016-04-08 10:51:02] DTMF[25693][C-00000001] channel.c: DTMF begin passthrough '1' on SIP/3001-00000003
[2016-04-08 10:51:02] DTMF[25693][C-00000001] channel.c: DTMF end '1' received on SIP/3001-00000003, duration 80 ms
[2016-04-08 10:51:02] DTMF[25693][C-00000001] channel.c: DTMF end accepted with begin '1' on SIP/3001-00000003
[2016-04-08 10:51:02] DTMF[25693][C-00000001] channel.c: DTMF end '1' detected to have actual duration 59 on the wire, emulation will be triggered on SIP/3001-00000003
[2016-04-08 10:51:02] DTMF[25693][C-00000001] channel.c: DTMF end '1' has duration 59 but want minimum 80, emulating on SIP/3001-00000003
[2016-04-08 10:51:02] DTMF[25693][C-00000001] channel.c: DTMF end emulation of '1' queued on SIP/3001-00000003
I believe this is the logging of the out-of-band DTMF….. (is that correct?)
Which is NOT recognized by the IVR on Cisco.
If, I do a call with the call file, x2001, I get:
[2016-04-08 11:06:58] VERBOSE[26881][C-00000002] pbx.c: -- Executing [2001@CiscoOut:6] SendDTMF("SIP/10.10.0.117-00000007", "1,1500, 150 ") in new stack
[2016-04-08 11:07:00] VERBOSE[26881][C-00000002] pbx.c: -- Executing [2001@CiscoOut:7] Wait("SIP/10.10.0.117-00000007", "2") in new stack
[2016-04-08 11:07:02] VERBOSE[26881][C-00000002] pbx.c: -- Executing [2001@CiscoOut:8] Flite("SIP/10.10.0.117-00000007", "", Press 33033"") in new stack
[2016-04-08 11:07:02] VERBOSE[26881][C-00000002] file.c: -- <SIP/10.10.0.117-00000007> Playing '/tmp/flite_34400481.slin' (language 'en')
[2016-04-08 11:07:05] VERBOSE[26881][C-00000002] pbx.c: -- Executing [2001@CiscoOut:9] SendDTMF("SIP/10.10.0.117-00000007", "33033#,150,150") in new stack
[2016-04-08 11:07:07] VERBOSE[26881][C-00000002] pbx.c: -- Executing [2001@CiscoOut:10] Wait("SIP/10.10.0.117-00000007", "2") in new stack
[2016-04-08 11:07:09] VERBOSE[26881][C-00000002] pbx.c: -- Executing [2001@CiscoOut:11] Flite("SIP/10.10.0.117-00000007", "", Press 1"") in new stack
No logging of the out-of-band DTMF…..
This DTMF, is also NOT recognized by the IVR on Cisco.
In summary, I can manual calls from a Phonerlite phone into the Cisco IVR and DTMF works OK.
However, I cannot get it to work from a .call file.
I have also tried tweaking: the port, insecure, nat, the codecs…, qualify, canreinvite, promiscredir, trustrpid
If it’s an issue on the Cisco side, why does it only fail when I call from a call file ?
The voice seems OK, it’s just the DTMF that is a problem.
Is there something wrong with how I trying to do this ?
Just to be clear I want to use .call files to make calls into an IVR through a Cisco system and DTMF digits into it.
Thanks,
Andy