diff --git a/kamailio/presence-reset.cfg b/kamailio/presence-reset.cfg index 59933d8..d8ec858 100644 --- a/kamailio/presence-reset.cfg +++ b/kamailio/presence-reset.cfg @@ -106,7 +106,7 @@ event_route[kazoo:consumer-event-presence-reset] } xlog("L_INFO", "$(kzE{kz.json,Msg-ID})|reset|received presence reset for $(kzE{kz.json,Username})@$(kzE{kz.json,Realm})\n"); - $var(presentity) = "sip:" + $(kzE{kz.json,Username}) + "@" + $(kzE{kz.json,Realm}); + $var(presentity) = $_s(sip:$(kzE{kz.json,Username})@$(kzE{kz.json,Realm})); route(COUNT_SUBSCRIBERS); sql_query("exec", 'delete from presentity where domain="$(kzE{kz.json,Realm})" and username = "$(kzE{kz.json,Username})"'); diff --git a/kamailio/presence-role.cfg b/kamailio/presence-role.cfg index c170111..1b70f0c 100644 --- a/kamailio/presence-role.cfg +++ b/kamailio/presence-role.cfg @@ -195,8 +195,8 @@ route[COUNT_PRESENTITIES] route[COUNT_SUBSCRIBERS] { - $var(Query) = $_s(select event, (select count(*) from active_watchers b where presentity_uri = "$(kzE{kz.json,From})" and b.event = a.event) count from event_list a); - $var(p) = "uri="+$(kzE{kz.json,From}); + $var(Query) = $_s(select event, (select count(*) from active_watchers b where presentity_uri = "$var(presentity)" and b.event = a.event) count from event_list a); + $var(p) = $_s(uri=$var(presentity)); if (sql_xquery("cb", "$var(Query)", "subs") == 1) { while($xavp(subs) != $null) { @@ -220,6 +220,7 @@ event_route[kazoo:consumer-event-presence-dialog-update] if($(kzE{kz.json,State}) == "terminated") { route(COUNT_PRESENTITIES); } else { + $var(presentity) = $(kzE{kz.json,From}); route(COUNT_SUBSCRIBERS); } @@ -247,6 +248,7 @@ event_route[kazoo:consumer-event-presence-dialog-update] event_route[kazoo:consumer-event-presence-mwi-update] { xlog("L_INFO", "$(kzE{kz.json,Call-ID})|log|received message-summary update for $(kzE{kz.json,From})\n"); + $var(presentity) = $(kzE{kz.json,From}); route(COUNT_SUBSCRIBERS); if($xavp(watchers=>message-summary) > 0) { xlog("L_INFO", "$(kzE{kz.json,Call-ID})|log|publishing $(kzE{kz.json,From}) message-summary update for $xavp(watchers=>message-summary) watchers\n"); @@ -260,6 +262,7 @@ event_route[kazoo:consumer-event-presence-mwi-update] event_route[kazoo:consumer-event-presence-update] { xlog("L_INFO", "$(kzE{kz.json,Call-ID})|log|received presence update for $(kzE{kz.json,From})\n"); + $var(presentity) = $(kzE{kz.json,From}); route(COUNT_SUBSCRIBERS); if($xavp(watchers=>presence) > 0) { xlog("L_INFO", "$(kzE{kz.json,Call-ID})|log|publishing $(kzE{kz.json,From}) presence update for $xavp(watchers=>presence) watchers\n");