在pjsip 2.6的pjproject-2.6\pjsip-apps\src\pjsua 目录下,有个很好的例子,可以拨打单方通话和多方通话。
示例在:pjsua_app_cli.c里面static pj_status_t cmd_make_multi_call(pj_cli_cmd_val *cval)函数中。
多方通话的逻辑和单独拨打一个电话的逻辑是一样的,只是拨打一个电话,调用一次pjsua_call_make_call,而多方通话多次调用该接口,拨出多个电话。另外,在on_call_media_state中主要connect port,否则是听不到声音的。
拨打多方通话的代码:
for (i=0; i<count; ++i) {
pj_status_t status;
status = pjsua_call_make_call(current_acc, &tmp, &call_opt, NULL, NULL, NULL);
if (status != PJ_SUCCESS)
break;
}
connect port的方法:
比如A 先打电话给B,在打电话给C,进行3方通话,正常情况下,
A和B通话是这样连接:
/* Callback called by the library when call's media sta