Floimair Florian
2018-Sep-26 13:25 UTC
[asterisk-users] chan_pjsip: DTMF mode "auto_info" on endpoints
Hey all! I recently tried the dtmf_mode "auto_info" on my setup to support endpoints that only understand SIP INFO as a fallback. My setup is the following: Endpoint A (RFC4733) --> Asterisk <-- Endpoint B (SIP INFO) Both are configured with "auto_info" dtmf_mode in pjsip.conf. What I ran into is, that DTMF sent from endpoint A to endpoint B is additionally sent via inband audio on the RTP stream from Asterisk to endpoint B, as one can clearly hear the DTMF tone in the audio stream, when a capture is played back on Wireshark. On the leg from endpoint A to Asterisk there is no inband DTMF signal in the RTP audio stream. Can someone confirm this behavior? If yes than this is clearly a bug. I had a look in the code which introduced this feature and couldn't find anything obvious why this is happening. With best regards Florian Floimair Innovation - Software-Development COMMEND INTERNATIONAL GMBH A-5020 Salzburg, Saalachstraße 51 http://www.commend.com <http://www.commend.com/> Security and Communication by Commend FN 178618z | LG Salzburg
Joshua Colp
2018-Sep-26 13:47 UTC
[asterisk-users] chan_pjsip: DTMF mode "auto_info" on endpoints
On Wed, Sep 26, 2018, at 10:25 AM, Floimair Florian wrote:> Hey all! > > I recently tried the dtmf_mode "auto_info" on my setup to support > endpoints that only understand SIP INFO as a fallback. > > My setup is the following: > > Endpoint A (RFC4733) --> Asterisk <-- Endpoint B (SIP INFO) > > Both are configured with "auto_info" dtmf_mode in pjsip.conf. > What I ran into is, that DTMF sent from endpoint A to endpoint B is > additionally sent via inband audio on the RTP stream from Asterisk to > endpoint B, as one can clearly hear the DTMF tone in the audio stream, > when a capture is played back on Wireshark. On the leg from endpoint A > to Asterisk there is no inband DTMF signal in the RTP audio stream. > > Can someone confirm this behavior? If yes than this is clearly a bug. > I had a look in the code which introduced this feature and couldn't find > anything obvious why this is happening.Have you bumped up the core debug to see what's going on underneath? There will be information about whether it is really generating the DTMF in the core, and if so then it'd be a result of the digit_begin function of chan_pjsip returning a value it shouldn't. -- Joshua Colp Digium - A Sangoma Company | Senior Software Developer 445 Jan Davis Drive NW - Huntsville, AL 35806 - US Check us out at: www.digium.com & www.asterisk.org
Floimair Florian
2018-Sep-27 07:40 UTC
[asterisk-users] chan_pjsip: DTMF mode "auto_info" on endpoints
Yeah, I did enable core debug level 5 but I don't get something that would point me in the right direction. ["2018-09-26 11:39:28.6507"] DTMF[105612][C-00000001] channel.c: DTMF end '1' received on PJSIP/XXXXX-00000001, duration 250 ms ["2018-09-26 11:39:28.6507"] DTMF[105612][C-00000001] channel.c: DTMF begin emulation of '1' with duration 250 queued on PJSIP/XXXXX-00000001 ["2018-09-26 11:39:28.9137"] DTMF[105612][C-00000001] channel.c: DTMF end emulation of '1' queued on PJSIP/XXXXX-00000001 ["2018-09-26 11:39:28.9139"] DEBUG[105597][C-00000001] chan_pjsip.c: Told to send end of digit on Auto-Info channel PJSIP/XXXXX-00000000 RFC4733 NOT negotiated using INFO instead. ["2018-09-26 11:39:28.9139"] DEBUG[105391] res_pjsip_session.c: Method is INFO Here's my plan now: The chan_pjsip_digit_begin() function in channels/chan_pjsip.c does not have any debug output in the code, only chan_pjsip_digit_end() does and I do see that in the log. Maybe I need to insert additional debug statements in chan_pjsip_digit_begin() and see if it's really doing the right stuff in the case AST_SIP_DTMF_AUTO_INFO. Another step would probably be then to have a look into ast_rtp_instance_dtmf_begin(). By the way I forgot to mention that Asterisk actually does send SIP INFO with DTMF to Endpoint B (which is what is expected) but it seems that the inband audio is added additionally (which is a problem). With best regards Florian Floimair Innovation - Software-Development COMMEND INTERNATIONAL GMBH A-5020 Salzburg, Saalachstraße 51 http://www.commend.com <http://www.commend.com/> Security and Communication by Commend FN 178618z | LG Salzburg Am 26.09.18, 15:47 schrieb "asterisk-users im Auftrag von Joshua Colp" <asterisk-users-bounces at lists.digium.com im Auftrag von jcolp at digium.com>: On Wed, Sep 26, 2018, at 10:25 AM, Floimair Florian wrote: > Hey all! > > I recently tried the dtmf_mode "auto_info" on my setup to support > endpoints that only understand SIP INFO as a fallback. > > My setup is the following: > > Endpoint A (RFC4733) --> Asterisk <-- Endpoint B (SIP INFO) > > Both are configured with "auto_info" dtmf_mode in pjsip.conf. > What I ran into is, that DTMF sent from endpoint A to endpoint B is > additionally sent via inband audio on the RTP stream from Asterisk to > endpoint B, as one can clearly hear the DTMF tone in the audio stream, > when a capture is played back on Wireshark. On the leg from endpoint A > to Asterisk there is no inband DTMF signal in the RTP audio stream. > > Can someone confirm this behavior? If yes than this is clearly a bug. > I had a look in the code which introduced this feature and couldn't find > anything obvious why this is happening. Have you bumped up the core debug to see what's going on underneath? There will be information about whether it is really generating the DTMF in the core, and if so then it'd be a result of the digit_begin function of chan_pjsip returning a value it shouldn't. -- Joshua Colp Digium - A Sangoma Company | Senior Software Developer 445 Jan Davis Drive NW - Huntsville, AL 35806 - US Check us out at: www.digium.com & www.asterisk.org -- _____________________________________________________________________ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- Astricon is coming up October 9-11! Signup is available at: https://www.asterisk.org/community/astricon-user-conference Check out the new Asterisk community forum at: https://community.asterisk.org/ New to Asterisk? Start here: https://wiki.asterisk.org/wiki/display/AST/Getting+Started asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Reasonably Related Threads
- How to set the global setting for each pjsip endpoint
- How do I enable instant messaging support for PJSIP endpoints on Asterisk 13.1.0?
- Digium's Opus Codec download links broken?
- PJSIP configuration question
- How do I enable instant messaging support for PJSIP endpoints on Asterisk 13.1.0?