Subject: [stir] SIP Header semantics

From: "Anton Tveretin" <[email-masked]>
Date: Thu, 20 Jun 2013 00:28:09 +0600

Dear All,
I want to express my opinion about SIP header and some associated semantics.
Some definitions:
Identity: a person, a juristic person, an organization without legal 
personhood, a public body, a department of an organization or of a 
sole-owned business, a person acting on behalf of anything above (as an 
agent), or a robot working on behalf of anything/anyone above.

Or, something identified by AOR (although AORs may be aliased).

RA: Roaming address, as opposed to AOR. It may be IP-based, GRUU, LRUU, etc.

Call is a chain of dialogs, separated by  B2BUAs and gateways. Caller and 
callee are parties of the call, but UAC and UAS are parties of the dialog.

Call forwarding is a change of callee AOR; it is different from call 
routing. Call forwarding does not imply any changes in dialogs (it may be 
handled by a proxy), but it changes the callee.

Call routing: mapping AOR->RA. It is different from un-aliasing AORs.

SIP headers and parameters follow...

From-name, from-URI: the caller. These do not change when the call is 
forwarded. Connection is established between the caller and the callee.

From-name is supplied either by the caller or by the network.

From-URI acts both as an anonymity flag and as caller's AOR.

Contact (in request) is UAC's RA. It reflects the last B2BUA (or caller, if 
there is no B2BUA).

Contact (in 180, 182, 200) is UAS's RA.

Contact (in 3xx) is forwarded-to AOR.

Contact (in 4xx-6xx) is something yet different.

Contact (in 181) thus has no sense and should not be used.

To-name, to-URI: the callee. Actually (esp. in responses), the last 
forwarded-to or answering party.

To-URI in responses is also an anonymity flag for answering or forwarding 
party. Otherwise it is an AOR.

History-Info contains AOR of the forwarding party. The forwarding party 
really has no RA.

Subject: for conference invitations, this is party-specific, rather than 
conference-wide (cf. SDP "s=" line)

Any comments?

Regards, Anton