2020-12-16

1 篇文章 0 订阅
1 篇文章 0 订阅

opensips+freeswitch集群

本文目的:献给新入坑的小伙伴们,希望对你们有帮助

本方案实现后的大体架构如下:

特点描述:

  1. opensips处理用户注册
  2. 每个freeswitch都需要有公网ip能访问
  3. 一个javaesl可以连接多个freeswitch,也可一个esl连接一个freeswitch,esl需要共享数据库,freeswitch不需要共享数据库
  4. 本架构未实现故障转移真正的高可用,只能算负载均衡

前期准备:

  1. sip协议先了解:https://www.w3cschool.cn/session_initiation_protocol/
  2. 至少看一遍freeswitch权威指南
  3. 至少看一遍opensips官方文档以下内容,然后使用哪个模块就去看哪个模块的文档
    1. Script syntax
    2. Global parameters
    3. Types of routes
    4. Script operators
    5. Script statements
    6. Core functions
    7. Core variables
    8. Scripting flags
    9. Transformations
    10. Asynchronous statements
  4. 看opensips文档英文有困难的请移步:https://www.yuque.com/wangdd/opensips

重要的事情说三遍:

  1. 请完成前期准备内容
  2. 请完成前期准备内容
  3. 请完成前期准备内容

软件安装:

  1. freeswitch:https://freeswitch.org/confluence/display/FREESWITCH/CentOS+7+and+RHEL+7
  2. opensip:https://www.opensips.org/Documentation/Manual-3-1

要点:

  1. freeswitch选择走哪个opensips需要在呼叫时设置sip_route_uri=opensips的地址,复杂的业务离不开 freeswitch的esl

  2. 使用opensips客户端根据自己的场景选择模块生成opensips.cfg

    1. 配置除了自动生成的模块如无以下模块,自己手动添加

      1. 用户注册模块:registrar,处理用户注册,配合auth_db实现数据库管理用户名密码

      2. 负载均衡模块:load_balancer,将呼入电话路由到freeswtich,路由中使用lb_start_or_next函数

      3. 呼出到客户端使用lookup函数

如果如你仔细阅读了前期准备中的内容,我想现在上图架构可以轻松搭建了。

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值