2017-04-05 67 views
-1

正如我所看到的,我可以使用Asterisk cmd監視器記錄通話,然後使用ControlPlayback播放錄製的文件。並且默認的基本名稱是在頻道名稱上加上一個數字構成的,那麼我怎樣才能播放上次的通話?例如: 例如:我有3個電話,call1,call2,call3,頻道是111,所以我怎樣才能得到最後一個電話(call3)的名稱來播放?星號:播放最後錄製的文件?

+0

這個問題不能回答,原因是其剛剛撥號方案的工作和撥號方案,依賴。 – arheops

回答

0

一個簡單的方法是使用全局變量來存儲錄製的文件名。

[call] 
exten => s,1,Answer() 
exten => s,n,MixMonitor(${UNIQUEID}.wav) 
exten => s,n,Set(GLOBAL(lastcall)=${UNIQUEID}) 
exten => s,n,Dial(...) 

[listen] 
exten => s,1,Answer() 
exten => s,n,Wait(1) 
exten => s,n,Playback(${GLOBAL(lastcall)}.wav) 

要了解更多關於全球()函數:

asterisk*CLI> core show function GLOBAL 

    -= Info about function 'GLOBAL' =- 

[Synopsis] 
Gets or sets the global variable specified. 

[Description] 
Set or get the value of a global variable specified in <varname> 

[Syntax] 
GLOBAL(varname)