Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Freeswitch/Sofia discards subsequent 18x messages #2612

Open
MichaelSekora opened this issue Sep 30, 2024 · 2 comments
Open

Freeswitch/Sofia discards subsequent 18x messages #2612

MichaelSekora opened this issue Sep 30, 2024 · 2 comments
Labels
bug Something isn't working

Comments

@MichaelSekora
Copy link

Describe the bug
Freeswitch/Sofia discards subsequent 18x messages after receiving a provisional response (excluding 100, of course).
Unfortunately, this behavior causes issues, as many operators—particularly incumbents—send "Session Progress" messages followed by "Ringing."

The feature "sip_ignore_183nosdp" doesn't resolve the problem, as "Session Progress" messages often precede "180" both with and without SDP, as observed in numerous traces.
As a result, the A-party doesn’t receive any ringing notification at all.

It's important to highlight that there is no RFC prohibiting the transmission of 18x messages in descending order.
In fact, sending multiple 18x messages is both allowed and practical, as it enables pre-connect-announcements (e.g., tariff information) before ringing.
Moreover, this is simply a widespread reality.

To Reproduce
Steps to reproduce the behavior:

  1. outgoing call to an external operator (e.g. incumbent) who sends back 183 and subsequent 180
  2. Freeswitch does not forward the received 180 to the bridged A-leg

Expected behavior
be transparent for subsequent Provisional Responses

Package version

  • Version 1.10.10
@MichaelSekora MichaelSekora added the bug Something isn't working label Sep 30, 2024
@Hilife123
Copy link

I've the same problem.
I hope there will be a solution.
and Yes - it's allowed to send a 180 after a 183.

@haeferer
Copy link

In some countries, the correct detection of ringing (SIP 180, with audio detection as a fallback) is part of the regulatory rules for B2C outbound calls. These regulations specify the minimum number of seconds a customer’s phone must ring before the calling company can hang up, and the maximum number of seconds the phone is allowed to ring before the calling company must hang up.

In the end, a SIP 180 "Ringing" signal should only be generated by a device that is actively informing a user, and it should simply be passed down to the originating caller.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants