如果呼叫者在结束前按下如何停止 ivr

how to stop an ivr if the caller presses before the end

简介:我是 Asterisk 的新手。我按照一些教程来设置我自己的基本响应程序。不过,我不知道如何执行以下操作:

问题:当有人打电话时,IVR会启动,但由于有很多选项可供选择,我想找到一种方法来指定以下内容: 如果用户按 2,则停止 IVR 并直接跳转到相应的分机,而不必收听整个消息。

我现在的例子 extension.conv :

exten => 1000,1,Answer()
exten => 1000,2,agi(googletts.agi,"If you want a banana press 1, an apple press 2, a kiwi press 3, a pineapple press 4, an orange press 5, a strawberry press 6, a raspberry press 7, a melon press 8, a cucumber press 9",en)
exten => 1,1,Goto(banana,1,1)
exten => 2,1,Goto(apple,2,1)
exten => 3,1,Goto(kiwi,1,1)
exten => 4,1,Goto(pineapple,2,1)
exten => 5,1,Goto(orange,1,1)
exten => 6,1,Goto(strawberry,2,1)
exten => 7,1,Goto(raspberry,1,1)
exten => 8,1,Goto(melon,2,1)
exten => 9,1,Goto(cucumber,2,1)

所以如果有人想要香蕉,一开始就按1,有没有办法让他不听整个ivr,直接跳到下一个分机?

您应该将 goolgetts 脚本更改为 return 备份文件(不播放)

即用 SET VARIABLE 替换 STREAM

之后你应该使用 Background+ 扩展 select,就像任何一本书中描述的那样。