[Serusers] RE: [Sems] How to absorb ACKs in UAS mode?
Franz Edler
franz.edler at ycn.com
Wed May 11 06:20:27 CEST 2005
From: Stefan Sayer Sent: Tuesday, May 10, 2005 4:02 PM
> in my opinion t_newtran() will release the transmission on processing of
> an ACK so the 200 is not retransmitted; have a look at t_newtran (in
> t_lookup.c about line 1094).
Unfortunately I cannot verify this behaviour. See my code snippet of ser.cfg
below.
Without explicitly using t_relay() for ACK the 200 OKs are retransmitted by
SER. Calling t_newtran() is obviously not enough to stop retransmissions.
Any further opinions around?
Regards
Franz
--- code snippet of ser.cfg follows --------------------------------------
if (method=="INVITE" || method=="BYE" || method=="CANCEL" || method=="ACK")
{
# switch to stateful mode:
if (!t_newtran())
{
sl_send_reply("500","could not create transaction\n");
break;
};
if (method=="INVITE" && uri=~"sip:910@")
{
t_reply("100","Trying - just wait a minute !");
if(!t_write_req("/tmp/am_fifo","announcement"))
{
t_reply("500","error contacting sems");
};
break;
};
if (method=="BYE" || method=="CANCEL")
{
if(!t_write_req("/tmp/am_fifo","bye"))
{
t_reply("500","error contacting sems");
};
break;
};
if (method=="ACK")
{
t_relay();
};
};
More information about the sr-users
mailing list