[Home]

Summary:ASTERISK-28261: PJSIP: SDP in 180 Ringing is ignored
Reporter:Michael Maier (micha)Labels:patch pjsip
Date Opened:2019-01-24 12:04:04.000-0600Date Closed:2022-01-19 06:27:51.000-0600
Priority:MajorRegression?
Status:Closed/CompleteComponents:pjproject/pjsip
Versions:13.24.1 Frequency of
Occurrence
Constant
Related
Issues:
is duplicated byASTERISK-29105 chan_pjsip: 180 Ringing with SDP not changed into progress
Environment:CentOSAttachments:( 0) 180-ignored-sdp.pcapng
( 1) aor.txt
( 2) endpoint.txt
( 3) no-sdp-with-180.txt
( 4) res_pjsip_session-neu-3.c.diff
Description:Given is an outbound call to a callee via asterisk to the ISP.
After INVITE, the ISP sends 100 Trying and some time later 180 Ringing *w/* SDP and the header "P-Early-Media: sendonly" (no 183 or any other thing until callee responds).
SDP in 180 contains media attribute *sendrecv* (contradicting to the P-Early-Media header).
Asterisk 13.24.1 sends PRACK to the ISP (w/o SDP) and the 180 to the caller - but SDP is dropped and therefor no early media is possible!
Comments:By: Asterisk Team (asteriskteam) 2019-01-24 12:04:04.502-0600

Thanks for creating a report! The issue has entered the triage process. That means the issue will wait in this status until a Bug Marshal has an opportunity to review the issue. Once the issue has been reviewed you will receive comments regarding the next steps towards resolution.

A good first step is for you to review the [Asterisk Issue Guidelines|https://wiki.asterisk.org/wiki/display/AST/Asterisk+Issue+Guidelines] if you haven't already. The guidelines detail what is expected from an Asterisk issue report.

Then, if you are submitting a patch, please review the [Patch Contribution Process|https://wiki.asterisk.org/wiki/display/AST/Patch+Contribution+Process].

Please note that once your issue enters an open state it has been accepted. As Asterisk is an open source project there is no guarantee or timeframe on when your issue will be looked into. If you need expedient resolution you will need to find and pay a suitable developer. Asking for an update on your issue will not yield any progress on it and will not result in a response. All updates are posted to the issue when they occur.

By: Michael Maier (micha) 2019-01-24 12:06:00.705-0600

Trace of the call

By: Michael Maier (micha) 2019-01-24 12:07:53.140-0600

Debug trace

By: George Joseph (gjoseph) 2019-01-28 07:30:30.200-0600

Michael, can you provide the endpoint and aor configuration for the endpoint in question?  You can just use the "pjsip show endpoint" and "pjsip show aor" commands.


By: Michael Maier (micha) 2019-01-28 07:53:01.234-0600

That's the aor data

By: Michael Maier (micha) 2019-01-28 07:53:33.917-0600

That's the endpoint data.

By: Michael Maier (micha) 2019-01-28 07:57:41.354-0600

The attached patch contains a workaround for this bug. Only the "else if" path is needed here (the if-path belongs to ASTERISK-28208)

By: George Joseph (gjoseph) 2019-01-28 09:19:35.206-0600

Michael,  Can you sign the license agreement so we can accept the patch?  It's easy.
https://issues.asterisk.org/jira/secure/DigiumLicense.jspa


By: Michael Maier (micha) 2019-01-28 10:08:27.141-0600

I signed the license agreement. But I'm not sure if it has been working, because I accidentally hit the return key - but I wasn't able to fix it afterwards (I was told there would be already a request pending).

By: George Joseph (gjoseph) 2019-01-28 10:25:23.033-0600

I'll reject it and you can submit again.


By: Michael Maier (micha) 2019-01-28 12:33:11.819-0600

Hopefully got it now.

By: George Joseph (gjoseph) 2019-01-30 12:41:24.215-0600

Would you be up for submitting your patch yourself at https://gerrit.asterisk.org?  If you think this will be your only contribution then I'm fine with submitting this patch for you.  If you think you may have other contributions, then submitting this one yourself would be the best way to go.

https://wiki.asterisk.org/wiki/display/AST/Patch+Contribution+Process
https://wiki.asterisk.org/wiki/display/AST/Code+Review


By: Michael Maier (micha) 2019-01-30 13:54:54.549-0600

To be honest, I'm a bit surprised, that the submitted patch should be used as a final solution. I primarily aimed to show by a small - for myself working - code example, how this problem could be fixed quickly.

I really don't know (and can't say at all at this moment) if this patch is the correct way to achieve the desired behavior and I can't say at all, if this patch would work with other asterisk versions, too, because I don't use them and can't test them (I don't have a complete development and test environment handy here at the moment).

Therefore I would be happy, if you could do the process for me. Regardless of that, I'm happy to further support you wherever possible if there are any more questions.

It's fine for me if it takes some more time as I'm anyway compiling each version of asterisk myself on base of a RPM spec file, which applies this patch automatically.