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

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, 这个值就会覆盖默认的超时时长.

示例:

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

 

 

2:SayDigits()    读出数字

 

 

[php]  view plain copy
  1. exten => 0000,1,Answer()  
  2. exten => 0000,n,SayDigits(123)  
  3. // 系统将会读出1,2,3  
 

 

 

 


 

read 和 SayDigits 的综合

 

例子:

 

 

[c-sharp]  view plain copy
  1. exten => 0000,1,Answer()  
  2. exten => 0000,n,Read(digiot,goodbye,2,,3,5)  
  3. exten => 0000,n,SayDigits(${digiot})  
  4. exten => 0000,n,Hangup()  
  5. //SayDigits将读出用户输入的按键在digito变量中  
 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值