[asterisk-bugs] [Asterisk 0017843]: DTMF Manager events missing with some codecs on bridged SIP calls

Asterisk Bug Tracker noreply at bugs.digium.com
Thu Aug 12 15:11:17 CDT 2010


A NOTE has been added to this issue. 
====================================================================== 
https://issues.asterisk.org/view.php?id=17843 
====================================================================== 
Reported By:                bklang
Assigned To:                
====================================================================== 
Project:                    Asterisk
Issue ID:                   17843
Category:                   Channels/chan_sip/CodecHandling
Reproducibility:            always
Severity:                   minor
Priority:                   normal
Status:                     feedback
Asterisk Version:           1.8.0-beta3 
JIRA:                       SWP-2039 
Regression:                 No 
Reviewboard Link:            
SVN Branch (only for SVN checkouts, not tarball releases): N/A 
SVN Revision (number only!):  
Request Review:              
====================================================================== 
Date Submitted:             2010-08-11 13:34 CDT
Last Modified:              2010-08-12 15:11 CDT
====================================================================== 
Summary:                    DTMF Manager events missing with some codecs on
bridged SIP calls
Description: 
I am placing calls from a SIP client endpoint (tested with various hard and
soft phones) calling to Asterisk via SIP.  Once connected to Asterisk the
caller makes choices that then sends a call out via a different SIP peer
(an outbound proxy in this case).

The endpoints and the outbound proxy are both configured to use
dtmfmode=rfc2833, a fact I can confirm by looking at packet captures and
Asterisk console output.  Enabling RTP debugging also shows the DTMF being
processed.  In addition, both the endpoints and the peer are configured
with canreinvite=no, forcing Asterisk to stay in the media path.  I have
confirmed this as well with RTP debugging.

When a call comes in from the endpoint the DTMF is working properly to
collect the destination phone number.  Each digit that is entered by the
user triggers the appropriate DTMF event on the AMI socket.  Next the call
is placed outbound via the proxy.  As soon as the call is bridged DTMF
events on AMI cease.  The RTP continues to work end-to-end and the DTMF is
received by the far end.  The only thing that appears to be broken is that
AMI events are not sent to my AMI listener.

The strange thing is that events DO work as expected, even when bridged,
when I use GSM or uLaw.  When using aLaw no events are sent by AMI once the
calls are bridged. 

This has been tested with 1.6.1.11 and 1.8.0-beta3 with the same behavior
observed.
====================================================================== 

---------------------------------------------------------------------- 
 (0125918) bklang (reporter) - 2010-08-12 15:11
 https://issues.asterisk.org/view.php?id=17843#c125918 
---------------------------------------------------------------------- 
Console output:

  == CDR updated on SIP/inbound_proxy-00000042
    -- Executing [0014044754840 at simpletest:1]
Dial("SIP/inbound_proxy-00000042", "SIP/outbound_proxy/0014044754840") in
new stack
Agent policy for SIP/inbound_proxy-00000042 is 'never'. CC not possible
    -- Called outbound_proxy/0014044754840
    -- SIP/outbound_proxy-00000043 is making progress passing it to
SIP/inbound_proxy-00000042
    -- SIP/outbound_proxy-00000043 answered SIP/inbound_proxy-00000042
    -- Locally bridging SIP/inbound_proxy-00000042 and
SIP/outbound_proxy-00000043
  == Spawn extension (simpletest, 0014044754840, 1) exited non-zero on
'SIP/inbound_proxy-00000042'


What's most important though is what happens on the AMI socket.  When I
dialled each digit in "0014044754840" I received DTMF events.  Once the
channel connected I pressed several keys on my keypad.  No DTMF events were
sent on the AMI socket.  Here's some output from a script I wrote to
monitor DTMF events:


DTMF event received on SIP/inbound_proxy-00000042: 0
DTMF event received on SIP/inbound_proxy-00000042: 0
DTMF event received on SIP/inbound_proxy-00000042: 1
DTMF event received on SIP/inbound_proxy-00000042: 4
DTMF event received on SIP/inbound_proxy-00000042: 0
DTMF event received on SIP/inbound_proxy-00000042: 4
DTMF event received on SIP/inbound_proxy-00000042: 4
DTMF event received on SIP/inbound_proxy-00000042: 7
DTMF event received on SIP/inbound_proxy-00000042: 5
DTMF event received on SIP/inbound_proxy-00000042: 4
DTMF event received on SIP/inbound_proxy-00000042: 8
DTMF event received on SIP/inbound_proxy-00000042: 4
DTMF event received on SIP/inbound_proxy-00000042: 0


Here I pressed several keys but received no more DTMF events. 

Issue History 
Date Modified    Username       Field                    Change               
====================================================================== 
2010-08-12 15:11 bklang         Note Added: 0125918                          
======================================================================




More information about the asterisk-bugs mailing list