Indeed! I hadn't noticed the difference in the dlg vs req sections of the debug message.
I shall try exactly as you suggest. Thanks. - Jeff From: Vlad Paiu <[email protected]<mailto:[email protected]>> Reply-To: OpenSIPS users mailling list <[email protected]<mailto:[email protected]>> Date: Mon, 11 Apr 2011 06:13:32 -0400 To: "[email protected]<mailto:[email protected]>" <[email protected]<mailto:[email protected]>> Subject: Re: [OpenSIPS-Users] dlg_validate_dialog errors on BYE and ACK in loose_route Hello Jeff, It's not that the dialog is already torn down by the time the BYE gets to that particular portion of script. It's complaining about the fact that at the dialog creation, the route had the "lr=on" parameter, and at BYE time, the parameter has been stripped and set just to "lr". This should not happen in a regular scenario, as other SIP entities should not explicitly modify the content of Route headers recorded at Invite time. You could try to check the enable_full_lr ( [1] ) parameter, and onlyattach "lr" instead of "lr=on", and see if this fixes the behavior. [1] http://www.opensips.org/html/docs/modules/devel/rr.html#id250149 Regards, -- Vlad Paiu OpenSIPS Developer On 04/09/2011 10:32 PM, Jeff Pyle wrote: Hello, I'm trying a new chunklet of config in loose_route(). I believe this came from a documentation page somewhere, so I don't pretend to take credit for the concept. # Clean up dialog data if necessary if ($DLG_status!=NULL && !validate_dialog()) { xlog("L_INFO", "Unable to validate dialog, fixing - $hdr(CSeq) on $ci\n"); fix_route_dialog(); } I send the first batch of pseudo-production traffic through this config today and I ended up with a metric ton of: ERROR:dialog:dlg_validate_dialog: Check failed for routenumber 0. req=[sip:<opensips-IP?;lr;ftag=23ddd50-0-13c4-1f179b-78884527-1f179b;did=45b.b972314],dlg=[sip:<opensips-IP>;lr=on;ftag=23ddd50-0-13c4-1f179b-78884527-1f179b;did=45b.b972314] And, the xlogs from the above line: Unable to validate dialog, fixing - 3 BYE on <callid> It showed up on a number of BYEs and ACKs. My dialog module config is as follows: # ----- dialog params ----- modparam("dialog", "dlg_flag", 4) modparam("dialog", "bye_on_timeout_flag", 4) modparam("dialog", "default_timeout", 21600) modparam("dialog|sst", "timeout_avp", "$avp(s:dialog_timeout)") modparam("dialog", "dlg_extra_hdrs", "Hint: dialog expired\r\n") modparam("dialog", "dlg_match_mode", 1) # 0 = DID_ONLY; 1 = DID first, SIP second; 2 = SIP only modparam("dialog", "db_url", "mysql://osuer:ospass@dbcluster/osdb") modparam("dialog", "table_name", "dialog_1") modparam("dialog", "db_mode", 1) # 1 = Realtime to DB; 2 = delayed; 3 = on shutdown modparam("dialog", "profiles_with_value", "711calls; 729calls; calls") create_dialog() runs on all initial INVITEs. Is this type of behavior anything close to normal? What might cause it? My immediate fix is to simply comment out this portion of the config, but I'm afraid I might be masking a larger issue. Any suggestions would be great. Just had a thought as I was about to send this email. Perhaps this is because by the time the BYE gets to this portion of the script, the dialog is already torn down? Could it be that simple, just add "if !(is_method("BYE") || is_method("ACK"))" to the top line of this config portion? - Jeff _______________________________________________ Users mailing list [email protected]<mailto:[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
