平台对接时调用smarteye WEB SDK开发时遇到的常见问题FAQ full
一、环境准备
安装平台, 下载 smarteye server
二、开发前准备
开发前需要先获取对接的身份认证信息(AppId/AppKey), 平台会通过(AppId/AppKey)认证方式来验证请求发送者的身份。
AppId和AppKey在安装后平台的运管中心中创建,如下图。
三、对接开发
1. token生成
token有效期可在运管中心中设置,login接口回复中有有效期。所有获取token的接口,都会同时告诉对方token有效期,失效前要通过刷新token接口,更新有效期。
示例(伪代码
):
2. 发送请求
发送请求前, 设置Headers中的Authorization值为上述中获取的token
附录
golang示例
java
在Iframe中集成WebApp页面遇到的问题
- iframe中跨域页面无法写入cookie,导致依赖cookie传递token的接口失效;目前webapp中全部接口已经在url中携带token。参考MDN Cookie Security
- iframe中访问麦克风需要向iframe标签添加allow属性,否则iframe中页面无法访问。
语法:
Permissions-Policy:<directive> <allowlist>
allow='Permissions-Policy'示例
参考文档
Deprecating Permissions in Cross-Origin Iframes
MDN Permissions-Policy
服务器部署到线上后如何解决跨域问题
smarteye server服务器默认不支持跨域;可能需要配置下:http://wiki.besovideo.com:7788/zh/smarteye/servere/common-problem
运管中心->系统维护->参数配置: bvnginx-x 配置中添加
免登录跳转地址格式
https://smarteye.besovideo.com/client/app/#/login?&user=test&password=123&device=PU_22060310
device参数用来指示跳转到对应的设备详情界面,如果不填,会跳转到登录后的首页。
- 使用token跳转:
好处:跳转时不会泄漏密码。
- 第三方平台不调用SmartEye登录接口,通过appid和key获取token。
参考第三方平台对接e接口说明
@besovideo/webrtc-player
https://www.npmjs.com/package/@besovideo/webrtc-player
webrtc调用的是浏览器的接口,参考MDN webrtc连接建立过程
其中创建offer接口就是创建SDP。
调用webrtc接口,调用视频播放,样式错乱,视频控件不受样式控制,div使用的是Demo里的
解答:没有引入播放组件的css
多源视频融合通信可视指挥调度平台VMS/smarteye概述,https://www.besovideo.com/detail?t=1&i=240
多源视频融合平台VMS/smarteye,免费的GB28181 server, 免费的RTMP推流server,RTSP server,车载机部标JT808,JT1078服务器、标准SIP服务器, https://www.besovideo.com/detail?t=2&i=1321
全面支持国产信创系统,在linux(麒麟、统信等信创系统)服务器上安装smarteye server的操作说明, https://www.besovideo.com/detail?t=1&i=248
关于融合通信~可视指挥调度平台VMS/smarteye的说明,https://www.besovideo.com/detail?t=1&i=304