I have confused myself and am hoping someone can unconfuse me.
Take a situation like this
/--------- B
A ------- P
\--------- C
A is a UA initiating a call to a URI through P, which is a transaction
stateful proxy. P forks the call (let's say sequentially to B then C). P
also adds "Record-Route".
Let us presume B is unavailable/busy/whatever so P then tries C, which
OK's, and a dialogue is initiated between A and C, with the signalling
still going via P due to the record route.
How is this meant to work where P is transaction stateful but not dialog
stateful? Specifically, what header fields supplied by A is P meant to
process to ensure that future in-dialog transactions (such as BYE) are
routed to C in the first instance and not B? Or, moreover, assuming the
identification of C as a target was from ephemeral data (perhaps B has
changed his call divert settings whilst the call is still in progress) how
is P then meant to route dialog messages to C at all?
Should it be recording the information as a parameter in the record-route
header (as per 4 of 16.6 of RFC3261 to store state effectively in the
dialog message rather than on the proxy)? Should it rely on B or C
inserting a Contact: header and use that if there are no further Route:
headers? Have I missed the point entirely (I expect so)? What's the
easiest / recommended way to do this?
Alex
_______________________________________________
Sip-implementors mailing list
[EMAIL PROTECTED]
http://lists.cs.columbia.edu/mailman/listinfo/sip-implementors