[OpenSIPS-Users] Changing Reply Response Code
Bogdan-Andrei Iancu
bogdan at opensips.org
Fri Oct 13 09:29:55 EDT 2017
Hi,
Where do you have the switch + sl_send_reply ? in onreply route ? or in
a failure route ?
Regards,
Bogdan-Andrei Iancu
OpenSIPS Founder and Developer
http://www.opensips-solutions.com
On 09/15/2017 12:20 AM, mwb via Users wrote:
> Sorry, I was not clear, Ben. Yes, the messages are properly being sent
> with the "chosen" response code. I was just looking to clean up or
> suppress the error messages since I have been seeing it in the logs. I
> was also concerned it might cause other issues or that I was going
> about it in the wrong way.
>
>
> On Thursday, September 14, 2017 2:07 PM, Ben Newlin
> <Ben.Newlin at genesys.com> wrote:
>
>
> One thing that was unclear is whether this is currently working and
> you are just concerned about the error or whether it doesn’t work at all.
> I believe it should work and the key to why you are getting errors is
> in the error message itself:
> “provisional or positive final replies”
> Are you validating prior to attempting to change the reply status that
> it is a 302 reply? Most servers will send at least a 100 Trying
> response and sometimes other responses. When you arm the reply route,
> all replies will be delivered to it, not just the final reply.
> Although I’m not sure if that is the case for 100 Trying responses.
> At any rate, I would do a trace to see if the server is only returning
> a 302, or if it is also returning some other provisional or final
> reply when the errors occur. If so, you should add code to only
> attempt to change the reply status when it is the expected reply (302).
> Ben Newlin
> *From: *Users <users-bounces at lists.opensips.org> on behalf of mwb via
> Users <users at lists.opensips.org>
> *Reply-To: *mwb <mwbazdarich at yahoo.com>, OpenSIPS users mailling list
> <users at lists.opensips.org>
> *Date: *Thursday, September 14, 2017 at 3:02 PM
> *To: *"users at lists.opensips.org" <users at lists.opensips.org>
> *Subject: *[OpenSIPS-Users] Changing Reply Response Code
> Hello and thanks in advance for the help.
> I have an OpenSIPS process that is set up to send routing responses
> back to a few SBCs we have. When the SBC sends an INVITE w/o RN or
> NPDI in the RURI, OpenSIPS passes the INVITE along to another server
> which returns a 302 response with the RN and NPDI information in a
> contact header. The RN/NPDI info is then incorporated into the
> response sent back to the SBC. We have a few different SBCs that
> expect different response codes, some 300 and some 302. (we are adding
> steering digits into the contact header).
> If the SBC expects a 300 and the call comes through without RN/NPDI we
> use the below code in the "reply" route for the INVITE that OpenSIPS
> sends to the other server in order to accomodate the 300 (the $avp is
> filled when the SBC initiating the call is recognized).
> switch($avp(sip_response_code)){
> case "300":
> change_reply_status("300","Multiple Choices");
> break;
> case "302":
> change_reply_status("302","Moved Temporarily");
> break;
> default:
> change_reply_status("302","Moved Temporarily");
> }
> We am receiving the following error message from OpenSIPS when the
> above is executed:
> "ERROR:sipmsgops:change_reply_status_f: the class of provisional or
> positive final replies cannot be changed"
> If the INVITE we receive from the SBC has the RN/NPDI information in
> it then we DO NOT need to send the call on to another server and thus,
> after building our response we can use the following code:
> switch($avp(sip_response_code)){
> case "300":
> sl_send_reply("300","Multiple Choices");
> break;
> case "302":
> sl_send_reply("302","Moved Temporarily");
> break;
> default:
> sl_send_reply("302","Moved Temporarily");
> }
> This works without issue, I assume because we are generating a fresh
> reply rather than proxying the reply from the RN/NPDI server.
> Is there a way to avoid the "the class of provisional or positive
> final replies cannot be changed" error?
> Are we going about this in the wrong way when we need to send an
> INVITE to the other server in order to get the RN/NPDI information?
> thanks!
>
>
>
>
> _______________________________________________
> Users mailing list
> Users at lists.opensips.org
> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.opensips.org/pipermail/users/attachments/20171013/5de811b7/attachment-0001.html>
More information about the Users
mailing list