Re: [pjsip] missing rtpmap returns BAD Request

MT
Marc Tschech
Wed, Jul 31, 2019 4:29 PM

Hi,

vodafone is aware of the problem and they promised to fix it.
Anyway I think the call shouldn't be declined with BAD REQUEST.

Right now I can only reproduce the problem when I use an iphone Xs with Vodafone as provider.
When I use the same sim-card in an iphone 8 it's working fine.

-----Ursprüngliche Nachricht-----
Von: Michael Maier m1278468@mailbox.org
Gesendet: Mittwoch, 31. Juli 2019 18:21
An: Marc Tschech m.tschech@nucleus-gmbh.com
Cc: pjsip list pjsip@lists.pjsip.org
Betreff: Re: [pjsip] missing rtpmap returns BAD Request

On 25.07.19 at 11:07 Marc Tschech wrote:

Hey guys,

I have the following problem:
I have a business sip-trunk from Vodafone Germany. On a few incoming calls I see that there is a mistake in the incoming INVITE:

As you can see there is m=audio 55004 RTP/AVP 96 9 8 101 102 So an
rtpmap for 96, 101 and 102 is required.
Unfortunately the 96 mapping is missing. I would expect to ignore the 96 codec and work with one of the other but instead PJSIP is returning BAD REQUEST and the call drops.

I tested with the service number of Vodafone (498001721234) and got exactly this SDP in 200 OK or 183 Session Progress:

v=0
o=- 626692240 761358328 IN IP4 x.y.z.q
s=IMSS
c=IN IP4 a.b.c.d
t=0 0
m=audio 11258 RTP/SAVP 8 101
a=rtpmap:101 telephone-event/8000
a=sendrecv
a=ptime:20
a=crypto:1 AES_CM_128_HMAC_SHA1_80 inline:....

=> Seems to be a "feature" of Vodafone.

