您的位置:首页 > 其它

Asterisk 中 拨号规则 之 Read()和SayDigits()命令详解

2011-01-12 15:19 344 查看
http://www.asterisk-help.com/



1:Read() 读取用户输入的一个或多个以 #-结尾的数字字符串到指定的变量。



Read(variable[,filename][,maxdigits][,option][,attempts][,timeout])





variable: variable是存储用户按键的地方.

filename: 读取按键之前要播放的文件.

maxdigits: 接收按键的最大个数. 当收到maxdigits个按键后就停止读取按键 (不需要用户按键 '#' ). 默认是 0 - 无限制 - 等待用户 按 '#' 键. 任何低于0的值表示0,最大值是255.

option: 'skip'表示如果线路没摘机就立即返回, 'noanswer' 表示线路没起来也读按键。

attempts: 如果大于1, 在没有用户按键的情况下会多次重复执行。

timeout: 超时时长(秒). 如果大于 0, 这个值就会覆盖默认的超时时长.

示例:
exten => 0000,1,Answer()
exten => 0000,n,Read(digito,goodbye,2,,3,5)
exten => 0000,n,Hangup()
// 说明一下:
//Read 中,我设置了 digito 变量接收用户输入的按键,
// goodbye :在用户按键前播放的语音文件
// 2: 代表用户最多可输入2个数,如按1和2,按一个数字必须要以#号结束。
//  :这里默认不填,我还没搞懂啥意思
// 3:用户若没有按键,重复3次播放3次语音
// 5:超时秒数,在没任何动作的情况下




2:SayDigits() 读出数字



exten => 0000,1,Answer()
exten => 0000,n,SayDigits(123)
// 系统将会读出1,2,3








read 和 SayDigits 的综合



例子:



exten => 0000,1,Answer()
exten => 0000,n,Read(digiot,goodbye,2,,3,5)
exten => 0000,n,SayDigits(${digiot})
exten => 0000,n,Hangup()
//SayDigits将读出用户输入的按键在digito变量中




www.asterisk-help.com

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: