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

[HELP] Final reply after parallel branch #3531

Open
thuroc opened this issue Nov 27, 2024 · 2 comments
Open

[HELP] Final reply after parallel branch #3531

thuroc opened this issue Nov 27, 2024 · 2 comments
Assignees

Comments

@thuroc
Copy link

thuroc commented Nov 27, 2024

I have a problem with the final replies in OpenSIPS and maybe someone here can help or give me a tip on how to solve it.

In my network, I have a "logic" OpenSIPS that forwards to two other "registrar" OpenSIPS. When a call arrives at the logic OpenSIPS, it sends it in parallel branches to both registrars. Depending on where the customer is currently registered, I either receive a 480 (Not Registered) or a code from the customer.

In the problematic case, I receive a "480 Not Registered" from one registrar and a "486 Busy" from the other. The problem is that the logic registrar always sends the 480 back to the A-party, although the Busy code would obviously be more appropriate.

In the on_failure route, I can only see the 480, and I haven’t been able to access the Busy code due to the parallel branches.

How does OpenSIPS decide which final reply it sends? Is there a way to access all the reply codes that occurred during parallel branching in order to rewrite the code myself?

Thank you in advance for your help.

Regards,
Thuroc

Copy link

Any updates here? No progress has been made in the last 15 days, marking as stale. Will close this issue if no further updates are made in the next 30 days.

@github-actions github-actions bot added the stale label Dec 13, 2024
@bogdan-iancu
Copy link
Member

As per RFC3261, in the case of parallel forking, the lowest final negative reply is selected to be sent to the caller.

In the failure route you see the selected reply code. If you want to get access to all received ones, use the onreply route.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants