2010/4/29 pars3c<pars3c(a)gmail.com>om>:
Hi, i have a problem about the handling of the
“cancel” message.
The B side answer with OK, after a while , a send
a CANCEL. I don’t know why
Kamailio don’t forward this message to the B side.
Because Kamailio already received a 200 for the INVITE transaction so
it's terminated, there is nothing to cancel hen the CANCEL arrives.
B retry to send the OK message, then A send the
ACK.
At the end , B send BYE , but A don’t have the transactin.
This is because Kamailio replied 200 to the CANCEL so A still believes
it has cancelled and has terminated it locally.
Perhaps Kamailio should reply 404 to the CANCEL as a 200 was already
received for the INVITE (could it be a bug?).
However your UAC is doing strange things:
- Why does A send a CANCEL after receiving a 200 OK for the INVITE?
- Also if A sends an ACK for the 200 (INVITE) it *does* know that the
transaction is still alive so shouldn't reply 481.
The behavior of UAC A is not very common and seems buggy IMHO.