diff options
author | Benny Prijono <bennylp@teluu.com> | 2007-06-11 18:22:54 +0000 |
---|---|---|
committer | Benny Prijono <bennylp@teluu.com> | 2007-06-11 18:22:54 +0000 |
commit | aa434b698389bad9d27904c1dab3e96f91f259a8 (patch) | |
tree | 7689535b9bad3e086c7fd65b68b912335f84e30a /pjsip/src/pjsua-lib/pjsua_im.c | |
parent | a299aacc7112e537d37dade67dbba42009725991 (diff) |
Ticket #334: Added on_pager_status2() callback to receive the full SIP message of IM delivery status (thanks Paul Levin)
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@1363 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjsip/src/pjsua-lib/pjsua_im.c')
-rw-r--r-- | pjsip/src/pjsua-lib/pjsua_im.c | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/pjsip/src/pjsua-lib/pjsua_im.c b/pjsip/src/pjsua-lib/pjsua_im.c index 81fed481..46eb0e83 100644 --- a/pjsip/src/pjsua-lib/pjsua_im.c +++ b/pjsip/src/pjsua-lib/pjsua_im.c @@ -352,7 +352,7 @@ static void im_callback(void *token, pjsip_event *e) tsx->status_text.ptr)); } - if (pjsua_var.ua_cfg.cb.on_pager_status) + if (pjsua_var.ua_cfg.cb.on_pager_status) { pjsua_var.ua_cfg.cb.on_pager_status(im_data->call_id, &im_data->to, &im_data->body, @@ -360,6 +360,25 @@ static void im_callback(void *token, pjsip_event *e) (pjsip_status_code) tsx->status_code, &tsx->status_text); + } + + if (pjsua_var.ua_cfg.cb.on_pager_status2) { + pjsip_rx_data *rdata; + + if (e->body.tsx_state.type == PJSIP_EVENT_RX_MSG) + rdata = e->body.tsx_state.src.rdata; + else + rdata = NULL; + + pjsua_var.ua_cfg.cb.on_pager_status2(im_data->call_id, + &im_data->to, + &im_data->body, + im_data->user_data, + (pjsip_status_code) + tsx->status_code, + &tsx->status_text, + rdata); + } } } |