Asterisk 13 and Payload on tandem sip call payload is 240 when expected 160

Our SIP service comes from ATT VoIP and the call is processed thru the asterisk 13 and out as SIP to the Riedel intercom.

When using asterisk 11 all was OK

After switching to Asterisk 13 the Riedel Artist intercom is no linger happy when a call comes in from ATT VIA a cell phone or a POTS line i get the error below

Invalid RTP Payload Length,Node/002/Client/05/VoIPLocal/7,Major,Received RTP payload type 0 with invalid length 240 (expected 160).

calls within the FreePBX with asterisk 13 and calls from another number (different locations) from ATT VOIP work properly.

this leads me to believe that ATT is sending the call as Payload 160 on one type of call and as 240 on another. Furthermore it appears that the Asterisk 11 masked the change and Asterisk 13 does not. I do not know if this is normal behavior of asterisk.

i have the following questions.

  1. how can i tell on a call by call basis what payload is ATT sending?

  2. assuming i am correct is it normal to receive different payloads on different call types from ATT?

  3. is there a way to set the asterisk 13 to behave as asterisk 11 did and mask the issue bu always have a payload of 160 on the trunks going toward the Riedel intercom?

It’s referring to payload length, not the payload number. It’s expecting a length of 160 while it received 240 - which is technically fine for ULAW. You’d need to provide the configuration and SDP for each leg to show what is being negotiated.

Thank you for the reply

Below are my sip settings

ATT-VOIP is the inbound connection and 8893 is the Riedel intercom.

please excuse my lack of knowledge i do not know how to provide the SDP

After talking with ATT they are sending different payloads, they say because my invite allows them to.

this appears to be in agreement that this is technically ok but the intercom does not seem to like it.

is there a way for me to tell my outbound towards the intercom to restrict the payload to 160? And will the Asterisk trans-code this?

thank you

[ATT-VOIP]
disallow=all
host=xxx.xxx.xxx.xxx
type=friend
insecure=port,invite
allow=ulaw
context=from-trunk-sip-ATT-VOIP

[8893]
disallow=all
username=xxxx
type=friend
secret=xxxxxxxxxxxxx
host=dynamic
allow=ulaw
context=from-trunk-sip-8893

The SIP and SDP traffic can be logged using “sip set debug on”

Ok will try that

thank you

Below is what ATT sent me does this help you to figure out my issue?

they show both ATT SDP message and MY SDP message.

however i am confused they say i need to change to ptime 20 yet they show me at ptime=20

chris

Begin ATT email

Hi Chris,

What we offer on our invite is maxptime of 30 and you responded back with 200 OK ptime 20 and maxptime 150 and because you are specifying a maxptime of 150 you are telling the IP Flex Network that you are willing to accept packet payloads in any value so long as the 150 byte payload is not exceeded. If you want a ptime20 then downgrade your maxptime to 20. If the IP PBX specifies a payload size of 20 on the initial 18x and 200 OK messages (i.e. using “ptime: 20”), then the AT&T network will always send 20 byte G.729 payloads. If the IP PBX specifies a payload size of 30 on the on the initial 18x and 200 OK message (i.e. using ptime: 30), then the AT&T network will always send 30 byte payloads.

ATT Invite

SDP Message Content (content length field given) v=0
o=BroadWorks 138941974 1 IN IP4 12.194.122.59
s=-
c=IN IP4 12.194.122.59
t=0 0
m=audio 23696 RTP/AVP 18 0 100
a=rtpmap:18 G729/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:100 telephone-event/8000
a=fmtp:100 0-15
a=sendrecv
a=maxptime:30
SDP (SDP) decoder version = SDP - RFC 2327, part of RFC2326, RFC 3108, RFC 3266, RFC3407, RFC3555, RFC4566, RFC5245, part of RFC6064, RFC5939, ITU-T T.38 Annex D, TS 24.229 V8.9.0, TS 24.229 V9.2.0, ASCII

200 OK

SDP Message Content (content length field given) v=0
o=root 1164491836 1164491836 IN IP4 10.20.200.200
s=Asterisk PBX 13.19.1
c=IN IP4 12.66.229.18
t=0 0
m=audio 16952 RTP/AVP 0 100
a=rtpmap:0 PCMU/8000
a=rtpmap:100 telephone-event/8000
a=fmtp:100 0-16
a=ptime:20
a=maxptime:150
a=sendrecv
SDP (SDP) decoder version = SDP - RFC 2327, part of RFC2326, RFC 3108, RFC 3266, RFC3407, RFC3555, RFC4566, RFC5245, part of RFC6064, RFC5939, ITU-T T.38 Annex D, TS 24.229 V8.9.0, TS 24.229 V9.2.0, ASCII

Thank you,

Tier 2 IPFLEX Technical Customer Support
AT&T Global Enterprise Managed Services

Yes, that confirms what they are doing. I’m not sure if chan_sip has a way to disregard that or make things such that we’d adjust.

After more conversations with ATT what they are claiming is that even with the asterisk set to Ulaw only that the Asterisk is responding with a 200 OK to g.729 and to ptime:30 even though the asterisk is set to ptime:20

Please can you tell if they are correct and how do i fix this?

Chris

With the information you’ve provided they offered ULAW and G729, we only responded with ULAW and a ptime of 20. I don’t know where they would have gotten the impression that this is otherwise, unless they are looking at a different call that is not on here.

As I stated previously - I don’t recall much of chan_sip and don’t know if there is anything in it to alter this.

Oh thank you

If they can demonstrate a bad response I will let you know.

Chris

Hi

ATT is telling me that i need to change “a=maxptime:150” to 20 else anything up to 150 will result in the larger payload.

how do i change this?

i tried the following

disallow=all
allow=ulaw:20

that did not work.

these services worked as expected in asterisk 11 and after going to 13 when the trouble started.

Any help appreciated.

Chris