2013-07-11 57 views
4

這裏是CH1背景下,我想從.CALL文件調用星號 - 如果沒有應答呼叫,執行agi腳本?

[CH1] 
exten=>9367,1,Playback(welcome); 
same => n,Agi(agi://localhost/openlock.agi) 
same => n,Background(CH1_WAVE1) 
same => n,Hangup() 

我.CALL文件看起來像這樣

Channel: DAHDI/1/somemumber 
CallerID:xyz 
MaxRetries: 3 
RetryTime: 40 
WaitTime: 25 
Context:CH1 
Extension: 9367 
Priority: 1 

所以我的問題是這樣的,如果不接聽電話,我AGI腳本不會得到執行,那麼如果在重試3次後沒有應答呼叫,那麼是否有任何方法可以執行我的AGI腳本?

回答

2

3次重試沒有辦法。 但是posible每次重試。

在調用文件更改通道本地/ somenumber @撥出/ N

創建上下文

[dialout] 
exten => _X.,1,Dial(DAHDI/1/${EXTEN},,g) 
exten => _X.,2,Goto(${DIALSTATUS},1) 
exten => BUSY,1,AGI(busy.agi) 
exten => CONGESTION,1,AGI(fail.agi) 
exten => FAILED,1,AGI(fail.agi) 
exten => NOANSWER,1,AGI(noanaswer.agi) 

而且我higly不建議更換創建撥號如果你是不是在星號大師。使用開源引擎。它實際上分配了你從未想過的問題。

+0

謝謝,它得到了工作,它只是爲了學習目的,所以沒有任何問題在測試任何新的:P。順便說一句,你可以建議任何包含星號的高級功能的好書嗎? –

+1

「星號電話的未來」。 「Asterisk™:權威指南」 – arheops

+0

非常好的信息,它幫助了我很多。 –