2014-10-16 403 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