C - 具有outbound_proxy值的 PJSIP 帐户注册抛出"Invalid outbound proxy URI"



我正在尝试使用pjsip C库对p-CSCF执行SIP REGISTER。我已经创建、初始化并启动了pjsua。我还使用pjsua_transport_create创建了传输。当我使用出站代理时,如下所示。我收到

无效的出站代理URI

出站代理:

pjsua_config sua_config;
pjsua_config_default(&sua_config);
sua_config.cb.on_incoming_call = &sua_on_incoming_call;
sua_config.cb.on_call_media_state = &sua_on_call_media_state;
sua_config.cb.on_call_state = &sua_on_call_state;
sua_config.outbound_proxy_cnt = 1;
sua_config.outbound_proxy[0] = pj_str("172.40.21.20");
sua_config.require_100rel=1;

如果我在帐户配置中注释出站代理和仅配置代理。然后我收到

路由URI 172.40.21.20无效。

帐户配置:

pjsua_acc_config account_config;
pjsua_acc_config_default(&account_config);
account_config.id = pj_str(""Demo user" <sip:demouser@domainname");
account_config.reg_uri = pj_str("sip:domainname");
account_config.cred_count = 1;
account_config.cred_info[0].realm = pj_str("domainname");
account_config.cred_info[1].scheme = pj_str("digest");
account_config.cred_info[2].username = pj_str("demouser");
account_config.cred_info[0].data_type = PJSIP_CRED_DATA_DIGEST;
account_config.cred_info[0].data = pj_str("testdemouser");
account_config.reg_use_proxy=3;
account_config.require_100rel=1;
account_config.proxy_cnt=1;
account_config.proxy[0]=pj_str("172.40.21.20");

问题:

  1. 使用pj_str分配URL是否正确
  2. 是否需要输入带有代理值的pjsua_config和pjsua_acc_config

我错过了在ip地址中加前缀"sip:"@南达库马尔是对的。

自从我发现了自己,我就没有投票给@nandha

最新更新