Hi Mickael,
What version of OpenSIPS are you using? You can find a useful function
on trunk: test_and_set_dlg_flag [1]
This function is executed atomically, so you can set a flag for the
first BYE. When the second BYE comes, if the flag is set you can ignore it.
Regards,
[1] http://www.opensips.org/html/docs/modules/devel/dialog.html#id294480
Razvan Crainea
OpenSIPS Developer
On 29.07.2011 14:54, [email protected] wrote:
I'm sorry if you receive this message twice, I had a problem sending mail to
users mailing list
So ....
I list,
I have a little problem with my proxy (OpenSIPS/1.6.4-2-tls/i386/freebsd) and
my voip provider (CISCO-SBC/2.x and CS2000_NGSS/9.0).
In fact, my opensips send 2 BYE (Screenshot below)
2.2.2.2, 1.1.1.1, 3.3.3.3 are public IP
- My UAC (2.2.2.2) send BYE to my proxy Opensips (1.1.1.1), Opensips resend
this BYE to my provider (3.3.3.3).
- But after 0.01s my proxy send second BYE to my provider.
- Therefore my provider answer with 500 error.
- I think my proxy hangup dial and transfer this error to my UAC.
- But my provider send a 200OK after this error.
Why my proxy send 2 BYE ? Timer is to short ? how to change this timer? Is T1
default value 500ms ?
-- BYE configuration (simple configuration):
_if (is_method("BYE"))_
_ {_
_ t_on_reply("4");_
_
xlog("L_INFO","################################################################################
n");_
_ xlog("L_INFO","END OF CALL : call-id $ci n");_
_ if($avp(s:debugcall)=~"yes"){ xlog("L_INFO","In HAS_TOTAG - Method BYE - fu : $fu
, ru : $ru , si : $si n"); }_
_
xlog("L_INFO","################################################################################
n");_____
_ setflag(1); # do accounting ..._
_ setflag(2); #missed call ..._
_ setflag(3); # ... even if the transaction fails_
_ setflag(4); #flag dialog___
_ if(is_present_hf("Proxy-Authorization"))_
_ {_
_ remove_hf("Proxy-Authorization");_
_ }_
_ t_relay();_
_ }_
-- On reply configuration (for a test I wanted to delete the 500 message, but
impossible to remove) :
_onreply_route[4]_
_{_
_ xlog("L_INFO","$ci In ONREPLY ROUTE 4 - fu : $fu , ru : $ru , si : $si , status :
$rs n");_
_ if( t_check_status("500") ){_
_ xlog("L_INFO","DROP 500n");_
_ drop();___
_ }_
_}_
After several days of searching, Im stranded. So Id like your opinion about it.
PS: complete sip capture.
thank in advance
Mickael
_______________________________________________
Users mailing list
[email protected]
http://lists.opensips.org/cgi-bin/mailman/listinfo/users
_______________________________________________
Users mailing list
[email protected]
http://lists.opensips.org/cgi-bin/mailman/listinfo/users