But this call seemed to work for me (I could hear the IVR system). The original call, which was reproducibly broken, worked until the MOH was interrupted by a human being (I didn't wait for a Vodafone agent coming in).

Thanks
Michael

<- History Entry 569 Received from 88.79.204.9:5060 at 1563208936 ->
INVITE sip:MY_EXTERNAL_NUMBER@pbx1.nucleus.ngn.vodafone.de:5060
SIP/2.0
Via: SIP/2.0/UDP
88.79.204.9:5060;received=88.79.204.9;branch=z9hG4bKrkmtgr009837vfa016
00.1;origin=172.19.116.80
To: sip:MY_EXTERNAL_NUMBER@nbgsx001.ngn.vodafone.de;user=phone
From:
sip:CALLING_NUMBER@ims.vodafone.de;user=phone;tag=SDvao3a01-e398456e
Call-ID: SDvao3a01-7b27dc6a53070acda0d03a904428df03-ct4u830000
CSeq: 1 INVITE
Max-Forwards: 60
Contact: sip:CALLING_NUMBER@88.79.204.9:5060;transport=udp
Date: Mon, 15 Jul 2019 18:42:16 GMT
Allow: INVITE, ACK, PRACK, CANCEL, BYE, OPTIONS, MESSAGE, NOTIFY,
UPDATE, REGISTER, INFO, REFER, SUBSCRIBE
Supported: resource-priority
P-Asserted-Identity: sip:CALLING_NUMBER@ims.vodafone.de;user=phone
P-Asserted-Identity: tel:CALLING_NUMBER
Accept: application/sdp
P-Early-Media: supported
Content-Type: application/sdp
Content-Length: 289
Content-Type: application/sdp
Content-Length: 289

v=0
o=- 0 0 IN IP4 88.79.204.9
s=IMSS
c=IN IP4 88.79.204.9
t=0 0
m=audio 55004 RTP/AVP 96 9 8 101 102
a=rtpmap:101 telephone-event/8000
a=rtpmap:102 telephone-event/16000
a=ptime:20
a=maxptime:30
a=fmtp:96 mode-set=0,1,2; mode-change-period=2;
mode-change-neighbor=1; max-red=0

Hi, vodafone is aware of the problem and they promised to fix it. Anyway I think the call shouldn't be declined with BAD REQUEST. Right now I can only reproduce the problem when I use an iphone Xs with Vodafone as provider. When I use the same sim-card in an iphone 8 it's working fine. -----Ursprüngliche Nachricht----- Von: Michael Maier <m1278468@mailbox.org> Gesendet: Mittwoch, 31. Juli 2019 18:21 An: Marc Tschech <m.tschech@nucleus-gmbh.com> Cc: pjsip list <pjsip@lists.pjsip.org> Betreff: Re: [pjsip] missing rtpmap returns BAD Request On 25.07.19 at 11:07 Marc Tschech wrote: > Hey guys, > > I have the following problem: > I have a business sip-trunk from Vodafone Germany. On a few incoming calls I see that there is a mistake in the incoming INVITE: > > As you can see there is m=audio 55004 RTP/AVP 96 9 8 101 102 So an > rtpmap for 96, 101 and 102 is required. > Unfortunately the 96 mapping is missing. I would expect to ignore the 96 codec and work with one of the other but instead PJSIP is returning BAD REQUEST and the call drops. I tested with the service number of Vodafone (498001721234) and got exactly this SDP in 200 OK or 183 Session Progress: v=0 o=- 626692240 761358328 IN IP4 x.y.z.q s=IMSS c=IN IP4 a.b.c.d t=0 0 m=audio 11258 RTP/SAVP 8 101 a=rtpmap:101 telephone-event/8000 a=sendrecv a=ptime:20 a=crypto:1 AES_CM_128_HMAC_SHA1_80 inline:.... => Seems to be a "feature" of Vodafone. But this call seemed to work for me (I could hear the IVR system). The original call, which was reproducibly broken, worked until the MOH was interrupted by a human being (I didn't wait for a Vodafone agent coming in). Thanks Michael > > > <- History Entry 569 Received from 88.79.204.9:5060 at 1563208936 -> > INVITE sip:MY_EXTERNAL_NUMBER@pbx1.nucleus.ngn.vodafone.de:5060 > SIP/2.0 > Via: SIP/2.0/UDP > 88.79.204.9:5060;received=88.79.204.9;branch=z9hG4bKrkmtgr009837vfa016 > 00.1;origin=172.19.116.80 > To: sip:MY_EXTERNAL_NUMBER@nbgsx001.ngn.vodafone.de;user=phone > From: > sip:CALLING_NUMBER@ims.vodafone.de;user=phone;tag=SDvao3a01-e398456e > Call-ID: SDvao3a01-7b27dc6a53070acda0d03a904428df03-ct4u830000 > CSeq: 1 INVITE > Max-Forwards: 60 > Contact: sip:CALLING_NUMBER@88.79.204.9:5060;transport=udp > Date: Mon, 15 Jul 2019 18:42:16 GMT > Allow: INVITE, ACK, PRACK, CANCEL, BYE, OPTIONS, MESSAGE, NOTIFY, > UPDATE, REGISTER, INFO, REFER, SUBSCRIBE > Supported: resource-priority > P-Asserted-Identity: sip:CALLING_NUMBER@ims.vodafone.de;user=phone > P-Asserted-Identity: tel:CALLING_NUMBER > Accept: application/sdp > P-Early-Media: supported > Content-Type: application/sdp > Content-Length: 289 > Content-Type: application/sdp > Content-Length: 289 > > v=0 > o=- 0 0 IN IP4 88.79.204.9 > s=IMSS > c=IN IP4 88.79.204.9 > t=0 0 > m=audio 55004 RTP/AVP 96 9 8 101 102 > a=rtpmap:101 telephone-event/8000 > a=rtpmap:102 telephone-event/16000 > a=ptime:20 > a=maxptime:30 > a=fmtp:96 mode-set=0,1,2; mode-change-period=2; > mode-change-neighbor=1; max-red=0