微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

freeswitch xml_curl模块使用

freeswitch xml_curl模块使用 替换掉directory,ivr,dialplan,等各种本地配置xml文件

freeswitch 数据库生成xml文件

部分代码


<?PHP
/**
* @package FS_CURL

*/


/**
* define for the time that execution of the script started
*/
define('START_TIME',ereg_replace('^0\.([0-9]+) ([0-9]+)$','\2.\1',microtime()));


/**
* Pre-Class initialization die function
* This function should be called on any
* critical error condition before the fs_curl
* class is successfully instantiated.
* @return void
*/


function file_not_found($no=false,$str=false,$file=false,$line=false) {
if ($no == E_STRICT) {
return;
}
header('Content-Type: text/xml');
printf("<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n");
printf("<document type=\"freeswitch/xml\">\n");
printf(" <section name=\"result\">\n");
printf(" <result status=\"not found\"/>\n");
printf(" </section>\n");
if (!empty($no) && !empty($str) && !empty($file) &&!empty($line)) {
printf(" <!-- ERROR: $no - ($str) on line $line of $file -->\n");
}
printf("</document>\n");
exit();
}
error_reporting(E_ALL);
set_error_handler('file_not_found');


if (!class_exists('XMLWriter')) {
trigger_error(
"XMLWriter Class NOT Found... You Must install it before using this package"
,E_USER_ERROR
);
}
if (!(@include_once('fs_curl.PHP'))
|| !(@include_once('global_defines.PHP'))) {
trigger_error(
'Could not include fs_curl.PHP or global_defines.PHP',E_USER_ERROR
);
}
if (!is_array($_REQUEST)) {
trigger_error('$_REQUEST is not an array');
}


if (array_key_exists('cdr',$_REQUEST)) {
$section = 'cdr';
} else {
$section = $_REQUEST['section'];
}
$section_file = sprintf('fs_%s.PHP',$section);
/**
* this include will differ based on the section that's passed
*/
if (!(@include_once($section_file))) {
trigger_error("unable to include $section_file");
}
switch ($section) {
case 'configuration':
if (!array_key_exists('key_value',$_REQUEST)) {
trigger_error('key_value does not exist in $_REQUEST');
}
$config = $_REQUEST['key_value'];
$processor = sprintf('configuration/%s.PHP',$config);
$class = str_replace('.','_',$config);
if (!(@include_once($processor))) {
trigger_error("unable to include $processor");
}
$conf = new $class;
$conf -> comment("class name is $class");
break;
case 'dialplan':
$conf = new fs_dialplan();
break;
case 'directory':
$conf = new fs_directory();
break;
case 'cdr':
$conf = new fs_cdr();
break;
case 'chatplan':
$conf = new fs_chatplan();
break;
case 'phrases':
$conf = new fs_phrases();
break;
}


$conf -> debug('---- Start _REQUEST ----');
$conf -> debug($_REQUEST);
$conf -> debug('---- End _REQUEST ----');
$conf -> main();
$conf -> output_xml();


?>


详细代码,请下载http://download.csdn.net/detail/coolyqq/9302651

原文地址:https://www.jb51.cc/xml/295829.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。