SIP Info using chan_pjsip not listed in allow in SDP

I’m trying to use directmedia but it looks like that requires SIP Info rfc2796 in order to work. I’m using Polycom phones and since INFO isn’t in the allow list in the SDP the phones refuse to send an info packet.

I ran across this post from 2021 Asterisk PJSIP using SIP INFO.
Before I go poking around the source code is there anything I’m missing to enable dtmf using info?

SIP INFO doesn’t appear in SDP, it’s in the SIP packet itself. What is the actual configuration? What is the SIP trace (pjsip set logger on)? Is the res_pjsip_dtmf_info module loaded?

I’m using VitalPBX

The module shows loaded
res_pjsip_dtmf_info.so PJSIP DTMF INFO Support 9 Running core

pjsip set logger gave me a ton of info of course. Does this sngrep info work instead? A bit easier for me to go through. If not I can post the full pjsip logger info. The public IP of my server was replaced with xxx.xxx.x.xxx below.

I noticed this doesn’t include INFO in the ALLOW section. Setting DTMF to Info works with Yealink and microsip softphone but not with Polycom. On the Polycom I get the following error in the logs “1012134126|pps |4|00|[PpsHybridC]: MsgPpsDtmfViaInfo Rejected” and no dtmf info packet is sent from the Polycom.

Blockquote │SIP/2.0 200 OK
76.103.166.166:1030 xxx.xxx.x.xxx:5060│Via: SIP/2.0/UDP 192.168.1.23;rport=1030;received=76.103.166.166;branch=z9hG4bK5afdd480D69E6673
──────────┬───────── ──────────┬─────────│Call-ID: c9cbd6015dc47176667e92ddbf7461ef
12:41:25.352059 │ INVITE (SDP) │ │From: “101” sip:101@xxx.xxx.x.xxx;tag=904B6CF4-83A17067
+0.002049 │ ──────────────────────────> │ │To: sip:*97@xxx.xxx.x.xxx;user=phone;tag=3a497ad2-e0a3-41cc-83bf-34cec7fb3e52
12:41:25.354108 │ 401 Unauthorized │ │CSeq: 2 INVITE
+0.030803 │ <────────────────────────── │ │Server: PBX
12:41:25.384911 │ ACK │ │Contact: sip:xxx.xxx.x.xxx:5060
+0.006061 │ ──────────────────────────> │ │Allow: OPTIONS, REGISTER, SUBSCRIBE, NOTIFY, PUBLISH, INVITE, ACK, BYE, CANCEL, UPDATE, PRACK, MESSAGE,
12:41:25.390972 │ INVITE (SDP) │ │EFER
+0.001628 │ ──────────────────────────> │ │Supported: 100rel, timer, replaces, norefersub
12:41:25.392600 │ 100 Trying │ │Content-Type: application/sdp
+0.014570 │ <────────────────────────── │ │Content-Length: 238
12:41:25.407170 │ 200 OK (SDP) │ │
+0.027980 │ <────────────────────────── │ │v=0
12:41:25.435150 │ ACK │ │o=- 1697143284 1697143286 IN IP4 xxx.xxx.x.xxx
+3.508595 │ ──────────────────────────> │ │s=Asterisk
12:41:28.943745 │ BYE │ │c=IN IP4 xxx.xxx.x.xxx
+0.001586 │ ──────────────────────────> │ │t=0 0
12:41:28.945331 │ 200 OK │ │m=audio 11014 RTP/AVP 102 0
│ <────────────────────────── │ │a=rtpmap:102 G7221/16000
│ │ │a=fmtp:102 bitrate=32000
│ │ │a=rtpmap:0 PCMU/8000
│ │ │a=ptime:20
│ │ │a=maxptime:80
│ │ │a=sendrecv
│ │ │

If INFO is required in the Allow SIP header, then I’d suggest filing an issue on Github at Issues · asterisk/asterisk · GitHub with the details as we don’t add it to the list currently.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.