Hello. I need to increment CSeq value for INVITE with Auth params when use UAC_AUTH for outgoing calls to provider.
Kamailio 4.2 may increment this using dialog module
http://by-miconda.blogspot.de/2014/10/kamailio-42-tips-7-increment-cseq-for.html
Now I experements with this and var $dlg_var(cseq_diff) and at transaction way int have NULL value. I can not understand why
My config is:
# ----- dialog params
modparam("dialog", "db_url",DBURL)
modparam("dialog", "db_mode", 1)
modparam("dialog","table_name","dialog")
modparam("dialog", "dlg_flag", 4)
modparam("dialog", "initial_cbs_inscript", 1)
modparam("dialog", "profiles_with_value", "caller")
modparam("dialog", "default_timeout", 60)
modparam("dialog", "track_cseq_updates", 1)
route config is
at request route
if(is_method("INVITE") && !has_totag()){
$dlg_ctx(timeout_route) = "DIALOG_END";
$dlg_ctx(timeout_bye) = 1;
dlg_manage();
xlog("L_INFO","Dialog manage is {$ct}\n");
}
}
t_relay();
next I handle failure reply because 407 reply is recieved
failure_route[MANAGE_FAILURE] {
route(NATMANAGE);
if (t_check_status("401|407")){
xlog("L_INFO", "Reply from provider on failure: $tU");
xlog("L_ERR","401/407 - Unauthorized. ($ci .) ($rm) from ($fu) (IP:$si:$sp) to ($Ri:$Rp). Must be authorized with digest Auth.");
avp_print();
xlog("L_INFO", "CSeq diff: $dlg_var(cseq_diff)");
uac_auth();
xlog("L_INFO", "UAC_AUTH(): $tU");
append_branch();
t_relay();
}
if (t_is_canceled()) {
exit;
}
}
As you may see i logging $dlg_var(cseq_diff) value and now it NULL. So I can not understand why? What wrong I do?
Thanks for advice.