上一节说了Jitsi会议的基本安装,现在我们希望别人用手机打入会议,或者在会议里面去呼叫某个人的手机号码。

那么我们需要安装jigasi,这个东西相当于一个SIP的网关,先说一下我们的结构

JitsiMeet------Jigasi---------Freeswitch(IVR)---------(E1)---------ChinaTelecom

也就是服务器安装了Jigasi网关,网关注册到Freeswitch这个SIP服务器,而我们的SIP服务器有两个作用,一个是自动话务台的功能,如果输入特定的房间号码,才将外部呼叫转入相应的Jitsi会议。另一个功能是通过E1线路和中国电信的PSTN对接。

准备工作:

1,中国电信的线路和Freeswitch对接。(这个是Freeswtich相关的知识,这里先不说)

2,在Freeswitch上面建一个SIP账号: 1111@192.168.0.1   密码:1234  (192.168.0.1是Freeswitch的地址)

其实在freeswitch的directory目录下面就有默认的账号,用里面的就好,最好改改密码。

3,  Freeswitch里面5060端口是针对注册用户,5080端口针对非注册用户。所以在dialplan的default.xml文件里面增加下面拨号计划

<extension name="Jitsi Meet">
   <condition field="destination_number" expression="^(36\d{8})$">
    <action application="export" data="dialed_extension=$1"/>
    <action application="set" data="ringback=${us-ring}"/>
    <action application="set" data="sip_h_Jitsi-Conference-Room=$1"/>
    <action application="set" data="call_timeout=30"/>
    <action application="set" data="hangup_after_bridge=true"/>
     <action application="bridge" data="{absolute_codec_string=OPUS}user/1111"/>
     </condition>
 </extension>

上面意思是说以36开头的10位数Jitsi会议, 比如会议名字为 3611111111,3612345678等。因为Jiasi网关是通过1111这个账号注册上来的,我们只需要呼叫1111就可以到达Jitsi。

但是多个Jitsi会议怎么区分,那就看    <action application="set" data="sip_h_Jitsi-Conference-Room=$1"/>  , 这里将Jitsi会议的名字写入了SDP当初,Jigasi根据SDP当中的sip_h_Jitsi-Conference-Room这个信息的变量,然后将呼叫转入不同的会议。(不需要疑虑多个不同会议的呼叫用一个账号,可以并发的)

4,上面的做法有两个问题,1就是不检查合法用户,也就是任何人拨打了会议的房间名字,就转入了相应的房间。2就是限制了会议使用数字名字,不能用字母。其实很好解决,就是房间名字用字母单词,设置一个识别用的PIN码。

例如房间名字是 “ATestMeeting” ,PIN码是“3612345678”。当然这个信息你要放到你自己的数据库里面,然后自己设计一个UI来预订会议(会议名字,会议PIN码,发起人,参与人,时间,发邮件通知等等),这些弄好后,在第三步当中使用lua脚本来控制,用户呼叫某个特定主机号码,然后送入LUA脚本,提示输入PIN码,然后根据用户的PIN码去查询对应的会议房间名字,然后向Jigasi发起呼叫的时候,将查询到的房间名放入sip_h_Jitsi-Conference-Room就可以了。

5,上面基本处理完了Freeswitch端的工作,然后安装Jigasi

apt-get -y install jigasi

安装过程当中要求填写账号密码 ,账号格式是1111@192.168.0.1   密码:1234

装完后再/etc/jitsi/jigasi/下面有两个文件,config更多负责呼出(如果Freeswitch给了1111这个用户权限),sip-communicator.properties更多负责呼入。

在sip-communicator.properties当中看下这几个地方是否设定,否则会有一些奇怪的问题。

org.jitsi.jigasi.ENABLE_SIP=true

net.java.sip.communicator.service.gui.ALWAYS_TRUST_MODE_ENABLED=true

6,上面的配置基本能让你的电话能打进打出了。

但Jigasi还负责实时的语音转文字的功能,还有实行Jwt验证后,Jigasi无法直接和服务器通讯,所以以后还有一些额外的设置。

