gpt4 book ai didi

ios - 如何获取 pjsip iOS API 调用状态,如忙、响铃或不可用

转载 作者:行者123 更新时间:2023-11-29 10:31:42 26 4
gpt4 key购买 nike

我能够将 pjsip 集成并连接到 iOS,但我想在通话初始化期间获得不同的状态,例如占线、正在响铃和无法接通。为了创建调用,我正在使用此代码

void makeCall(char* destUri)
{
pj_status_t status;
pj_str_t uri = pj_str(destUri);

status = pjsua_call_make_call(acc_id, &uri, 0, NULL, NULL, NULL);
if (status != PJ_SUCCESS) error_exit("Error making call", status);
}

但我没有找到任何地方如何获得不同的调用状态..

最佳答案

这是一个简单但令人困惑的过程

有一个静态方法

static void on_incoming_call(pjsua_acc_id acc_id, pjsua_call_id call_id, pjsip_rx_data *rdata);

然后在你的 pjusa_config 中这样设置

// Init the config structure
pjsua_config cfg;
cfg.cb.on_call_state = &on_call_state;

然后你会在这里得到回调

/* Callback called by the library when call's state has changed */
static void on_call_state(pjsua_call_id call_id, pjsip_event *e)
{
pjsua_call_info ci;

PJ_UNUSED_ARG(e);

pjsua_call_get_info(call_id, &ci);
PJ_LOG(3,(THIS_FILE, "******* ***** Call %d state=%.*s", call_id,
(int)ci.state_text.slen,
ci.state_text.ptr));
}

关于ios - 如何获取 pjsip iOS API 调用状态,如忙、响铃或不可用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29328789/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com