Hi,
So the error log is about the "remote contact", but the return code is
-1 ?? (which according to doc [1] means invalid cseq). Checking the
code, you should have get a -2 ret code in correlation to that log (see
[2]).
Now, based on the error log, I see that the dialog module retained the
"sip:[email protected]:5060" URI (from a received Contact hdr), but it
gets from the other party (as RURI) a different value, the
"sip:[email protected]:5060;user=phone" . And according to RFC3261 [3],
that extra "user" URI param makes the URI not to match anymore - see
chapter " 9.1.4 URI Comparison"
o URI uri-parameter components are compared as follows:
- Any uri-parameter appearing in both URIs must match.
-*A user, ttl, or method uri-parameter appearing in only one URI never
matches, even if it contains the default value.*
[1]
https://opensips.org/html/docs/modules/3.1.x/dialog.html#func_validate_dialog
[2]
https://github.com/OpenSIPS/opensips/blob/master/modules/dialog/dlg_handlers.c#L2707
[3] https://www.ietf.org/rfc/rfc3261.txt
Regards,
Bogdan-Andrei Iancu
OpenSIPS Founder and Developer
https://www.opensips-solutions.com
OpenSIPS eBootcamp 2021
https://opensips.org/training/OpenSIPS_eBootcamp_2021/
On 10/19/21 12:06 PM, Kingsley Tart wrote:
Hi,
Thanks. I hadn't noticed before but yes, I'm seeing this:
ERROR:dialog:dlg_validate_dialog: failed to validate remote contact:
dlg=[sip:[email protected]:5060] , req=[sip:[email protected]:5060;user=phone]
I can't see anywhere in the SIP trace where that contact URI appears
*without* user=phone in it so I don't understand why that's happening.
Cheers,
Kingsley.
On Tue, 2021-10-19 at 10:08 +0300, Bogdan-Andrei Iancu wrote:
Hi Kingsley,
According to the docs [1], the "-1" ret code means "No SIP message". Do you
see any parsing errors in the logs, while doing the validation?
[1]
https://opensips.org/html/docs/modules/3.1.x/sipmsgops.html#func_sipmsg_validate
Regards,
On 10/18/21 5:25 PM, Kingsley Tart wrote:
Hi,
Using OpenSIPS 3.1.5 I'm getting validate_dialog() returning $rc=-1 on
re-invites.
I have this in opensips.cfg:
modparam("dialog", "dlg_match_mode", 1)
The top of route() looks like this:
route {
if (has_totag()) {
if (is_method("ACK") && t_check_trans()) {
t_relay();
exit;
}
if (!loose_route()) {
send_reply(404, "Not here");
exit;
}
if (!validate_dialog()) {
xlog("L_WARN", "Ignoring $rm from $si due to invalid dialog;
rc=$rc\n");
}
I've attached an (anonymised) SIP trace. OpenSIPS isn't responding to
the reinvites as I'm seeing "Ignoring INVITE from (address) due to
invalid dialog: rc=-1" (as per the xlog above).
Is there something wrong with these re-invite messages, or something
I'm doing wrong in OpenSIPS?
Cheers,
Kingsley.
_______________________________________________
Users mailing list
[email protected]
http://lists.opensips.org/cgi-bin/mailman/listinfo/users
_______________________________________________
Users mailing list
[email protected]
http://lists.opensips.org/cgi-bin/mailman/listinfo/users