首页 > 学院 > 开发设计 > 正文

15.其他技巧与实例

2019-11-06 08:54:19
字体:
来源:转载
供稿:网友

Freeswitch功能非常多, 还有一些常用功能 企业常用的电话转接, 代接等 压力测试, 安全等

1.转接和代接

来电转接分 盲转(Blind Transfer) 协商转(Attended Transfer)盲转: 将来电直接转到某一分机, 用于电话已经接听的情况 A呼叫B, B接听 A与B通话, A要求转C, B转接到C C开始振铃, B挂断 C接听, A与C通话 默认Dialplan的Local_extensions <action application="bind_meta_app" data="1 b s execute_extension::dx xml features" /> 有电话打入后,如果是最终路由到一个内部分机, 就执行这一行,来话是a-leg, 还没有b-leg bind_meta_app,会在本次通话上绑定参数中的"1",后续由"*1"激活, b表示绑定到b-leg,s表示same,在哪条腿收到按键就在哪条腿上执行 execute_extension表示在Dialplan找extension去执行,最终执行bridge(user/B),A与B桥接并开始通话 answer保证电话时应答状态, read表示等待用户按键,等待用户输入分机号,输入后, B开始拨号 is_transfer判断B输入的号是不是合法,如果是执行transfer 进行转移 C开始振铃, 如果C接听, A就与C通话, A被转走, B就自己挂断协商转: 如果C长时间不应答, 则转接失败, A需要重新呼叫B转接 A与B通话中, B转接C , A播放等待音乐, 如果C呼叫失败, B仍可与A通话, C长时间不应答, B可以取消呼叫 如果C接通后, B与C通话, B询问C是否愿意接听, 如果C不愿意则C挂机, B与A继续通话, 如果C接受则B挂机 如果B不挂机, 按3则形成3方通话, B还可以随时与A, 与C通话代接 A电话响铃, A不在座位, B代替A接听电话 当分机有振铃, 另外的话机直接按866就能接听, 同时响铃结束 拨**1001, 接听正在振铃的1001分机上电话

2.共享线路呈现

在自己话机上监视其他话机的状态, 知道另一个电话是否处于忙或闲的状态有人想打秘书电话找老板, 秘书转播老板电话, 恰好老板正在占线, 就导致转接失败, 如果秘书事前知道老板电话在忙, 就可以判断是否要转接, 或告诉用户先等等

3.使用组播功能做网络广播

拿起电话拨打一个号码, 就可以对一大群人喊话, 广播功能可以大大提高工作效率广播也可以用会议实现, 简单发起N路通话加入一个会议也能起到广播的效果 但建立N路通话消耗太多网络资源, 也无法保证对方即使接听, 影响信息送达最经济的实现方式: 组播(Multicast),只向组播地址发送一个RTP流, 监听该组播地址的所有主机都能收到 esf_page_group有三个参数: 组播地址, 默认为224.168.168.168 端口号, 默认为35467 控制端口号,默认为6001在Freeswitch默认配置中, 拨打号码7243就直接向该地址发送组播 <extension name="rtp_multicast_page"> <condition field="destination_number" exPRession="^pagegroups$|^7243$"> <action application="answer"/> <action application="esf_page_group"/> </condition> <extension>如果你想发送到其他地址, 可以配置相关参数,如下配置可以将RTP包发送到组播地址224.0.0.100 <action application="esf_page_group" data="esf_page_group 224.0.0.100 34567 6001"/> 与普通的ip地址不同, 组播需要配置组播地址, 组播地址从224.0.0.0到239.255.255.255, 实际用到组播的业务很少, 在有些系统需要配置组播路由, 在linux的eth0配置组播路由: ip route add 224.0.0.0/4 dev etho src 192.168.5.2
上一篇:991.保留

下一篇:12.高级功能与配置实例

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表