Dan Pascu writes: > Not necessarily. You may have parallel forking and get multiple 180. Until > you get a 200 OK, no dialog is really established.
from section 12.1 of rfc3261: Within this specification, only 2xx and 101-199 responses with a To tag, where the request was INVITE, will establish a dialog. A dialog established by a non-final response to a request is in the ÈearlyÉ state and it is called an early dialog. thus, a single 180, for example, does establish a dialog, which is in early state. looks like this creates confusion to UA implementers, who consider cancel after 180 as an in-dialog message and accordingly, add route header to it based on received r-r. i don't have experience on what would happen when such an UA receives 180 from more than one destination, i.e., would it send more cancels. > I've even seen devices > that send a CANCEL after a 200 OK, but before the ACK, as they consider > that the dialog is not established until confirmed by the ACK. Which > makes sense because is cleaner to cancel a call setup with a CANCEL > before it is confirmed, than to send an ACK and then a BYE (for example > if I do not want to accept the session because the 200 OK contains > something I do not agree on or is badly formatted, then I don't want to > confirm the session with an ACK and then close it with a BYE). many things would make sense, but they are not conforming to rfc3261. -- juha _______________________________________________ Devel mailing list [email protected] http://lists.openser.org/cgi-bin/mailman/listinfo/devel
