Asterisk 等待 AGI 调用多长时间?

How long Asterisk wait for an AGI call?

我在 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,直到它处理完命令然后 return AUDIO_FILE 变量(大约 20 秒)。但实际是 Asterisk 只是等了几秒钟,甚至 Agi 还没有完成,它仍然通过它并播放 AUDIO_FILE (未初始化) 所以问题是:如何更改 Asterisk 中的 AGI 超时设置?

AGI界面简单

如果你这样做而不是像

这样的 agi 文件
while(1){
 sleep(1)
}

然后它会等到呼叫者挂断(实际上在挂断后甚至更长的时间,但不被允许,所以你必须避免这样的敏捷)。

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