【问题标题】:What Call-ID when we run Sofia status profile xxxxxx reg?我们运行 Sofia status profile xxxxxx reg 时的 Call-ID 是什么?
【发布时间】:2016-06-06 13:16:16
【问题描述】:
我正在尝试使用 PJSIP 制作 iOS 应用程序,当我运行以下命令时,我正在使用 GOSSIP 包装器
"Sofia status profile xxxxxx reg"
要检查服务器上注册的设备,我会关注每个设备。我想知道什么是 Call-ID 参数,我是否可以在设备上获取它?如果是,那怎么办?
呼叫 ID:mDWB.zJEvhcLSOnZcKTuTFbrduzO--0a
用户:xxxxxxxxxxxxxxxxxx
联系人:""
代理:Dringgg-Android
状态:已注册(UDP)(未知)EXP(2016-02-23 16:11:23)
EXPSECS(95)
Ping 状态:可达 Ping 时间:0.00 主机:srv1
IP: xxxxxxxxxxxxx 端口: 8080 Auth-User:
xxxxxxx Auth-Realm: xxxxxxxxx MWI-Account: xxxxxxxxxxxxxxxxx
【问题讨论】:
标签:
ios
voip
pjsip
gossip
【解决方案1】:
Call-ID 头域(强制)是一个对话标识符,它的目的是
识别属于同一呼叫/对话的消息。此类消息具有
相同的 Call-ID 标识符。
我不确定你是否可以在注册用户代理时得到它,但它可以在使用pjsua_call_make_call函数进行调用时从最后一个参数p_call_id中获取
pj_status_t pjsua_call_make_call (pjsua_acc_id acc_id,
const pj_str_t * dst_uri,
const pjsua_call_setting * opt,
void * user_data,
const pjsua_msg_data * msg_data,
pjsua_call_id * p_call_id
)
【解决方案2】:
它也可以在回调方法中检索,例如
:
on_call_state
在这里你得到一个结构 pjsua_call_info。
可以在其中找到 ci.call_id。