1. 程式人生 > >freeswitch實現監聽、三方通話的兩種方法

freeswitch實現監聽、三方通話的兩種方法

首先是使用freeswitch自帶的監聽和三方通話的功能,

模組:mod_dptools: eavesdrop

      mod_dptools: three_way

使用方法是針對已經建立通話的雙方的其中之一的UUID,傳送命令或者配置撥號計劃來使用,例如:

已經通話的雙方UUID是:

9d385df2-e8ce-4c06-a8d9-ab04477a5d27、91b54a88-5f40-4ded-a82a-9b6e7be36ac1

監聽:expand originate 操作者contact&eavesdrop(9d385df2-e8ce-4c06-a8d9-ab04477a5d27)

操作者是新呼叫的,在呼叫contact之前可以新增普通呼叫的一些引數。

被監聽方可新增的引數

<actionapplication="set"data="eavesdrop_require_group=<groupID>"/>

<actionapplication="set" data="eavesdrop_indicate_failed=/sounds/failed.wav"/>         <!-- used in 'eavesdrop all' case-->

<actionapplication="set"data="eavesdrop_indicate_new=/sounds/new_chan_announce.wav"/><!-- used in 'eavesdrop all' case -->

<actionapplication="set"data="eavesdrop_indicate_idle=/sounds/idle.wav"/>             <!-- used in 'eavesdrop all'case -->

<actionapplication="set" data="eavesdrop_enable_dtmf=true"/><!-- false means no commands during eavesdrop -->

<actionapplication="set" data="eavesdrop_bridge_aleg=true"/><!-- enables listen to aleg -->

<actionapplication="set" data="eavesdrop_bridge_bleg=true"/><!-- enables listen to bleg -->

<actionapplication="set" data="eavesdrop_whisper_aleg=true"/><!-- enables whisper mode in aleg -->

<actionapplication="set" data="eavesdrop_whisper_bleg=true"/><!-- enables whisper mode in bleg -->

三方通話:expand originate 操作者contact& three_way(9d385df2-e8ce-4c06-a8d9-ab04477a5d27)

另外一種方法,是利用多人會議功能來實現監聽和三方通話

具體命令就不貼了,思路就是已經有普通的通話雙方,操作者發起監聽,首先呼通操作者自己,並將自己拉進會議中,使用conference來進入會議,之後設定自己為禁言,這些操作成功之後,再將原有通話雙方分別拉進會議,其實就是三人的會議,但是發起監聽方被禁言,這樣就形成了原有雙方聽不到發起監聽者的聲音。三方通話的時候只需要不禁言發起者就可以了,其他相同。 ---------------------  作者:大頭菜餡饅頭  來源:CSDN  原文:https://blog.csdn.net/jiaojian8063868/article/details/78967803  版權宣告:本文為博主原創文章,轉載請附上博文連結!