freeswitch mod_verto
提供了一个基于
webrtc
的
js
模块,该模块可以通过网页拨打电话、开视频会议等
环境: 基于阿里云
debian8
安装 该模块需要
https
最好是基于外网服务器安装
体验地址在
http://blog.csdn.net/java_lilin/article/details/78391819
有提到
2、由于要视频所以要编译源码的mod_av模块
首先确保你安装了
freeswitch
文件
vim modules.conf
# 去掉mod_av 前面的#
make install mod_verto
3、安装完成后默认路径在/usr/local/freeswitch
cd /usr/local/freeswitch
添加视频编码
Vim conf/vars.xml
# 修改为如下配置
<X-PRE-PROCESS cmd="set" data="global_codec_prefs=G722,PCMU,PCMA,GSM,VP8,H263,H264"/>
<X-PRE-PROCESS cmd="set" data="outbound_codec_prefs=PCMU,PCMA,GSM,VP8,H263,H264"/>
如果是运行环境 最好修改下
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
# 取消如下注释<load module="mod_av"/>,让他启动自动加载
4、查看video_demo和verto_communicator
cd /opt/freeswitch/html5/verto
两个目录的例子都是基于
verto.js
写的 官网地址http://evoluxbr.github.io/verto-docs/
5、现在配置video_demo (verto_communicator一样,写的复杂一些原理一样)
安装
apt-get install nignx
,把
video_demo
复制到
/var/www
下。
通过在
directory/default.xml
中输入以下行,可以将
Verto
信令的权限授予整个用户目录。
<domain name="$${domain}">
<params>
# 取消掉如下代码注视
<param name="jsonrpc-allowed-methods" value="verto"/>
<param name="jsonrpc-allowed-event-channels" value="demo,conference,presence"/>
</params>
您可以在用户目录配置文件中基于每个用户指定verto-context和verto-dialplan
<include>
<user id="1000">
<params>
<param name="password" value="$${default_password}"/>
<param name="vm-password" value="1000"/>
<param name="verto-context" value="public"/>
<param name="verto-dialplan" value="XML"/>
</params>
</user>
</include>
要启用提供会议事件近实时更新的
livearray
功能,请将以下内容添加到
conf/autoload_configs/conference.conf.xml
<!-- Allow live array sync for Verto -->
# 取消掉如下代码注视
<param name="conference-flags" value="livearray-sync"/>
接下来修改
conf/autoload_configs/verto.conf.xml
并在
default-v4
中加入配置文件
<profile name="default-v4">
# 里面加入 mod_verto 就成了一个http服务器了
<vhosts>
<vhost domain="localhost">
<param name="alias" value="seven.local freeswitch.org"/>
<param name="root" value="/var/www/video_demo"/>
<param name="index" value="index.html"/>
</vhost>
</vhosts>
</profile>
6、Https证书申请
可以申请阿里有免费的证书,参考地址:
https://www.cnblogs.com/lxf1117/p/6650647.html
下载后获取
xx.pem 、xx.key
,然后获取
Nginx
配置
server {
listen 443;
server_name www.xxx.com;
location / {
root /var/www/video_demo;
index index.html;
ssl on;
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;
ssl_certificate /etc/nginx/cert/xx.pem;
ssl_certificate_key /etc/nginx/cert/xx.key;
替换freeswitch默认的pem
用cat命令合并两个文件:
cat xx.pem xx.key > wss.pem
生成后替换掉/usr/local/freeswitch/certs下的wss.pem,保持两边证书一致,然后重启nginx freeswitch
# 启动nginx
sudo service nginx start
# 启动freeswitch
freeswitch
现在可以访问域名来访问改demo,效果和https://cantina.freeswitch.org/verto/index.html一样
常见问题: freeswitch webrtc视频/语音模块mod_verto常见问题汇总
Pytorch是Facebook的AI研究团队发布了一个Python工具包,是Python优先的深度学习框架。作为numpy的替代品;使用强大的GPU能力,提供最大的灵活性和速度,实现了机器学习框架Torch在Python语言环境的执行,基于python且具备强大GPU加速的张量和动态神经网络。
pytorch中文文档
pytorch官方文档
pytorch中文网