diff options
author | Benny Prijono <bennylp@teluu.com> | 2007-01-13 23:22:40 +0000 |
---|---|---|
committer | Benny Prijono <bennylp@teluu.com> | 2007-01-13 23:22:40 +0000 |
commit | 2fe4e4e9985b9c4cbff7209a9c876a314abc9779 (patch) | |
tree | 216d17b9d93ad17b74f70e76a5913fd18243ddb3 /pjsip/src/pjsua-lib/pjsua_im.c | |
parent | 79a935f4554f9b852862e52df82c02b2ef22bae8 (diff) |
More work on ticket #50: binding of PJSUA-API account to specific transport, and minor fixes in PJSIP core implementation. Tested okay.
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@881 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 | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/pjsip/src/pjsua-lib/pjsua_im.c b/pjsip/src/pjsua-lib/pjsua_im.c index 462796a0..0e29b43e 100644 --- a/pjsip/src/pjsua-lib/pjsua_im.c +++ b/pjsip/src/pjsua-lib/pjsua_im.c @@ -433,6 +433,16 @@ PJ_DEF(pj_status_t) pjsua_im_send( pjsua_acc_id acc_id, return status; } + /* If account is locked to specific transport, then set transport to + * the request. + */ + if (pjsua_var.acc[acc_id].cfg.transport_id != PJSUA_INVALID_ID) { + pjsip_tpselector tp_sel; + + pjsua_init_tpselector(pjsua_var.acc[acc_id].cfg.transport_id, &tp_sel); + pjsip_tx_data_set_transport(tdata, &tp_sel); + } + /* Add accept header. */ pjsip_msg_add_hdr( tdata->msg, (pjsip_hdr*)pjsua_im_create_accept(tdata->pool)); @@ -520,6 +530,16 @@ PJ_DEF(pj_status_t) pjsua_im_typing( pjsua_acc_id acc_id, } + /* If account is locked to specific transport, then set transport to + * the request. + */ + if (pjsua_var.acc[acc_id].cfg.transport_id != PJSUA_INVALID_ID) { + pjsip_tpselector tp_sel; + + pjsua_init_tpselector(pjsua_var.acc[acc_id].cfg.transport_id, &tp_sel); + pjsip_tx_data_set_transport(tdata, &tp_sel); + } + /* Add accept header. */ pjsip_msg_add_hdr( tdata->msg, (pjsip_hdr*)pjsua_im_create_accept(tdata->pool)); |