freeswitch 两方通话过程中,按*3进入指定的会议

该博客介绍了如何配置freeswitch,以便在通话过程中,一方按*3键能将通话转移到一个指定的会议中。通过设置应用(application)、动作(action)、扩展(extension)和XML脚本来实现这一功能,包括接听、读取按键、执行扩展、转移呼叫等步骤。
os.execute("/usr/local/freeswitch/bin/fs_cli -x 'uuid_bridge " .. mainuuid .. " " .. uuid .. "'")
   uuid_transfer c8e77791-2425-4210-b3bf-57753f2b0771 intercept:f1e01f15-e228-40b5-8937-bc323778279d inline
  都转到一个临时会议 uuid_transfer 6d5246d1-6ebe-4dc7-ac79-bb00e7204073   conference:confzpj123401 inline

  在通话过程中收号<action application="set" data="bind_meta_key=*"/>  

<action application="bind_meta_app" data="1 b s execute_extension::dx XML features"/>
        <action application="bind_meta_app" data="2 b s record_session::$${base_dir}/recordings/${caller_id_number}.${strftime(%Y-%m-%d-%H-%M-%S)}.wav"/>
        <action application="bind_meta_app" data="3 b s execute_extension::cf XML features"/>
        <action application="set" data="ringback=${us-ring}"/>
        <action application="set" data="transfer_ringback=$${hold_music}"/>
        <action application="set" data="call_timeout=30"/>
        <action application="set" data="hangup_after_bridge=true"/>
        <action application="set" data="continue_on_fail=true"/>
        <action application="bridge" data="sofia/internal/8101@192.168.44.186:5060"/>

<!-- In call Transfer for phones without a transfer button -->
    <extension name="dx">
      <condition field="destination_number" expression="^dx$">
        <action application="answer"/>
        <action application="read" data="11 11 'tone_stream://%(10000,0,350,440)' digits 5000 #"/>
        <action application="execute_extension" data="is_transfer XML features"/>
      </condition>
    </extension>


    <extension name="is_transfer">
      <condition field="destination_number" expression="^is_transfer$"/>
      <condition field="${digits}" expression="^(\d+)$">
        <action application="transfer" data="-bleg ${digits} XML default"/>
        <anti-action application="eval" data="cancel transfer"/>
      </condition>
    </extension>


    <!-- Used to transfer both legs into a conference -->
    <extension name="cf">
      <condition field="destination_number" expression="^cf$">
        <action application="answer"/>
        <action application="transfer" data="-both 30${dialed_extension:2} XML default"/>
      </condition>
    </extension>

例如:在与8101通话过程中,8101按*3可以将双方都加入到会议中

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值