一,简介
Linphone:开源的Voip电话,官网:http://www.linphone.org。可在官网下载终端软件(iOS,Android,Win,Mac)。
Asterisk:一个开放源代码的软件VoIP PBX系统,它是一个运行在Linux环境下的纯软件实施方案。Asterisk是一种功能非常齐全的应用程序,提供了许多电信功能,能够把你的x86机 器变成你自己的交换机,还能够当作一台企业级的商用交换机,官网http://www.asterisk.org。
二,安装
Linphone:直接根据你的终端类型直接选择相应软件安装就行,不再赘述。
Asterisk环境的搭建,可以参考我的另一篇文章: Asterisk + FreePBX + ubuntu14.04 环境配置:http://www.linuxdiyf.com/linux/26192.html
三,Asterisk配置
在装好Asterisk的linux主机上执行下面操作
1,通过修改配置文件添加sip用户
sudo vi /etc/asterisk/sip.conf
文件末尾添加如下片段
[555]
type = friend
secret = mypassword
host = dynamic
context = internal
[paul]
type = friend
secret = paulpw
host = dynamic
context = internal
[315]
type = friend
secret = pw315
host = dynamic
context = internal
大意是:添加了三个用户,分别为555,paul,315。地址是动态分配的,配置的策略是internal。
再配置策略
sudo vi /etc/asterisk/extensions.conf
文件末尾添加如下片段
[internal]
exten => 555, 1, Dial(SIP/555)
exten => 501, 1, Dial(SIP/paul)
exten => 315, 1, Dial(SIP/315)
大意是:第一句,拨进来的号码是555,优先级为1,执行的动作是 通过sip服务打电话给555,后两句类似。
2,重启Asterisk
如果Asterisk处于未启动状态
启动asterisk,出现Asterisk Ready,即成功启动
asterisk -vvgc
控制台下,使用如下命令,获取帮助信息,可以看到所有的asterisk操作命令
core show help
重启
core stop now
asterisk -vvgc
3,验证sip用户
sip show users
添加用户成功
四,linphone配置
Linphone与Asterisk服务器必须接入同一个网络内。
1,获得服务器地址
若linux系统安装在virtualbox虚拟机里,则必须让其获取局域网内ip地址,方法如下:
设置-网络-连接方式,改为桥接网卡,确定
重启虚拟机
查询IP地址
ifconfig
若linux系统直接直接装磁盘上,直接使用ifconfig命令获取ip地址
2,获取客户端地址
测试机为两个安卓终端,设置-关于手机-状态信息,IP地址如下:
另外一款IP为:192.168.123.86
3,测试连接
ping命令
ping 192.168.123.86
结果如下:
可以ping通,连接成功
4,配置linphone
login
成功即可看到状态变为 Registered
另一台同样配法
给“”315“”打个电话
已经通话49秒了
完全免费的
**Asterisk还支持视频等的通话,就像其官方格言一样,It‘s just a software。或许有一天真的会和各个运营商平分天下呢。