大家都知道,F(xiàn)reeSWITCH默認(rèn)是從磁盤中xml文件,決定系統(tǒng)中有哪些用戶的。
靈璧網(wǎng)站建設(shè)公司成都創(chuàng)新互聯(lián)公司,靈璧網(wǎng)站設(shè)計制作,有大型網(wǎng)站制作公司豐富經(jīng)驗。已為靈璧上1000家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\外貿(mào)營銷網(wǎng)站建設(shè)要多少錢,請找那個售后服務(wù)好的靈璧做網(wǎng)站的公司定做!
對于一個常規(guī)的信息系統(tǒng),用戶信息都是存儲在數(shù)據(jù)庫中。
以下非常簡單的演示了,F(xiàn)reeSWITCH中的用戶如何使用數(shù)據(jù)庫注冊。
準(zhǔn)備工作:
一套LAMP或LNMP環(huán)境
編譯FreeSWITCH 的mod_xml_curl 模塊
Apache + php7 + MySQL 5.7 中的php腳本
根據(jù)實際情況,修改相關(guān)參數(shù)
zhouss@zhouss/var/www/html$ cat chunli_test.php 0) { while($row=$result->fetch_row()) { foreach($row as $key=>$val) { $password = $val; } } $result->free(); } else { echo"查無此人{(lán)$user}\n"; exit(); } mysqli_close($link); ?>zhouss@zhouss/var/www/html$ "> "> "/>
編譯FreeSWITCH 相關(guān)模塊
[root@CentOS ~]# iptables -F
[root@CentOS ~]# iptables -X
編譯mod_xml_curl,默認(rèn)不編譯
[root@CentOS 01_install]# vim freeswitch-1.6.17/modules.conf 將 #xml_int/mod_xml_curl 改為 xml_int/mod_xml_curl 編譯 ./configure && make && make mod_xml_curl-install 具體你的configure怎么設(shè)置的,自己加上原先的參數(shù)。
使FreeSWITCH自動加載mod_xml_curl
[root@CentOS freeswitch]# vim ./autoload_configs/modules.conf.xml 將 改為
修改FreeSWITCH用戶注冊的方式,HTTP優(yōu)先,如果請求失敗了,再到本地磁盤找xml文件
[root@CentOS freeswitch]# vim autoload_configs/xml_curl.conf.xml
修改撥號計劃,添加通話路由
[root@CentOS freeswitch]# vim dialplan/default.xml
啟動FreeSWITCH
一個SIP 使用 ('lao_wang','tiger'),注冊
一個SIP 使用('1234','4321'), 注冊
互相撥打電話,試試
調(diào)錯技巧:
按F8,打開 debug級別日志。
撥打電話,打不通,如果出現(xiàn)以下情況,說明HTTP請求是失敗的,檢查php腳本的ip,user,password參數(shù)
2017-06-29 01:21:40.705900 [WARNING] mod_voicemail.c:3487 Can't find user [1000@172.16.66.88]
如果出現(xiàn)以下情況,說明HTTP請求被拒絕,tcpdump 查看發(fā)來的包結(jié)構(gòu)。
2017-06-29 00:22:38.681206 [WARNING] mod_xml_curl.c:294 CURL returned error:[52] Server returned nothing (no headers, no data)
用戶1234 撥打 lao_wang
lao_wang的電話顯示1234來電了