Hello,
seems that the Linksys phone is quite slow in creating the dialog. The
CANCEL arrives before it has processed the INVITE, and it does not match
any ongoing dialog. It is not much to be done. OpenSER cannot do much in
this respect. The proxy is forced to send CANCEL as soon as one branch
is answered.
By the way, when you answer very quickly, did the other phone ring at
least once before?
Cheers,
Daniel
On 08/10/06 01:51, Mark Kent wrote:
I've got two Linksys phones (one spa3000, one
spa942)
and registered markkent@... from both on the openser1.0.1 box.
From a third device I call markkent@... and both
ring. If I take my
time answering one phone then everything works as expected.
The CANCEL gets sent to the second phone and that phone says OK and
maybe I get one spurious ring but it stops.
I noticed that if I answer one phone really quickly then the other
phone will keep on ringing. So, I looked at the traffic and this is
what happens:
The players are ORIGINATOR, OPENSER, ANSWEREDPHONE
and IGNOREDPHONE
ORIGINATOR sends the INVITE to OPENSER where it
gets branched out to both ANSWEREDPHONE and IGNOREDPHONE
Both phones send back "100 Trying"
ANSWEREDPHONE sends "180 Ringing" and OPENSER relays that
to ORIGINATOR
ANSWEREDPHONE sends "200 OK" when I answer, and OPENSER relays that
to ORIGINATOR
OPENSER sends "CANCEL sip:markkent@IGNOREDPHONE-IP:5062"
to IGNOREDPHONE
about 0.6 seconds later OPENSER repeats the CANCEL
IGNOREDPHONE sends back to OPENSER
481 Call Leg/Transaction Does Not Exist
and does it twice, perhaps once for each CANCEL
Then IGNOREDPHONE sends back "180 Ringing"
IGNOREDPHONE rings, a lot, but does not send back "180 Ringing" messages
There are a lot of "200 OK" messages exchanged between the
IGNOREDPHONE and the OPENSER box.
The IGNOREDPHONE took 5 seconds to send back the first "180 Ringing",
these phones are side by side, although IGNOREDPHONE (the 942) is
NAT'ed and ANSWEREDPHONE is not.
The ngrep output is here:
http://a.mainstreet.net/double-ring.txt
What I would like to know is whether this is something I can and/or
should handle in the openser configuration? If so, how?
Thanks,
-mark
_______________________________________________
Users mailing list
Users(a)openser.org
http://openser.org/cgi-bin/mailman/listinfo/users