Comment #17 on issue 2066 by jean.deruelle: Miss Record-Route in Response
http://code.google.com/p/mobicents/issues/detail?id=2066
@Karthikeyan Can you explain what is problematic in your scenarios and why
you need to copy the Record Route headers as the messages seems correctly
routed to me and the entire call (reINVITE include) seems to be successful ?
Please read RFC 3261 Section 12.2 Requests within a Dialog :
" Once a dialog has been established between two UAs, either of them
MAY initiate new transactions as needed within the dialog. The UA
sending the request will take the UAC role for the transaction. The
UA receiving the request will take the UAS role. Note that these may
be different roles than the UAs held during the transaction that
established the dialog.
Requests within a dialog MAY contain Record-Route and Contact header
fields. However, these requests do not cause the dialog's route set
to be modified, although they may modify the remote target URI.
Specifically, requests that are not target refresh requests do not
modify the dialog's remote target URI, and requests that are target
refresh requests do. For dialogs that have been established with an
INVITE, the only target refresh request defined is re-INVITE (see
Section 14). Other extensions may define different target refresh
requests for dialogs established in other ways.
Note that an ACK is NOT a target refresh request.
Target refresh requests only update the dialog's remote target URI,
and not the route set formed from the Record-Route. Updating the
latter would introduce severe backwards compatibility problems with
RFC 2543-compliant systems."
There is no point in copying the Record-Route since it will not be used as
the route set cannot be modified once the dialog is established and will
apparently introduce severe backwards compatibility problems with RFC
2543-compliant systems.