Hi Timo
I tried what you told me below, however i'm still getting the same result. Just to give you more details on my scenario i have 2 kamailio servers running heartbeat for high availability on a virtual ip as well as mysql MASTER-MASTER replication setup. All traffic is sent on this virtual ip. You think that this might be the reason?
Regards Phillip
On Tue, Sep 20, 2011 at 8:07 PM, Timo Reimann timo.reimann@1und1.de wrote:
Hey,
On 20.09.2011 15:23, Phillman25 Kyriacou wrote:
Hey Timo
Thanks for your email. I apologise i never copied the config properly. I missed a } to close the if statement. You can see that the route(WITHINDLG); is called for all requests from this config.
# MANAGE ALL DIALOGS #=================================================== if (is_method("INVITE"))
{ if(is_method("INVITE") && !has_totag()) { $dlg_ctx(timeout_route) = 12; $dlg_ctx(timeout_bye) = 1; }
dlg_manage();
}
if(is_method("BYE|CANCEL")) { dlg_manage(); }
[...]
# handle requests within SIP dialogs route(WITHINDLG);
[...]
# authentication route(AUTH);
Ok, this looks better now. Still, I cannot explain why dialog tracking doesn't work for you. I tried to reproduce your setup, including the dialog module parameters you are using. However, things keep working for me the way they should.
A few people have had issues when starting to track dialogs before the INVITE was authenticated. In that case, the caller could receive a 407 which isn't properly handled by the dialog module in all cases. (There's a bug report filed on the tracker already.) Could you try moving that "if(is_method("INVITE") && !has_totag()) {...}" part including the call to dlg_manage() past the location where "route(AUTH)" is called and see if it helps?
Cheers,
--Timo