diff options
author | Benny Prijono <bennylp@teluu.com> | 2009-10-29 08:16:46 +0000 |
---|---|---|
committer | Benny Prijono <bennylp@teluu.com> | 2009-10-29 08:16:46 +0000 |
commit | 64153021595b2d80fe4182d888f88cf932006067 (patch) | |
tree | 059fead24f992778a1bee0fdf370e494e53bdf29 /pjsip-apps/src/python/_pjsua.c | |
parent | a24b3dc0939d1a80494e716e9664fdb86aa82545 (diff) |
More ticket #982: added MWI support for Python
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@2976 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjsip-apps/src/python/_pjsua.c')
-rw-r--r-- | pjsip-apps/src/python/_pjsua.c | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/pjsip-apps/src/python/_pjsua.c b/pjsip-apps/src/python/_pjsua.c index dd479fda..517184a5 100644 --- a/pjsip-apps/src/python/_pjsua.c +++ b/pjsip-apps/src/python/_pjsua.c @@ -630,6 +630,33 @@ static void cb_on_typing(pjsua_call_id call_id, const pj_str_t *from, } +/* + * on_mwi_info + */ +static void cb_on_mwi_info(pjsua_acc_id acc_id, pjsua_mwi_info *mwi_info) +{ + if (PyCallable_Check(g_obj_callback->on_mwi_info)) { + PyObject *param_acc_id, *param_body; + pj_str_t body; + + ENTER_PYTHON(); + + body.ptr = mwi_info->rdata->msg_info.msg->body->data; + body.slen = mwi_info->rdata->msg_info.msg->body->len; + + PyObject_CallFunctionObjArgs( + g_obj_callback->on_mwi_info, + param_acc_id = Py_BuildValue("i",acc_id), + param_body = PyString_FromPJ(&body), + NULL + ); + + Py_DECREF(param_acc_id); + Py_DECREF(param_body); + + LEAVE_PYTHON(); + } +} /* * translate_hdr @@ -901,6 +928,7 @@ static PyObject *py_pjsua_init(PyObject *pSelf, PyObject *pArgs) cfg_ua.cb.on_pager2 = &cb_on_pager; cfg_ua.cb.on_pager_status2 = &cb_on_pager_status; cfg_ua.cb.on_typing2 = &cb_on_typing; + cfg_ua.cb.on_mwi_info = &cb_on_mwi_info; p_cfg_ua = &cfg_ua; |