[asterisk-bugs] [JIRA] (ASTERISK-29051) res_pjsip_sdp_rtp: Does not set correct values on RTP instance when "auto" DTMF is used

Holger Hans Peter Freyther (JIRA) noreply at issues.asterisk.org
Tue Sep 22 23:26:36 CDT 2020


    [ https://issues.asterisk.org/jira/browse/ASTERISK-29051?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=252199#comment-252199 ] 

Holger Hans Peter Freyther commented on ASTERISK-29051:
-------------------------------------------------------

Thanks Joshua for pointing me into the right direction. I don't fully understand how the AST_RTP_PROPERTY_DTMF and dtmf_mode_set interact but clearing the property for the channel that doesn't have telephone-event in the SDP file makes them incompatible (from the asterisk rtp engine and native bridge support).

I also updated two more places in get_codecs in case there is a re-invite and the telephone-event will show up int he SDP file. Please take a look if I got it right.

> res_pjsip_sdp_rtp: Does not set correct values on RTP instance when "auto" DTMF is used
> ---------------------------------------------------------------------------------------
>
>                 Key: ASTERISK-29051
>                 URL: https://issues.asterisk.org/jira/browse/ASTERISK-29051
>             Project: Asterisk
>          Issue Type: Bug
>      Security Level: None
>          Components: Resources/res_pjsip_sdp_rtp
>    Affects Versions: 17.6.0
>         Environment: Debian Buster
>            Reporter: Sebastian Damm
>            Assignee: Unassigned
>            Severity: Minor
>         Attachments: alltraffic.pcap, asterisk.log, asterisk-nocolor.log
>
>
> When bridging two call legs where one leg supports rfc4733 events and the other leg does not, DTMF tones don't get converted. This is because Asterisk enters native bridge if codecs are equal and then has no chance to detect anything inside the rtp stream. When transcoding from one codec to another, Asterisk stays in simple bridge, and it should behave the same way if dtmf modes differ. 
> To reproduce: Set dtmf_mode to "auto" in the endpoint settings in pjsip.conf. Send a call from a client only supporting inband DTMF to the Asterisk, send this call to another client supporting telephone-events. Then send DTMF digits from the calling device. They will end up inband on the receiving client. However, if the receiving client is for example another Asterisk, it will not look into the audio if the SDP offered telephone-event. DTMF digits will not be recognized.



--
This message was sent by Atlassian JIRA
(v6.2#6252)



More information about the asterisk-bugs mailing list