> From: Adam Frankel (afrankel) [afran...@cisco.com]
> 
> I am seeing a scenario for an established call in which an outbound
> reINVITE is being done, the far end is sending a TRYING and then a REFER
> immediately.  We are rejecting this REFER with a 400 Bad Request because
> the INVITE transaction has not been completed.
> 
> I am not clear whether REFER is allowed mid reINVITE or if the far end
> should wait for the 200OK/ACK to complete before sending the REFER.
> I took a look a RFC3515 but it does not appear to state either way
> whether this is allowed.   Can anyone comment?

Of course, each request is part of its own transaction and requires
its own response.

Conceptually, the REFER is compatible with the re-INVITE, because the
re-INVITE is just modifying the existing dialog, whereas the REFER (if
it finishes successfully) will replace the dialog entirely.  Until the
new INVITE succeeds, the current dialog will be unchanged; when the
new INVITE succeeds, the current dialog will be terminated.  As far as
I know, this is the approach the RFCs take.

In practice, I can see how this would be hard to implement, as it
doesn't conform to the usual model of a finite state machine, which
requires that only one update to the dialog's state can be in-progress
at a time.

Dale

_______________________________________________
Sip-implementors mailing list
Sip-implementors@lists.cs.columbia.edu
https://lists.cs.columbia.edu/cucslists/listinfo/sip-implementors

Reply via email to