使用pjsua CLI工具发起SIP呼叫:URL格式及参数问题排查
解决pjsua呼叫SIP号码的语法问题
1. 先修正参数拼写错误
你遇到的pjsua_app_config.c !Argument "--add-budy" is not valid错误,核心原因是参数拼写错误——正确的参数是--add-buddy(注意是buddy,不是budy),不管是配置文件还是命令行调用,都要使用正确的拼写。
2. 正确的SIP号码URL格式
Telnyx这类运营商要求号码遵循E.164标准格式:
- 去掉所有连字符、空格等分隔符
- 保留国家代码(比如你的47开头的挪威区号)
- 最终格式应为:
sip:4700000000@sip.telnyx.eu
3. 两种可行的呼叫方式
方式一:启动时配置并呼叫
修正配置文件中的参数拼写后,启动pjsua完成注册,之后在控制台发起呼叫:
- 修正后的配置文件内容:
--id sip:user@sip.telnyx.eu:port --registrar sip:sip.telnyx.eu --realm * --username user --password password --add-buddy sip:4700000000@sip.telnyx.eu
- 启动pjsua:
pjsua --config-file your_config.cfg - 在pjsua控制台输入呼叫命令:
call sip:4700000000@sip.telnyx.eu或者直接用联系人标识:call 4700000000
方式二:控制台直接呼叫(无需提前添加联系人)
如果只是临时呼叫,不需要提前添加联系人,启动pjsua完成注册后,直接在控制台输入:
call sip:4700000000@sip.telnyx.eu
4. 验证步骤
- 启动pjsua后,输入
reg命令,确认输出显示已成功注册到sip.telnyx.eu - 输入
buddy命令,查看已添加的联系人列表,确认号码格式正确
内容的提问来源于stack exchange,提问作者Anton Kalistratov
相关产品推荐
相关产品推荐

