2014-10-16 247 views
0

如何在連接到呼叫者之前播放波形文件到freeswitch中的b-leg? 如何在撥號方案中做到這一點,或者我需要在lua中編寫腳本?使用lua在freeswitch中使用wav文件播放wav文件

情景是我有幾個電話號碼,但只有一個電話。播放一個波形文件會很有幫助,因此我可以確定撥打了哪個號碼。

回答

0

我和Perl有相同的任務,看起來並不那麼容易。我不得不啓動第二個Perl腳本,它向用戶發起呼叫,播放聲音,請求DTMF確認,然後連接入站呼叫。此外,我使用ESL連接在Go中製作了一個原型,並且由於Go具有本地多線程,所以它變得更加容易。

這是Perl代碼,在解釋吉拉FS-6746:https://github.com/xlab1/freeswitch_secretary_bug

這是圍棋一個工作原型:https://github.com/xlab1/go-fs-secretary-prototype

2

你可以在你不需要的dialplan.xml做到這一點Lua中。 在上下文發生這樣的事情在dialplan.xml:

<extension name="call"> 
 
     <condition field="destination_number" expression=".*">  
 
      <action application="answer"/> 
 
     \t <action application="playback" data="/usr/local/freeswitch/conf/yourSoundHere.wav"/> 
 
      <action application="bridge" data="user/${destination_number}"/> 
 
      <action application="answer"/> 
 
     </condition> 
 
</extension>

注意,表達式使用正則表達式,那麼*會匹配所調用的任何數量,因此對於每一個調用它在打電話給用戶之前會播放wav的聲音。

+0

@Razormind,如果這回答你的問題,然後點擊小複選標記,在左邊將其標記爲接受的答案。 – ArthurG 2018-01-09 16:36:00