看到一篇elastix+ARM 11 树莓派SIP 的真正的移动终端文章,才想搞这个入手买的PI,结果下来刷进入开不机,或者开机太慢总之干掉了。入手PI两周,最先使用的Opensips,内网都可以拨打,就是外网打不进来,STUN RTP各种试,教程很多,但拨号规则代码有的要会编写 ,用了一周多时间,翻了好多次墙放弃了,后来试了yate ,编译过了启动了,侦听什么的都能开,但是内网都连接不上,教程也少,放弃了,试了kamailio4.0编译不过,一堆错,搞不定放弃, freeswitch,有次编译过了,给删了,后来不知道怎么编译不了。然后才开始搞asterisk,三天就内外网就可以互相拨打。还有好多功能要测试,如 并发最大多少路通话,数据库,freePBX管理,会议,视频通话,IVR不知道PI顶得住不,如果只是几个亲友之间用用,就不用太多功能了。
下面来点真的 asterisk使用的是认证版本 certified-asterisk-1.8.15-cert2 SIP客户端 PC有X-lite 5.0 SIP Phone V2.2 安卓 Csipsimple sipdroid 苹果 ---自备 路由器要开放的端口:UDP 5060 侦听 UDP 4069 这个端口没有查过用途 UDP 10000---20000 )RTP建议开到60000 最新的是 11.3 好像有11.4版 安装环境 差什么自己补一下 sudo apt-get install php5 sudo apt-get install libmysqlclient-dev mysql-client sudo apt-get install lame sudo apt-get install httpd sudo apt-get install libxml2 sudo apt-get install sox sudo apt-get install libxml2-devel libtiff libtiff-devel openssl bison perl curl 解压下好的文件 cd 进入解压后的目录 sudo ./configure sudo make menuselect 这个可以不要 选 sudo make ------------------------------------------ 执行以下命令安装 sudo make install sudo make samples 生成的配置文件在/etc/asterisk sudo make config 进入配置文件目录 cd /etc/asterisk asterisk软件交换配置文件 sip.conf //sip协议主要配置文件extensions.conf //拨号规则配置文件 sudo nano /etc/asterisk/asterisk.conf 在 [general] 中增加 externip = xxx.xxx.xxx.xxx ;填外网是IP ;externhost=dmlink.dvrdns.org ;是域名就注释上面的一行,把这行注释去掉 localnet=192.168.1.3/255.255.255.0 I 的地址canreinvite=no qualify=yes ;以下的是用户账号,密码可增加,更改 [100] type=friend;用户类型 secret=100;密码 host=dynamic;动态IP context=internal;extension拨号方案 username=100;用户名 nat=yes;网络地址转换,内网穿透 allow = ulaw;允许使用gsm、ulaw、G729、G711、pcm、vox、wav等音频格式,不配置此项默认gsm格式; callgroup=1;呼叫组 dtmfmode = rfc2833 [101] type=friend ;用户类型 secret=101; 密码 host=dynamic;动态IP context=internal;extension拨号方案 username=101;用户名 nat=yes;网络地址转换,内网穿透 allow=ulaw;允许使用gsm、ulaw、G729、G711、pcm、vox、wav等音频格式; callgroup=1 ;呼叫组 ; pickupgroup=1 ;可以抢接与callgroup号相同的电话 dtmfmode = rfc2833; [102] 参照以上 sudo nano /etc/asterisk/extensions.conf 1.配置文件 extensions.conf 2.[default] 3.找到这一行[internal] 没有就加入以下代码 4.exten=>100,1,Dial(SIP/100,20) 5.exten=>101,1,Dial(SIP/101,20);20是超时秒数 6.exten=>102,1,Dial(SIP/102,20) 7. 8.在extensions.conf中加入 9.exten=>1234,1,MeetMe(1001||);不需要加密码 10.若要使用呼叫驻留,在extension.conf中加入 11.include=>parkedcalls 12.exten=>100,Dial(SIP/100,,t) 13.exten=>101,Dial(SIP/101,,t) 14.exten=>102,Dial(SIP/102,,t) 15. 16.若要使用免打扰,在extension.conf中加入 17.exten=>100,1,Zapateller(nocallerid) 1. 2.sip.conf文件配置与说明 ; 这里注释的部分中还提供一些关于SIP部分的调试命令。用户将可以在Asterisk控制台当中使用 进入控制台 sudo asterisk -r ; sip show peers 显示所有的SIP对端,包括友端 ; sip show users XXX 显示所有的SIP用户端,包括友端XXX用户号码 ; sip show registry 显示所有注册主机的信息 ; sip debug 显示所有SIP消息 ; 重新载入SIP的配置文件(也可以通过“sip reload”来实现),而已在线的活动用户将不会受到影响 本文来自:DISCUZ社区动力 |