1

我在 Asterisk 13 中有一个简单的拨号方案

exten => 800,1,Answer()
 ;AGI do something and return AUDIO_FILE tobe played
 same => n,Agi(agi://localhost:1000/doAlotOfThing.agi)
 same => n,Playback(${AUDIO_FILE}
 same => n,Hangup()

我原以为 Asterisk 会等待 AGI,直到它处理完命令然后返回 AUDIO_FILE 变量(大约 20 秒)。但实际是 Asterisk 只需等待几秒钟,甚至 Agi 还没有完成,它仍然通过它并播放 AUDIO_FILE(未初始化)所以问题是:我如何更改 Asterisk 中的 AGI 超时设置?

4

1 回答 1

1

AGI 界面简单。

如果你这样做而不是 agi 文件,比如

while(1){
 sleep(1)
}

然后它会等到来电者挂断(实际上挂断后还要再等一段时间,但这没有被授予,所以你有避免这样的 agi)。

如果星号通过拨号计划到达下一个目的地,这意味着您的 agi 关闭了输入流或发出了 exit(0) 或类似的命令。

于 2017-10-10T16:50:37.097 回答