Dears,
I use Opensips 3.2
Here is my script:
store_dlg_value("is_sended_inv","0");
notify_on_event("E_UL_CONTACT_INSERT", $avp(filter), "LATE_FORKING", 45);
notify_on_event("E_UL_CONTACT_UPDATE", $avp(filter), "LATE_FORKING", 45);
...
## Handle late forking route
route[LATE_FORKING] {
# handle incoming calls for mobile devices woken up by push notifications
$var(is_sended_inv) = $dlg_val(is_sended_inv);
xlog("L_INFO", "[LATE_FORKING] [var(is_sended_inv)=$var(is_sended_inv)] New contact [$avp(uri)] registered for user [$avp(aor)], inserting new branch to ongoing call\n");
# take the contact described by the E_UL_CONTACT_INSERT
# event and inject it as a new branch into the original
# transaction
if(!$var(is_sended_inv)) {
t_inject_branches("event", "last");
xlog("L_INFO", "[LATE_FORKING] t_inject_branches event\n");
store_dlg_value("is_sended_inv","1");
}
}
When Register sent many times, t_inject_branches got called back many times, resulted in a lot of Invite sending (same CSeq number).
How can call t_inject_branches only one time when use event routing in same Dialog?
Thank you for your help.
I tried store_dlg_value