1.说明
freeswitch mod_verto提供了一个基于webrtc的js模块,该模块可以通过网页拨打电话、开视频会议等
环境: 基于阿里云debian8 安装 该模块需要https 最好是基于外网服务器安装
体验地址在http://blog.csdn.net/java_lilin/article/details/78391819有提到
2. 由于要视频所以要编译源码的mod_av模块
命令:
wget -O - https://files.freeswitch.org/repo/deb/debian/freeswitch_archive_g0.pub | apt-key add -
echo "deb http://files.freeswitch.org/repo/deb/freeswitch-1.6/ jessie main" > /etc/apt/sources.list.d/freeswitch.list
echo "deb http://files.freeswitch.org/repo/deb/debian-unstable/ jessie main" >> /etc/apt/sources.list.d/freeswitch.list
apt-get update
apt-get install -y --force-yes freeswitch-video-deps-most
Cd /opt
git clone https://freeswitch.org/stash/scm/fs/freeswitch.git freeswitch
Cd freeswitch
./bootstrap.sh -j
Vim modules.conf 去掉mod_av 前面的#
./configure --enable-core-pgsql-support
Make
make install
make hd-sounds-install make hd-moh-install
make samples
官网安装参考地址https://freeswitch.org/confluence/display/FREESWITCH/Debian+8+Jessie
3. 安装完成后默认路径在/usr/local/freeswitch
Cd /usr/local/freeswitch
添加视频编码
Vim conf/vars.xml
如果是运行环境 最好修改下sip的默认端口5060 5061 5080 5081防被攻击
Cd /conf/sip_profiles 目录去掉3个xx--ipv6的相关信息
external-ipv6_bak external-ipv6.xmlbak internal-ipv6.xmlbak我直接加了个后缀 好像是阿里云不支持ip6运行报错
Cd /usr/local/freeswitch
Vim conf/autoload_configs/modules.conf.xml 打开
的注释
4. 启动
Cd /usr/local/freeswitch
./bin/freeswitch
如果看到(FreeSWITCH Version 1.9.0+git~20180109T214449Z~7f9e6f3e4b~64bit (git 7f9e6f3 2018-01-09 21:44:49Z 64bit)
)类似的证明没错
输入命令shutdown停止freeswitch
5. Cd /opt/freeswitch/html5/verto 目录下有个video_demo 和verto_communicator
两个目录的例子都是基于verto.js写的 官网地址http://evoluxbr.github.io/verto-docs/
6. 现在配置video_demo (verto_communicator一样 写的复杂一些 原理一样)
安装apt-get install nignx
把 video_demo copy到/var/www下
Cd /usr/local/freeswtich 下
Vim conf/directory/default.xml
..打开下面的
Vim conf/autoload_configs/conference.conf.xml
搜索打开
Vim conf/autoload_configs/verto.conf.xml
在
。。。。。里面加入 mod_verto 就成了一个http服务器了
7. Https证书申请 阿里有免费的 参考地址https://www.cnblogs.com/lxf1117/p/6650647.html
获取后有xx.pem 、xx.key
Nginx配置
server {
listen 443;
server_name www.xxx.com;
ssl on;
ssl_certificate /etc/nginx/cert/xx.pem;
ssl_certificate_key /etc/nginx/cert/xx.key;
ssl_session_timeout 5m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
location / {
root /var/www/video_demo;
index index.html;
}
}
替换freeswitch默认的pem
用命令cat xx.pem xx.key > wss.pem 生成后替换掉/usr/local/freeswitch/certs下的wss.pem 两边证书一致
重启nginx freeswitch
nginx -s stop
nginx
Cd /usr/local/freeswitch
./bin/freeswitch
现在可以访问域名来访问改demo
效果和https://cantina.freeswitch.org/verto/index.html一样
以上是会议呼入
默认没有管理权限的 需要配置打开
停止fs
Vim conf/diaplan/defaul.xml
找到
重启fs
重启呼入3500后以上地方有所变化可操控会议
当然也可以通过sip电话和网页进行通话和视频
分享桌面插件需要下载一个screen capturing google 浏览器插件就好了
如果你想页面好看可以参考https://blog.csdn.net/Java_lilin/article/details/79975066