Security News
Fluent Assertions Faces Backlash After Abandoning Open Source Licensing
Fluent Assertions is facing backlash after dropping the Apache license for a commercial model, leaving users blindsided and questioning contributor rights.
[TOC]
connect 废弃回调 ,采用promise
connect 参数传参的方式变更,以及增加了userId
例:
gp.connect({
devId:"B2E84A45BDF8",
token:"FC85E15F7C5DCD7DC1D6127DC957307B",
userId:"MaYun1565854673256",
},"remoteVideo")
init增加cover,log参数
cover
: 默认false, 不支持自动播放的时候 , 为true时会存在一个点击的遮照 , 为false时,connect时会为其反回一个10052的错误码去自定义点击遮罩
log
: 默认false, 为true时可打印日志交互日志, 为false时,取消
isSupportRTC 是否支持webRTC
let res = gp.isSupportRTC;
{code:***, msg:***}
状态码说明:
code:0 支持webRTC
code:-1 不支持webRTC
兼容性问题
安全性
状态码说明
0#成功
-1#其它错误
---------------------------------------
1001x:初始化传参相关错误
10011#ws地址格式错误
10012#wss地址格式错误
10013#设置窗体失败,采用默认窗体
10014#缺少必填参数
10015#sdk实例化失败,缺少必填参数
---------------------------------------
1002x:设备相关错误
#10021#待定 (目前不存在该状态)
10022#设备不可用,未注册
10023#设备被占用
10024#设备离线,断开
10025#token校验失败
10026#OS类型未找到
---------------------------------------
1003x:连接相关错误
10031#信令未连接
10032#客户端与信令断开
10033#设备未连接
10034#连接超时,断开
10035#服务端视频流开关已关闭
---------------------------------------
1004x:监听日志状态码
10041#监听操作相关信息
10042#rtc相关信息,每20s更新一次
1005x:渲染相关状态码
10051#不支持自动播放
10052#加载画面失败,请联系码云code:10052
注释: 错误状态码可能后续会有更新
目前最新版本对浏览器支持情况如下:
平台 | chrome58+ | Safari 11+ | 微信浏览器 | QQ浏览器 | 360浏览器(最新) |
---|---|---|---|---|---|
Android | √ | × | √ | × | √ |
IOS | √ | √ | × | ? | ? |
macOS | × | × | × | × | × |
Windows | √ | × | × | × | × |
浏览器说明 :
加载SDK前,先引用 : https://webrtc.github.io/adapter/adapter-latest.js
调用环境 | 格式 | 地址 |
---|---|---|
browser | js文件 | http://www.288.com/sdk/js/gp.min.js |
node | npm包 | npm install mayun_sdk |
回调说明
{
code:0,
msg:"------------"
}
or
{
code:0,
data:[] / {} / "" / 12
msg:"------------"
}
brower 和 npm实例创建代码如下:
#brower
1. <script type="text/script" src="http://www.288.com/sdk/js/gp.min.js"></script>
2. let gp = new MaYun(options,,fnSuc,fnErr);
#npm
1. npm install mayun_sdk
2. import MaYun from 'mayun_sdk';
3. let gp = new MaYun(options,fnSuc,fnErr);
let options = {
ws:`http下的信令地址` //http下必填
wss:`https下的信令地址` //https下必填
iceServers:{
stun:{
uri:"stun:p2p地址",
},
turn_udp:{
uri:"turn:转发地址?transport=udp",
username:"demo",
credential:"123456"
},
turn_tcp:{
uri:"turn:转发地址?transport=tcp",
username:"demo",
credential:"123456"
}
}, //必填
timeout:20*1000 //连接超时时间, 非必填 默认30*1000
screen:{
width:720
height:360
},
log:true | false {默认: false} //内部日志的打印
cover:true | false {默认:false} //如有不支持自动播放,true会有一个遮照来点击播放, false会为你返回一个10051错误码,自己定义遮照点击处理
}
/*
- ws : http下的信令连接
- wss : https下的信令连接
- iceServers : 转发、p2p服务器地址配置
- screen : 窗体大小 比例16:9
*/
fnSuc 参数
状态码 | 说明 |
---|---|
0 | SDK实例初始化成功 ,可能会出现10013状态 |
10013 | 设置窗体失败,采用默认窗体 该状态会出现0状态 |
10014 | 缺少必填参数 |
isSupportRTC- 是否支持webRTC
let res = gp.isSupportRTC;
/**
** res {code:***, msg:***} 状态码说明:
code:0 支持webRTC
code:-1 不支持webRTC
*/
connect - 连接云设备
/*
* 连接云设备
* @param options 连接所需要的参数
* @param ele[string] 节点id
* @returns {Promise<void>}
*/
#推荐
gp.connect(options,ele).then(data => {
/**
data状态码说明:
0 - 连接成功
10014 - 缺少必填参数
10015 - sdk实例化失败,缺少必填参数
10021 - 设备被占用,连接失败
10022 - 设备不可用,未注册
10025 - token校验失败
10031 - 信令未连接
10034 - 连接超时,断开
*/
}).catch(err => {
...
})
或
gp.connect(devId,token,ele,success,error) //遗弃
--------------options参数介绍begin-----------------
# devId(String) - 云设备ID
# token(String) - token校验
# userId(String) - 连接的用户ID
例: {
devId:'B2E84A45BDF8',
token:'A37D6DBFCDBB4DC2C97C83E4A98EEED8',
userId:'MaYun1565840775686'
}
---------------------end----------------------------
onServiceStatus
/*
* 监听云设备是否断开
* @param event[json] 状态消息
*/
gp.onServiceStatus(event => {
console.log("onStatus --- ", event);
});
状态码 | 说明 |
---|---|
10024 | 设备离线,断开 (2s可做连接操作,) - 重要 |
10032 | web客户端与信令断开 |
10035 | 服务端视频流开关已关闭 - SDK会自动断开视频流 |
10041 | 操作相关信息 - 目前无实际作用,只是查看相关操作信息 |
10042 | rtc相关信息,每20s更新一次(无实际作用,辅助日志) |
{
code: 10041
data: {type: "down", dot: 1, mouses: [{x: 195, y: 83.5}]}
msg: "操作成功"
}
disconnect
gp.disconnect().then(data => {
/**
data状态码说明
0 - 断开成功
*/
});
type - 按键类型 String
back
: 返回键
home
: home键 {功能禁用}
menu
: menu键 {功能禁用}
volume_up
: 音量增加
volume_down
: 音量减少
gp.onKeys(type,success,error);
# type(String) - 按键类型
# success(fun) - 操作成功回调
# error(fun) - 操作失败回调
gp.onKeysBack(success,error);
# success(fun) - 操作Back成功回调
# error(fun) - 操作Back失败回调
gp.onKeysVolAdd(success,error);
# success(fun) - 操作Back成功回调
# error(fun) - 操作Back失败回调
gp.onKeysVolReduce(success,error);
# success(fun) - 操作Back成功回调
# error(fun) - 操作Back失败回调
暂未开放
gp.onKeysHome(success,error);
// success(fun) - 操作Back成功回调
// error(fun) - 操作Back失败回调
暂未开放
gp.onKeysMenu(success,error);
// success(fun) - 操作Back成功回调
// error(fun) - 操作Back失败回调
修复加载连接,会出现坐标不正确的问题
坐标计算调整 16:9 调整为 640:368 (协议包1.2.2.111以上版本)
FAQs
[TOC]
The npm package mayun_sdk receives a total of 10 weekly downloads. As such, mayun_sdk popularity was classified as not popular.
We found that mayun_sdk demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Fluent Assertions is facing backlash after dropping the Apache license for a commercial model, leaving users blindsided and questioning contributor rights.
Research
Security News
Socket researchers uncover the risks of a malicious Python package targeting Discord developers.
Security News
The UK is proposing a bold ban on ransomware payments by public entities to disrupt cybercrime, protect critical services, and lead global cybersecurity efforts.