Creating and using a SipMessage

From reSIProcate
Jump to navigation Jump to search

Components[edit]

Headers

Uris

Bodies

Parameters

Extension Headers

Extension Parameters

stuff[edit]

Computing 2543 transaction ids.[edit]

Transaction ids are used to map a message to the state of its transaction.

3261 uses assigned transaction ids carried in the branch parameter of the Via. 2543 uses a transaction id that is computed from the message.

The 2543 transaction is a hash of:

  • top Via
    • protocolName
    • protocolVersion
    • transport
    • sentHost
    • sentPort
    • commutativeParameterHash (not sensitive to the order of the paramters)
  • From tag
  • To tag (if non-invite request)
  • Call-Id
  • method (INVITE if ACK or CANCEL)

Once computed, the 2543 transaction id is cached on the message.

Variants[edit]

SipFrag

Embedded Headers