[Freeswitch-users] Set RFC2833 PT on b-leg?

Marcel Haldemann marcel.haldemann at convercom.ch
Fri May 24 16:53:55 UTC 2019

Hi Alex,

Thanks, but this just shows how to parse it, “rtp_payload_number” is just a user-defined variable and no freeswitch variable. At least I can’t find it in the sourceCode or docs somewhere (I also tested and it doesn’t work).

What I expected to work is:

<condition field="${switch_r_sdp}" expression="a=rtpmap:(\d+)\stelephone-event/8000" break="never">
  <action application="export" data="_nolocal_rfc2833_pt=$1"/>

But it doesn’t. the rfc2833 pt is still 101 on the b-leg.


Von: FreeSWITCH-users <freeswitch-users-bounces at lists.freeswitch.org> Im Auftrag von Alexey Sibyakin
Gesendet: Freitag, 24. Mai 2019 12:54
An: FreeSWITCH Users Help <freeswitch-users at lists.freeswitch.org>
Betreff: Re: [Freeswitch-users] Set RFC2833 PT on b-leg?


If I got you right, the example from vanilla dialplan should help you:

<condition field="${switch_r_sdp}" expression="a=rtpmap:(\d+)\stelephone-event/8000" break="never">
  <action application="set" data="rtp_payload_number=$1"/>
  <anti-action application="start_dtmf"/>

but you may need to use export instead of set.


Alex Sibyakin | Support Engineer SignalWire | 228 Hamilton Ave 3rd Floor, Palo Alto, CA 94303 Email: alex at freeswitch.com<mailto:alex at freeswitch.com> Website: https://www.signalwire.com

On Fri, May 24, 2019 at 6:25 PM Marcel Haldemann <marcel.haldemann at convercom.ch<mailto:marcel.haldemann at convercom.ch>> wrote:
Hi Guys,

I’m Looking for a possibility to set the payload type for “DTMF via RFC2833” on the b-leg (bridge) per Call.
Overwriting the “rfc2833-pt” setting from the Outbound profile.

I can’t find any variable doing this. I tried to export “rfc2833_pt” on a call, once with “rfc2833-pt” set to “101” in the profile and once without setting the “rfc2833-pt” parameter at all.
If “rfc2833-pt” is not set in the profile FreeSwitch just defaults to 101 rather than taking it from the a-leg (what I was hoping for).

A variable to instruct Freeswitch to take the same “RFC2833 Payload type” on the B-Leg (bridge) as on the a-leg would also be fine, as this is finally the goal.

The reason I need this is:

We found that if we use Bypass_media_after_brdige with bypass_media_after_bridge_oldscool
and the a-leg uses RFC2833 DTMF with any other payload type than 101, DTMFs don’t work after the reInvite. (we have to use oldscool as the not oldscool one isn’t working, because the SoftSwitch isn’t fetching the sdp and sending it to the end device and not all end-devices handle this properly)

For tests we then changed the “rfc2833-pt” to always the value we knew the call will have as pt 96, 100, …
Then all worked fine.

The best solution would be to have a variable doing: “useSamePayloadTypeForRfc2833OnBrdige” = “true”. Is there any such variable ?

The second best Solution would be to parse it out of the m_sdp variable and then have a variable “rfc2833_pt” = “xxx” (using the “export” application to set it on b-leg (bridge)). Is there any such variable ?

The only current possible solution I could think is to make Outpundprofiles for all possible PaylaodTypes 96-127 and maybe call them “Outbound96” – “Outbound127”, parse the PT from m_sdp and use the proper profile. But this is very ugly :o

Any other solutions/suggestions ?


The FreeSWITCH project is sponsored by SignalWire https://signalwire.com
Enhance your FreeSWITCH install with disruptive priced SMS and PSTN services.
Build your next product on our scalable cloud platform.

Join our online community to chat in real time https://signalwire.community

Professional FreeSWITCH Services
sales at freeswitch.com<mailto:sales at freeswitch.com>

Official FreeSWITCH Sites

FreeSWITCH-users mailing list
FreeSWITCH-users at lists.freeswitch.org<mailto:FreeSWITCH-users at lists.freeswitch.org>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20190524/e3d3277b/attachment-0001.html>

More information about the FreeSWITCH-users mailing list