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

  


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


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


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



<强>

<强>一套灯或LNMP环境

<强>编译FreeSWITCH的mod_xml_curl模块



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

zhouss@zhouss/var/www/html,美元cat  chunli_test.php   php & lt; ?/*   ,*李春利   ,*功能:演示接收FreeSWITCH注册请求,连接到远程MySQL数据库检索用户密码,返回XML文件   ,*备注:PHP  7.0,版本程序,注意MySQL函数发生了变化      ,* MySQL数据库表快速创建:   CREATE  DATABASE  IF  NOT  EXISTS ‘freeswitch’,, DEFAULT  CHARACTER  SET  use utf8;   USE “freeswitch”,,,,,,,,,,,,,,,,,,,,,,,,,,,   DROP  TABLE  IF  EXISTS “身份验证”,,,,,,   CREATE  TABLE “身份验证”,(,,,,,,,,,,,   ,,,的user_name, varchar (100), NOT 空,,,,,,,,   ,,,的user_password, varchar (100), NOT  NULL ,,,   ),引擎=InnoDB  DEFAULT  CHARSET=utf8,,,,,,,   INSERT  INTO “身份验证”,VALUES  (“lao_wang”、“老虎”)(“1234”,“4321”),(“chunli”、“chunli”) (“1030”,“123456”), (' 1019 ', ' 1234 '), (' 2222 ', ' 12345678 ');   ,*/美元user ,,=, $ _POST(“用户”);   时间=美元domain  $ _POST['域'];   password 美元;=,””;      时间=美元db_host “172.16.66.111”;   $ db_user =,“根”;   美元db_pwd ,=,“根”;   时间=美元db_name “freeswitch”;      function  getlink ($ db_host db_user美元sb_pwd美元,美元db_name)   {   ,,,链接=mysqli_connect美元($ db_host db_user美元sb_pwd美元);   ,,,如果(! $链接)   ,,,{   ,,,,,,,呼应“MySQL数据库连接失败\ n”;   ,,,,,,,退出();   ,,,}   ,,,如果(! mysqli_select_db(链接,db_name美元))   ,,,{   ,,,,,,,呼应“MySQL 数据库选择失败\ n”;   ,,,,,,,退出();   ,,,}   ,,,mysqli_query(链接,美元,setnames  utf8);      ,,,return 美元联系;   }         链接=getlink美元($ db_host db_user美元db_pwd美元,美元db_name);   (结果=mysqli_query美元链接,,“select  user_password ,得到authentication  where  user_name =, $ {user}”);      如果(mysqli_num_rows(结果)美元,祝辞,0)   {   ,,,,(行=结果→美元fetch_row ())   ,,,{,,   ,,,,,,,foreach (row 美元;as 关键=美元在val美元)   ,,,,,,,{,,   ,,,,,,,,,,,password 美元;=,val美元;   ,,,,,,,},,   ,,,},,   ,,,结果→美元免费();,   }   其他的   {   ,,,呼应“查无此人{$ user} \ n”;   ,,,退出();   }   mysqli_close(链接);   比;   & lt; document 类型=癴reeswitch/xml”比;   & lt;才能section  name=澳柯肌北?   ,,,& lt; domain  name=" & lt; ? php  echo 域;美元?在“比;   ,,,,,& lt; params>   ,,,,,,,& lt; param  name=" dial-string, value=" https://www.yisu.com/zixun/{presence_id=$ {dialed_user} @ $ {dialed_domain}} $ {sofia_contact ($ {dialed_user} @ $ {dialed_domain})} "/比;   ,,,,,& lt;/params>   ,,,,,& lt; groups>   ,,,,,,,& lt; group  name=澳稀北?   ,,,,,,,,,& lt; users>   ,,,,,,,,,,,& lt; user  id=" & lt; ? php  echo  $ user, ?在“比;   ,,,,,,,,,,,,,& lt; params>   ,,,,,,,,,,,,,,,& lt; param  name=懊苈搿?价值=" https://www.yisu.com/zixun/<?php echo $密码;?> "/比;   ,,,,,,,,,,,,,,,& lt;/params>   ,,,,,,,,,,,,,& lt; variables>   ,,,,,,,,,,,,,,,& lt; variable  name=" user_context, value=" https://www.yisu.com/zixun/default "/比;   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null

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