Thanks Razvan,
my version is 1.6.4-2-tls (svn revision: 2:8151)
but this function will work in ? knowing that my OpenSIPS generate this second BYE.

Ex:
- UAC --> BYE --> Opensips --> BYE --> provider
after 0,01s
- Opensips --> BYE --> provider
after
- provider --> 500 error -> opensips

Regards,

On Fri, 29 Jul 2011 15:11:29 +0300, Razvan Crainea wrote:
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
[3]

Razvan Crainea
OpenSIPS Developer

 On 29.07.2011 14:54, [email protected] [4] 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] [1]
http://lists.opensips.org/cgi-bin/mailman/listinfo/users [2]


Links:
------
[1] mailto:[email protected]
[2] http://lists.opensips.org/cgi-bin/mailman/listinfo/users
[3] http://www.opensips.org/html/docs/modules/devel/dialog.html#id294480
[4] mailto:[email protected]


_______________________________________________
Users mailing list
[email protected]
http://lists.opensips.org/cgi-bin/mailman/listinfo/users

Reply via email to