PHP agi 编写测试
来源:互联网 发布:民航航线数据资源下载 编辑:程序博客网 时间:2024/05/21 22:28
部分代码来源于网络,经过调试后写在此:
/etc/asterisk/phpagi.conf 配置内容:
[phpagi]
debug=true //是否打开debug,一般生产环境关闭
error_handler=true
tempdir=/var/spool/asterisk/tmp/
[asmanager]
server=10.1.0.7
port=5038
username=astman
secret=astman
[fastagi]
setuid=true
basedir=/var/lib/asterisk/agi-bin/
#!/usr/bin/php -q
<?php
set_time_limit(60);
ob_implicit_flush(false);
include("phpagi.php");
$agi=new AGI;
$agi->answer();
$agi->verbose('HELLO WORLD!!!!!!');
$agi->stream_file('welcome','#'); //播放语音流媒体,按#号终止播放
$agi->say_digits('1001','1234567890*#');
$agi->hangup();
?>
简单IVR流程:
#!/usr/bin/php -q
<?php
set_time_limit(60);
ob_implicit_flush(false);
include("phpagi.php");
$agi=new AGI;
$agi->answer();
$prompt_enter_dest="welcome";
$res_dtmf=$agi->get_data($prompt_enter_dest,1000,1); //超时1000,最多1个数字
$res_num=$res_dtmf["result"];
$agi->say_digits($res_num);
if($res_num=="1")
{
$agi->verbose('You enter 1');
}
elseif($res_num=='2')
{
$agi->verbose('You enter 2');
}
else
{
$agi->stream_file('vm-goodbye','#');
}
$agi->hangup();
?>
如果带参数的方式调用AGI则按照如下规则:
调用方法:
exten => s,1,AGI(myagi.php,${exten},${mID})
在myagi.php 中则使用如下的方法来获取:
$argv[1] 对应${exten}
$argv[2] 对应${mID}
- PHP agi 编写测试
- Asterisk PHP AGI 学习笔记
- Asterisk PHP AGI 学习笔记
- 开源的php agi库:PHPAGI
- php接口自动化测试用例编写
- PHP基础,从编写到测试
- php安全编程&python测试实例编写
- 基于Asterisk的VoIP开发指南——(2)Asterisk AGI程序编写指南
- 基于Asterisk的VoIP开发指南——(2)Asterisk AGI程序编写指南
- 基于Asterisk的VoIP开发指南——(2)Asterisk AGI程序编写指南
- 基于Asterisk的VoIP开发指南——(2)Asterisk AGI程序编写指南
- Asterisk下 AGI查询mysql的程序脚本编写(笔记)
- 基于Asterisk的VoIP开发指南——(2)Asterisk AGI程序编写指南
- 基于Asterisk的VoIP开发指南——(2)Asterisk AGI程序编写指南
- 基于Asterisk的VoIP开发指南(2)——Asterisk AGI程序编写指南
- AGI 参考
- Asterisk AGI 详解
- asterisk AGI编程
- VC中利用多线程技术实现线程之间的通信
- EJB2与EJB3架构对比
- ubuntu8.10下kscope无法启动解决
- 思考核心竞争力
- 项目管理手记(16) 重量级与轻量级的ERP项目实施
- PHP agi 编写测试
- linux网络服务器模型
- VC多线程编程
- virtual constructor
- 强化 Windows Server 2003 文件服务器
- 利用 WIN2003 架设简单文件服务器
- 很不爽!!!
- 高性能的socket通讯服务器(完成端口模型--IOCP)
- 消息反射