Peter Dunkley writes:
JsSIP seems to do this now. Although it only creates
a single flow.
yes i know and that is violation of outbound rfc where at least two is
MUST. so as long as jssip only creates one flow, it is not implementing
outbound and i cannot use it in my outbound tests.
Flow-tokens get added to Path: headers for REGISTERs,
but they do not get
added to the Record-Route: headers for INVITEs (because the INVITE
contains a GRUU Contact: without an ;ob parameter). This is correct under
RFC5626.
that is fine then.
To get in-dialog routing to work correctly for this stack (when GRUU and
outbound are enablned on Kamailio) you need to always do a location
lookup() when the R-URI is a GRUU URI.
In route[WITHINDLG] I now do something like:
if (has_totag()) {
if (is_gruu()) {
route[LOCATION];
} else if (loose_route()) {
} else {
}
exit;
}
this is pretty close to what i have except i call loose_route first to
see if i'm the last hop and it makes sense to do location lookup
i still fail to see when would route set change during the call and
especially magically without a re-invite.
-- juha