Hello,
first, such race can happen always and it is ok from sip rfc point of
view. The carrier UA should have received the BYE from the other side
and close the dialog, then ignore the rest. So it is a broken UA
implementation imo.
Let's say you just drop the 481, then the BYE will time out (408)? Is
the carrier UA still complaining? You can make a failure route for BYE
and if it is 481, then use t_reply("408", "Timeout") if that makes the
UA happier.
Cheers,
Daniel
On 7/28/12 8:42 PM, Brandon Armstead wrote:
Hello,
I am running into an issue where there is a race condition
happening. I am looking for opinions / ideas on how to handle the
following below scenario.
Scenario.
UAC places an outbound call -> upstream carrier.
The call is disconnected on both ends at the exact same time,
UAC -> sends BYE upstream
Upstream Carrier -> sends BYE downstream
Upstream 200 OK's the BYE
UAC sends 481 back to Upstream Carrier for their generated BYE.
The upstream carrier is complaining about receiving the relayed 481
responses -- so my first thought was simply to drop() these from
relaying upstream.
I am curious how other people are handling this?
Would you suggest simply dropping the relay from being sent back
upstream on the 481?
Would you simply always 200 OK a downstream BYE from trusted carriers
regardless of UAC response, and create separate transaction to send
BYE downstream?
Thank you as always. Look forward to your thoughts / suggestions / ideas.
Sincerely,
Brandon Armstead
_______________________________________________
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
sr-users(a)lists.sip-router.org
http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
--
Daniel-Constantin Mierla -
http://www.asipto.com
http://twitter.com/#!/miconda -
http://www.linkedin.com/in/miconda
Kamailio Advanced Training, Seattle, USA, Sep 23-26, 2012 -
http://asipto.com/u/katu
Kamailio Practical Workshop, Netherlands, Sep 10-12, 2012 -
http://asipto.com/u/kpw