千家信息网

freeswitch 使用外部directory 代替磁盘xml文件

发表于:2024-10-01 作者:千家信息网编辑
千家信息网最后更新 2024年10月01日,大家都知道,FreeSWITCH默认是从磁盘中xml文件,决定系统中有哪些用户的。对于一个常规的信息系统,用户信息都是存储在数据库中。以下非常简单的演示了,FreeSWITCH中的用户如何使用数据库注
千家信息网最后更新 2024年10月01日freeswitch 使用外部directory 代替磁盘xml文件


大家都知道,FreeSWITCH默认是从磁盘中xml文件,决定系统中有哪些用户的。


对于一个常规的信息系统,用户信息都是存储在数据库中。


以下非常简单的演示了,FreeSWITCH中的用户如何使用数据库注册。



准备工作:

一套LAMP或LNMP环境

编译FreeSWITCH 的mod_xml_curl 模块



Apache + php7 + MySQL 5.7 中的php脚本

根据实际情况,修改相关参数

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"查无此人{$user}\n";    exit();}mysqli_close($link);?>  
zhouss@zhouss/var/www/html$



编译FreeSWITCH 相关模块

[root@CentOS ~]# iptables -F

[root@CentOS ~]# iptables -X



编译mod_xml_curl,默认不编译

[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怎么设置的,自己加上原先的参数。


使FreeSWITCH自动加载mod_xml_curl

[root@CentOS freeswitch]# vim ./autoload_configs/modules.conf.xml将    改为                


修改FreeSWITCH用户注册的方式,HTTP优先,如果请求失败了,再到本地磁盘找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'), 注册


互相拨打电话,试试





调错技巧:

按F8,打开 debug级别日志。



拨打电话,打不通,如果出现以下情况,说明HTTP请求是失败的,检查php脚本的ip,user,password参数

2017-06-29 01:21:40.705900 [WARNING] mod_voicemail.c:3487 Can't find user [1000@172.16.66.88]



如果出现以下情况,说明HTTP请求被拒绝,tcpdump 查看发来的包结构。

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来电了







用户 编译 参数 情况 电话 文件 磁盘 信息 数据 数据库 模块 系统 脚本 实际 常规 技巧 方式 日志 环境 用户注册 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 常州专业软件开发流程 软件开发程序员收入 据相关媒体报道网络安全事故 魔兽世界服务器不同区能一起玩吗 数据库中前俩名怎么表示 数据库窗体标签颜色在哪里 应用软件开发php c# 服务器专业级防病毒软件 华为软件开发本科多少钱 服务器优化的三大原则 网络安全手抄报设计高中 数据库技术计算机三级难吗 崇明区使用网络技术售后服务 僵尸毁灭工程重启服务器终止 app软件开发哪家服务好 北京优势软件开发市场报价 蘑菇云边缘服务器 吉林时代网络技术分类服务标准 零基础自学软件开发 进外企 黑客网络技术有哪些 沈阳计算机网络技术专科学校 桌面服务器改 数据库同步阻塞 考勤怎么采集数据库 河北品质软件开发过程服务标准 软件开发的流程 类型 软件工程网络技术方向好吗 网络安全技术人才缺失 计算机网络技术三年上完 张家口 软件开发
0