Jitsi视频会议部署(三):让电话打进来!相关推荐

  1. Jitsi视频会议部署(一):总结

    疫情期间,各种视频会议的使用量暴增.原本公司以前已经部署了Jitsi视频会议,但是因为Jitsi视频会议在wifi环境下的体验很差,当然这个也许是公司的wifi问题,毕竟在有线网络下面是没有问题的.后 ...

  2. Jitsi视频会议部署(四):视频会议中实时语音转字幕

    依赖于谷歌云的服务,将会议语音传给谷歌的 Google Cloud speech-to-text API,然后得到识别的文字,而且如果你说话停顿很小,可以自动修正上下文中的识别错误.文字会自动在屏幕上 ...

  3. Openmeetings—视频会议部署文档

    Openmeetings-视频会议部署文档 Linux丶晨星关注 0.3182019.11.15 19:48:49字数 1,714阅读 4,463 一.openmeeting简介 OpenMeetin ...

  4. Openstack安装与部署三:本地源配置

    Openstack安装与部署三:本地源配置 重启系统后,那么首先重新挂载光盘镜像 #mkdir -p /data/centos #mount /dev/cdrom /media/cdrom #cd / ...

  5. 史上最快的内网视频会议部署方案-turbomeeting视频会议系统

    之前的文章有提到过,市面上用电脑安装视频会议软件.手机安装视频会议软件来开会的"软视频会议系统"主要是以租赁的形式提供给用户使用,很多优秀的软件甚至只需要付费6000K就可以获得5 ...

  6. k8s集群部署 | 三节点(复用)高可用集群过程参考

    文章目录 1. kubeadm 部署三节点(复用)高可用 k8s 集群 1.1 环境规划阶段 1.1.1 实验架构图 1.1.2 系统版本说明 1.1.3 环境基本信息 1.1.4 k8s 网段划分 ...

  7. k8s搭建部署--三个节点服务器(超详细)

    目录 k8s搭建部署--三个节点服务器 docker环境准备 安装kubeadm,kubelet和kubectl Centos添加kubernetes YUM软件源 ubuntu修改源 master主 ...

  8. 【OpenVINO+paddle】覆盖300多种飞桨算法-PPHub+PP2ONNX+IR部署三步走

    [OpenVINO+paddle]覆盖300多种飞桨算法-PPHub+PP2ONNX+IR部署三步走 这篇博客我提供了一个全新的openvino部署思路,并且通过这个思路您可以直接调用300多种飞桨算 ...

  9. Openmeeting—视频会议部署文档

    Openmeetings-开源视频会议测试环境部署 文章目录 Openmeetings-开源视频会议测试环境部署 一.openmeeting简介 二.部署流程 1. 安装 Java环境 MySQL I ...

最新文章

  1. R语言构建ElasticNet回归模型实战:基于mtcars数据集
  2. layui时间怎么设置年月日时分秒_layui-laydate时间日历控件使用方法详解
  3. ip rule,ip route,iptables 三者之间的关系
  4. AUTOSAR从入门到精通100讲(三十六)-AUTOSAR 通信服务两步走-CanSM概念-配置及代码分析
  5. python apscheduler执行_python apscheduler 每两小时执行一次
  6. BZOJ1050 [HAOI2006]旅行comf
  7. pulsar基础(六)——namespace的基本操作
  8. python隐式调用_c#隐式调用python_C#调用python脚本样例
  9. python其他字符转换为ascii码
  10. 网页Flash实现图片轮播特效
  11. 一句话理解青蛙跳台阶(C语言递归求解)每日一题
  12. MessageBox提示框自动关闭
  13. 谷歌code访问_Google Code-in任务和青少年奖励
  14. cpp enum enum class
  15. 第二章:图像基本操作 1-计算机眼中的图像
  16. vbs恶搞程序(超初级)
  17. 人工智能专业术语的个人理解与总结(ML、DL、RL)
  18. zigbee 笔记5
  19. 【SVM】支持向量机数学公式
  20. pycharm安装包失败

热门文章

  1. 极客时间 IT 20+ 张 各架构 高清技能图谱
  2. 机器学习中的无监督学习是什么?
  3. 安卓键盘加上数字_安卓键盘键值对照表
  4. 中国移动物联卡用户超2600万 目标2020年物联网收入规模达千亿
  5. 敏捷开发:一文了解影响地图和用户故事地图之间的那些事儿
  6. input光标位置设置至行末端
  7. 多约束条件求最优值matlab,[MATLAB数学相关] 请教,约束条件下多元函数最小值的求解...
  8. [概率统计]—中心极限定理
  9. 神经网络种类及应用领域,常用的神经网络有哪些
  10. Shardingsphere的分库分表+读写分离+分页条件查询