[OpenSIPS-Users] B2BUA Transfers Intermittently Working/Not Working (Bug?)

Anca Vamanu anca at opensips.org
Tue Oct 26 12:41:44 CEST 2010


Hi Brett,

I have just tried your scenario with trunk and I see the 200 OK reply. I 
have checked with 1.6 and indeed it seems to be a problem. I think I 
will backport the changes in these two modules - even though they are 
quite a lot, but there is no point in debugging on old code when this 
problem is fixed.
So, I suggest for you to update from trunk, at least these two modules - 
b2b_entities and b2b_logic.
Be aware that you will have to install the database tables also.

Regards,

-- 
Anca Vamanu
www.voice-system.ro



On 10/21/2010 07:05 AM, Brett Woollum wrote:
> Anca,
>
> I've discovered that the REFER messages sent from the phones to the 
> OpenSIPS server/B2BUA are not receiving a 202 Accepted reply from the 
> B2BUA module, and as a result, the phones continue to re-send the 
> REFER's. The B2BUA module doesn't recognize the additional REFER's 
> because it has already torn down the original call leg. As a result 
> the additional REFER's are processed in the route script which is 
> wrong and causes the 404 Not Found errors.
>
> Here is what's happening: (assume a call already exists):
> The phone sends a REFER to the B2BUA
> The B2BUA sends BYE back to the phone
> The B2BUA invites the new leg of the call to the other phone
> The original phone continues to send REFER's to the B2BUA module, 
> which responds with 404 Not Found's
>
> I believe there should be a 202 Accepted sent from the B2BUA module to 
> the phone in response to the first REFER message, not a BYE (or maybe 
> both Accepted and BYE). But there is no 202 Accepted coming from the 
> B2BUA module to the phone.
>
> Scroll to the bottom of http://www.woollum.com/temp/opensips.txt to 
> view my B2BUA XML config, which specifies that the B2BUA should 
> respond with a 202 Accepted before ending the call leg. This is not 
> happening like it should....
>
> I am running OpenSIPS 1.6.3 on CentOS 5.5 x64 (on an AMD platform).
>
> Brett Woollum
> Brett at Woollum.com
>
>
> ----- Original Message -----
> From: "Anca Vamanu" <anca at opensips.org>
> To: users at lists.opensips.org
> Sent: Tuesday, October 19, 2010 2:20:15 AM GMT -08:00 US/Canada Pacific
> Subject: Re: [OpenSIPS-Users] B2BUA Transfers Intermittently 
> Working/Not Working (Bug?)
>
> Hi Brett,
>
> No, you needn't add anything else in your configuration file except 
> for the b2b_init_request for the initial Invite and the B2BUA should 
> know to handle the REFER that comes inside that dialog. What happens 
> is the the B2BUA does not find a matching dialog for that REFER 
> message .. I don't know why that is. I will examine the traces you 
> posted and try to reproduce this in the following days and let you know.
>
> Regards,
> -- 
> Anca Vamanu
> www.voice-system.ro
>
> On 10/19/2010 09:05 AM, Brett Woollum wrote:
>
>     Hello again Anca,
>
>     I've done more debugging, and I've found that the REFER packets
>     are all targeting my B2BUA address and getting a 404 response. It
>     seems to still be working, but I'm wondering if this is what is
>     causing the problem after the 2nd transfer.
>
>     In my log at http://www.woollum.com/temp/opensips_trace.html, you
>     can see the 404 Not Found's occurring at packet 9177. This one in
>     particular is generated for the packet above it (9175) that has
>     "sip:b2bua at 1.2.3.4" in the header of the packet.
>
>     I've configured my B2BUA module with this entry:
>     modparam("b2b_entities", "server_address", "sip:b2bua at 1.2.3.4:5060")
>
>     and this is the config file that is creating the errors:
>     if (uri==myself) {
>
>         if (method=="REGISTER") {
>           save("location");
>           exit;
>         };
>
>         # native SIP destinations are handled using our USRLOC DB
>         if (!lookup("location")) {
>     xlog("USRLOC LOOKUP: ERROR 404 - NOT FOUND $fu->$ru");
>           sl_send_reply("404", "Not Found");
>           exit;
>         };
>         append_hf("P-hint: usrloc applied\r\n");
>       };
>
>     And this is what is generated in the OpenSIPS log:
>     Oct 18 22:56:42 sip01 /usr/local/sbin/opensips[4425]: USRLOC
>     LOOKUP: ERROR 404 - NOT FOUND sip:1000 at 1.2.3.4->sip:b2bua at 1.2.3.4:5060
>
>     Is there something I need to add to my configuration that handles
>     packets with "b2bua at 1.2.3.4" as the destination ($ru)?
>
>     Brett Woollum
>     Brett at Woollum.com
>
>
>     ----- Original Message -----
>     From: "Brett Woollum" <brett at woollum.com>
>     To: "OpenSIPS users mailling list" <users at lists.opensips.org>
>     Sent: Monday, October 18, 2010 5:09:34 PM GMT -08:00 US/Canada Pacific
>     Subject: Re: [OpenSIPS-Users] B2BUA Transfers Intermittently
>     Working/Not Working (Bug?)
>
>     Hi Anca,
>
>     I set debug=6 but it does not appear to print any more detailed
>     information to my log (/var/log/messages).
>
>     I reviewed the sip trace I posted at
>     http://www.woollum.com/temp/opensips_trace.html and I still cannot
>     find any packets that are missing the header. The error log I
>     posted at http://www.woollum.com/temp/opensips.txt says that the
>     To field, From field, and RR field could not be parsed. It seems
>     as though the B2BUA module tried to open a new leg but didn't send
>     the information along? Does that make sense?
>
>      From the log earlier:
>     Oct 12 19:34:16 sip01 /usr/local/sbin/opensips[5167]: ERROR:core:parse_to: unexpected char [<] in status 5:<<<>>  .
>     Oct 12 19:34:16 sip01 /usr/local/sbin/opensips[5167]: ERROR:core:parse_from_header: bad from header
>     Oct 12 19:34:16 sip01 /usr/local/sbin/opensips[5167]: ERROR:b2b_entities:b2b_prescript_f: cannot parse From header
>     Oct 12 19:34:16 sip01 /usr/local/sbin/opensips[5167]: ERROR:core:parse_to: unexpected char [<] in status 5:<<<>>  .
>     Oct 12 19:34:16 sip01 /usr/local/sbin/opensips[5167]: ERROR:core:parse_from_header: bad from header
>     Oct 12 19:34:16 sip01 /usr/local/sbin/opensips[5167]: ERROR:core:pv_get_from_attr: cannot parse From header
>     Oct 12 19:34:16 sip01 /usr/local/sbin/opensips[5167]: ROUTE STARTING INVITE<null>  sip:sales at 1.2.3.4
>     Oct 12 19:34:16 sip01 /usr/local/sbin/opensips[5167]: ERROR:core:parse_to: unexpected char [<] in status 5:<<<>>  .
>     Oct 12 19:34:16 sip01 /usr/local/sbin/opensips[5167]: ERROR:core:parse_from_header: bad from header
>     Oct 12 19:34:16 sip01 /usr/local/sbin/opensips[5167]: ERROR:rr:record_route: From parsing failed
>     Oct 12 19:34:16 sip01 /usr/local/sbin/opensips[5167]: ERROR:core:parse_to: unexpected char [<] in status 5:<<<>>  .
>     Oct 12 19:34:16 sip01 /usr/local/sbin/opensips[5167]: ERROR:core:parse_from_header: bad from header
>     Oct 12 19:34:16 sip01 /usr/local/sbin/opensips[5167]: ERROR:tm:new_t: no valid From in INVITE
>     Oct 12 19:34:16 sip01 /usr/local/sbin/opensips[5167]: ERROR:tm:t_newtran: new_t failed
>     Oct 12 19:34:16 sip01 /usr/local/sbin/opensips[5167]: ERROR:core:parse_to: unexpected char [<] in status 5:<<<>>  .
>     Oct 12 19:34:16 sip01 /usr/local/sbin/opensips[5172]: ERROR:core:parse_to: unexpected char [<] in status 5:<<<>>  .
>     Oct 12 19:34:16 sip01 /usr/local/sbin/opensips[5167]: ERROR:core:parse_from_header: bad from header
>     Oct 12 19:34:16 sip01 /usr/local/sbin/opensips[5172]: ERROR:core:parse_from_header: bad from header
>     Oct 12 19:34:16 sip01 /usr/local/sbin/opensips[5167]: ERROR:core:pv_get_from_attr: cannot parse From header
>     Oct 12 19:34:16 sip01 /usr/local/sbin/opensips[5172]: ERROR:b2b_entities:b2b_tm_cback: cannot parse From header
>     Oct 12 19:34:16 sip01 /usr/local/sbin/opensips[5167]: ROUTE 8 ENDING INVITE<null>  sip:sales at 10.20.1.225:5062
>     Oct 12 19:34:17 sip01 /usr/local/sbin/opensips[5168]: ERROR:b2b_entities:b2b_prescript_f: No dialog found, callid= [B2B.50.3250981], method=REFER
>
>     Brett Woollum
>     Brett at Woollum.com
>
>
>     ----- Original Message -----
>     From: "Anca Vamanu" <anca at opensips.org>
>     To: users at lists.opensips.org
>     Sent: Thursday, October 14, 2010 12:45:19 AM GMT -08:00 US/Canada
>     Pacific
>     Subject: Re: [OpenSIPS-Users] B2BUA Transfers Intermittently
>     Working/Not Working (Bug?)
>
>     Hi Brett,
>
>     You need to run a network trace and catch the message for which
>     you get this error:
>
>     ERROR:core:parse_to: unexpected char [<] in status 5: <<<>>
>
>     You can run opensips in debug mode ( set 'debug=6' ) to see info
>     from the message and be able to find it in the network trace.
>
>     >From the logs it seems that a message ( possibly REFER ) has a
>     bad From header and OpenSIPS is not able to process right.
>
>     Regards,
>
>     -- 
>     Anca Vamanu
>     www.voice-system.ro
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.opensips.org/pipermail/users/attachments/20101026/d2dd2017/attachment.htm 


More information about the Users mailing list