1、linphone编译
linphone一般用在android/ios/windows/mobile上,但是没有图形界面的linphonec命令行程序用在资源紧张的硬件平台上也跟pjsip命令行一样方便
网友整理的依赖库,一键编译,非常省事
https://github.com/ua3nbw-cf/linphone_arm
用到的源码包
https://aur.archlinux.org/packages/flexisip/
linphone编译需要一堆库,可能不会一次就编译成功
编译过程可能遇到的问题及其解决方法
https://blog.csdn.net/haivue/article/details/8941564
2、linphonec简单应用
使用命令行linphonec模拟1081和1082通话
1) 安装linphonec
sudo apt-get install linphone
2) 修改配置: vim ~/.linphonerc
如果你的服务器上没有这个文件,则执行linphonec命令,此命令会自动生成该文件
[sip]
# 修改linphonec的启动端口
sip_port=5560
media_encryption=none
guess_hostname=1
# 配置帐号信息
contact=sip:[email protected]
inc_timeout=30
in_call_timeout=0
delayed_timeout=4
use_ipv6=0
register_only_when_network_is_up=1
register_only_when_upnp_is_ok=1
[proxy_0]
# 配置注册服务,这里配置kamailio服务
reg_proxy=sip:10.240.80.153:5060
# 配置帐号信息
reg_identity=sip:[email protected]:5060
reg_expires=900
reg_sendregister=1
publish=0
根据以上的配置信息在另一台服务上配置另一个帐号1082
执行命令
linphonec
或
# 可以不使用默认配置文件,也可以在启动时,指定配置文件
linphonec -c myconfig
3) 模拟通话
下面使用linphonec模拟1081和1082通话
向kamailio注册1081和1082
## 1081注册
$> linphonec
Warning: video is disabled in linphonec, use -V or -C or -D to enable.
linphonec> Registration on <sip:10.240.80.153:5060> successful.
## 1082注册
$> linphonec
Ready
Warning: video is disabled in linphonec, use -V or -C or -D to enable.
linphonec> Registration on <sip:10.240.80.153> successful.
1081使用call命令呼叫1082, 1082使用answer进行应答
## 1081信令信息
# 呼叫1082
linphonec> call sip:[email protected]
Establishing call id to <sip:[email protected]>, assigned id 1
Contacting <sip:[email protected]>
linphonec> Call 1 to <sip:[email protected]> in progress.
linphonec> Remote ringing.
linphonec> Early media.
# 当1082使用answer应答后,会出现如下信息,就可以进行通话
linphonec> Call 1 with <sip:[email protected]> early media.
Call 1 with <sip:[email protected]> connected.
Call answered by <sip:[email protected]>.
linphonec> Media streams established with <sip:[email protected]> for call 1 (audio).
## 1082信令信息
# 当被呼叫时出现如下信息
linphonec> Receiving new incoming call from "1081" <sip:[email protected]>, assigned id 1
# 执行answer,进行应答,如果成功,则输出如下信息
answer
Connected.
linphonec> Call 1 with "1081" <sip:[email protected]> connected.
Media streams established with "1081" <sip:[email protected]> for call 1 (audio).
如果要结束通话,在1081和1082端任何一端执行terminate,都可以结束命令。
使用quit命令可以退出linphonec的命令模式
参考设计
https://blog.csdn.net/hry2015/article/details/77484236