Module: kamailio
Branch: master
Commit: 9034787ec863277a61372cf9cfe6f156407cd47c
URL:
https://github.com/kamailio/kamailio/commit/9034787ec863277a61372cf9cfe6f15…
Author: lazedo <luis.azedo(a)factorlusitano.com>
Committer: GitHub <noreply(a)github.com>
Date: 2017-01-22T14:32:50Z
presence: allow use of $subs in notify process
---
Modified: src/modules/presence/notify.c
---
Diff:
https://github.com/kamailio/kamailio/commit/9034787ec863277a61372cf9cfe6f15…
Patch:
https://github.com/kamailio/kamailio/commit/9034787ec863277a61372cf9cfe6f15…
---
diff --git a/src/modules/presence/notify.c b/src/modules/presence/notify.c
index c9b40fc..18e5ce0 100644
--- a/src/modules/presence/notify.c
+++ b/src/modules/presence/notify.c
@@ -55,6 +55,7 @@ int goto_on_notify_reply=-1;
extern int pres_local_log_level;
extern int pres_local_log_facility;
+extern subs_t* _pres_subs_last_sub;
c_back_param* shm_dup_cbparam(subs_t*);
void free_cbparam(c_back_param* cb_param);
@@ -1498,6 +1499,7 @@ int send_notify_request(subs_t* subs, subs_t * watcher_subs,
str* final_body= NULL;
uac_req_t uac_r;
str* aux_body = NULL;
+ subs_t* backup_subs = NULL;
LM_DBG("dialog info:\n");
printf_subs(subs);
@@ -1618,9 +1620,13 @@ int send_notify_request(subs_t* subs, subs_t * watcher_subs,
LM_DBG("expires %d status %d\n", subs->expires, subs->status);
cb_param = mem_copy_subs(subs, SHM_MEM_TYPE);
+ backup_subs = _pres_subs_last_sub;
+ _pres_subs_last_sub = subs;
+
set_uac_req(&uac_r, &met, &str_hdr, notify_body, td, TMCB_LOCAL_COMPLETED,
p_tm_callback, (void*)cb_param);
result = tmb.t_request_within(&uac_r);
+ _pres_subs_last_sub = backup_subs;
if(result< 0)
{
LM_ERR("in function tmb.t_request_within\n");