我正在運行星號並試圖將一個聲音文件循環x次或一段時間。任何人都可以將我指向正確的方向嗎?我目前的Asterisk調用文件如下所示:如何在呼叫文件中循環播放單個播放聲音文件以獲取星號?
Channel: /sip/flowout/1202XXXXXXX
CallerID: <3333>
Application: Playback
Data: soundfile
當前配置調用目標方並播放錄音並掛斷。但我想知道如果循環可用於此應用程序?
非常感謝您的幫助..
我正在運行星號並試圖將一個聲音文件循環x次或一段時間。任何人都可以將我指向正確的方向嗎?我目前的Asterisk調用文件如下所示:如何在呼叫文件中循環播放單個播放聲音文件以獲取星號?
Channel: /sip/flowout/1202XXXXXXX
CallerID: <3333>
Application: Playback
Data: soundfile
當前配置調用目標方並播放錄音並掛斷。但我想知道如果循環可用於此應用程序?
非常感謝您的幫助..
例如,你可以在你的diall計劃到分機,將重複你的聲音
Callfile:
Channel: SIP/flowout/1202XXXXXXX
CallerID: <3333>
Context: play_sound
Extension: 100
Priority: 1
Diallplan:
[play_with_timeout]
exten => 100,1,Dial(Local/[email protected]_sound,15,S(60))
[play_sound]
exten => 100,1,Set(repeatCount=5)
exten => 100,n(playback),Playback(hello-world)
exten => 100,n,Set(repeatCount=$[${repeatCount} - 1])
exten => 100,n,GotoIf(GotoIf($[${repeatCount} = 0]]?exit:playback)
exten => 100,n(exit)Hangup()
S(x)-Wi通過此選項,您可以指定一段時間,在該時間段之後,行 將被掛起。定時器開始被呼叫人後響應號召
如果您在callfile你的聲音設置Context: play_sound
將播放4次,但如果你將其更改爲Context: play_with_timeout
您的通話將hungup 60秒後,或播放聲音的4倍。
你也可以只是把它5次這樣的
Channel: /sip/flowout/1202XXXXXXX
CallerID: <3333>
Application: Playback
Data: soundfile&soundfile&soundfile&soundfile&soundfile
當然這是不太靈活,但更簡單。
您也可以使用Asterisk命令雖然
Callfile:
Channel: /sip/flowout/1202XXXXXXX
CallerID: <3333>
Context: play_sound
Set: _soundfile=soundfile
Set: _timePeriod=30
Diallplan:
same => n,Progress()
same => n,While($[${CDR(duration)} < ${timePeriod} ])
same => n,Playback(soundfile,noanswer)
same => n,EndWhile
same => n,HangUp