版本号major.minor.patch.temp
具体规则如下:
- major:主版本号,如有重大版本重构则该字段递增,通常各主版本间接口不兼容。
- minor:次版本号,各次版本号间接口保持兼容,如有接口新增或优化则该字段递增。
- patch:修订版本号,如有功能改善或缺陷修复则该字段递增。
- temp:临时版本号, 通常是内部测试或紧急修复的版本。这个版本号可以根据需要进行更新。
注意:
- 建议您及时更新至最新版本,以便获得更好的产品稳定性及在线支持。
- 版本升级注意事项请参见:升级指引。
Version 3.2.6.8
Improvement 白板相关逻辑优化
-
创建白板接口user.createBoard()在服务器版本为<3.1.7时,内部二方法之间做了延时处理,已保证订阅端收到add及share的PDU时序不乱。
-
更新白板接口user.updateBoard(board) 改成异步方法user.updateBoard(board).then(function(){})。
-
删除白板接口user.removeBoardById(boardId) 改成异步方法user.removeBoardById(boardId).then(function(){})。
-
关闭共享白板接口user.closeBoardById(boardId) 改成异步方法user.closeBoardById(boardId).then(function(){})。
-
共享白板接口user.shareBoardById(boardId) 改成异步方法user.shareBoardById(boardId).then(function(){})。
-
新提供布尔型方法属性room.cleanupBoardByReJoinConnected, 用于确认应用层在重新加会成功后需不需要清除原来的白板相关界面内容。
function onConnectionStatus(status) { if(status == app.data.getAvdSDK.Enum.ConnectionStatus.reJoinConnected) { //重新加会成功后,应用层根据该字段确认需要清理白板相关界面内容 if(app.data.getAvdSDK.room.cleanupBoardByReJoinConnected){ //todo 原有的白板内容界面清场 } } }
Bug Fixed
- 关于二次重新加会之间间隔(默认时长3秒),修复在重新加会超时时长(默认60秒)超时之前也生效。
Version 3.2.6.7
Feature
- 提供接口avdEngine.setCustomerTokenEnabled(true),设置启用客户自己的认证token,且认证token在协议请求头中传递。
Version 3.2.6.6
Feature
- 新增二次重新加会之间设置默认间隔时长3秒,以免太频繁引发服务器的黑名单机制。且新增接口room.setRejoinInterval(rejoinInterval)设置自定义的间隔时长。
Improvement
- 重连&重新加会逻辑重构优化。
Version 3.2.6.5
Feature
- 新增白板授权校验功能,因客户端与服务器端都有新增PDU,客户端有做兼容老服务器版本。应用层在调用user.createBoard时,该方法变成异步方法。
Version 3.2.6.4
Feature
- 修改sdk包名。
Improvement
- 中性化操作
- 优化打包后的jsdoc文档
Version 3.2.6.3
Improvement
- 房间重连的逻辑重构。
Version 3.2.6.2
Feature
- 添加屏幕音频类和订阅取消订阅相关逻辑。
Version 3.2.6.1
Improvement
- 优化返回应用层的 error message, 翻译为英文。
Version 3.2.6.0
Bug Fixed
- 加入房间连接websocket重试的逻辑修改, 修复websocket第一次连接时间戳不能初始化导致直接跳出重试的逻辑。
Version 3.2.5.9
Feature
- 房间级别添加状态属性roomJoinState
- 新增设置websocket超时时长和连接次数的接口setConnectNumAndTimeoutForSocket
Improvement
-
加入房间连接websocket逻辑增加出错时根据应用层设置的超时时长和次数进行重连的逻辑
Version 3.2.5.8
Improvement
- serverinfo与get_mcu 二个restful接口逻辑合并(取消调用get_mcu),但需要兼容老版本的服务器.另打印服务器版本相关信息
Version 3.2.5.7
Improvement
-
websocket连接异常时将错误信息抛给应用层
Version 3.2.5.6
Bug Fixed
- socketManager收到白板时new Board内参数顺序和web sdk保持一致,修复收到ios和android白板时outputWidth变成description的问题
Version 3.2.5.5
Feature
- room对象上新增接口joinEfficient(serverURI, accessToken, userId, userName, userData, password),用于合并avdEngine.init()和room.join()的功能,减少应用层异步调用的次数。
Improvement
-
白板批注初始化传入参数类型变更,之前只需传入canvas-id,改为需要传入CanvasContext对象,原因:
微信从基础库2.9.0版本开始已删除wx.createCanvasContext接口,只能通过wx.createSelectorQuery()查询canvas元素并获取context对象,例如:
wx.createSelectorQuery().select('#myCanvas').context(function(res){
// 节点对应的 Context 对象。如:选中的节点是 canvas 组件,那么此处即返回 CanvasContext 对象
annotation.init(res.context);
}).exec()
-
SDK内UUID封装成内部模块,不再依赖外部引入
Bug Fixed
- 因网络原因重新加会后,原video对象的ownerId属性为空导致重新加会的自动订阅取不到相应的用户,引发video的对象不会触发Enum.UserCallback.subscrible_camera_result回调,应用层可能取到的拉流地址为空
Version 3.2.5.4
Improvement
- 操作系统版本及手机型号等信息上报给服务器
Version 3.2.5.3
Feature
-
新增媒体流推送保活功能
* 新增媒体流推送失败通知: app.data.getAvdSDK.room.addCallback(app.data.getAvdSDK.Enum.RoomCallback.stream_keep_alive_timeout_notify, this.onStreamKeepAliveTimeoutNotify);
* 新增设置媒体流推送的保活时长(单位为毫秒),不设置默认为15000毫秒:app.data.getAvdSDK.advEngine.setDefaultMediaPublishKeepAliveTime(keepAliveTime);
* 新增设置当前流推送的保活时长(单位为毫秒):
video.setPublishKeepAliveTime(keepAliveTime);
audio.setPublishKeepAliveTime(keepAliveTime);
screen.setPublishKeepAliveTime(keepAliveTime);
Version 3.2.5.2
Improvement
- 重新加会时,原应用层设置的视频流名称依然有效,不需要应用层再次设置
- 控制台日志打印逻辑重构,允许设置日志级别,见avdEngine.setLog(app.data.getAvdSDK.Enum.LogLevel.debug);
- 日志内容通过应用层提供的函数进行上报
Version 3.2.5.1
Feature
-
新增masterServer中实现removeBoardMsg
Version 3.2.5.0
Feature
- 新增加入房间时,SDK支持房间密码验证
Improvement
- 版本从1.3.2直接升到3.2.5.0的原因: 以前上报给服务器的版本号一直是写死的一个值3.2.0.0, 为了版本兼容而升到这么高的版本,后续上报给服务器的版本都会更新
Version 1.3.2
Feature
- 新增关于restful接口返回值的日志
Improvement
- ssrc的长度由5位改成10位
Bug Fixed
- restfulServer.js中去掉getMiniProgramAccessToken 及getMiniProgramwxacode, 否则会影响小程序发布审核失败.
Version 1.3.1
Improvement
- socketManager中onError,onClose事件逻辑优化
Bug Fixed
- 修复第一次重新加会失败后不再重新加会的问题
Version 1.3.0
Feature
- gulpfile.js中在执行task的任务上添加gulp.series方法以适配gulp4
Improvement
- annotation中添加undoArray及相关方法,调整批注撤销逻辑
-
socketManager中几个地方StreamStatus改成Enum.StreamStatus
Bug fixed
- 当A、B用户都在房间时,B用户网络不好重新加会,这时A收到812后离开房间,等B用户重新加会成功后room.getParticipants()中还能查到A用户信息
Version 1.2.9
Improvement
- messageManager中收到公聊和私聊getMessage内时间戳逻辑调整,使用服务器时间戳
Version 1.2.8
Improvement
- 白板清除的逻辑优化,之前的算法索引有问题导致可能删除不彻底
- 删除批注时添加到annotation2BoardId中逻辑改为从该map中删除
Version 1.2.7
Improvement
-
网络不好重新加会成功后,原共享的白板及相关批注等逻辑优化
1. 切换到鼠标状态原画笔还存在 2. 橡皮擦不能连续擦除 3. 关闭白板再重新打开,不能恢复之前没被擦掉的批注 4. 断线重连后,关闭再打开白板,之前的批注擦不掉
-
白板橡皮擦逻辑针对对号、错号、固定箭头判断区域做了增大处理
Version 1.2.6
Improvement
- 关闭房间回调及踢人回调等逻辑优化
- 橡皮擦由点击改为拖动擦除
Version 1.2.5
Feature
- 新增支持白板功能
Version 1.2.1
Feature
-
user对象新增二个接口:remotecmdMuteMicrophone(userId),remotecmdUnmuteMicrophone(userId)
-
支持微信小程序插件
-
从该SDK1.2.1版本开始,小程序应用层调用调整如下:
-
//avdSDK是引用小程序SDK的全局变量,请保证变量名不变,改成
getAvdSDK: null, //名字可以自定义
-
app.js中引入公司SDK,
-
var avdSDK = require('/lib/cn.tee3.wxavd1.2.0.js');
self.data.avdSDK.restfulServer = new avdSDK.RestfulServer();
self.data.avdSDK.avdEngine = new avdSDK.AVDEngine();
self.data.avdSDK.client = new avdSDK.Client();
self.data.avdSDK.signalClient = self.data.avdSDK.client;
self.data.avdSDK.Enum = avdSDK.Enum;
self.data.avdSDK.Util = avdSDK.Util;
改成
var avdSDK = require('./lib/cn.tee3.wxavd1.2.1.min.js');
var pluginStore = new avdSDK.PluginStore();
self.data.getAvdSDK = pluginStore.getAvdSDK();
-
-
app.js中 this.data.avdSDK 全改成this.data.getAvdSDK
-
pages中的所有js文件中,app.data.avdSDK 全改成 app.data.getAvdSDK
-
Version 1.2.0
Feature
- 新增回调onMediaPlayStartedNotify,onMediaPlayStopedNotify
Version 1.1.9
Feature
- 新增打开/关闭远端用户的音视频,同时接受被远端用户打开/关闭自己的音视频
Version 1.1.8
Feature
- 摄像头数据更改接口video.updateCameraData(level, description);
Version 1.1.7
Feature
-
mqtt中,client.login做了超时机制
- 方法出错,抛出的错误参数统一为:error.code, error.messag
Version 1.1.5
Feature
- 支持MQTT 信令
- lib/mqtt.min.js定制过,支持多webstocket连接:socketTask = wx.connectSocket({
Version 1.1.0
Feature
- proto/weichatPb/EventEmitter.js 新增了 delete方法
-
room.js 新增了 offCallback 方法
- 应用层新增一个全局的 taskId
Improvement
- 重复调用 addCallback 时候 使用的 orderId 删除了原有的随机数模式,变为 taskId递增方式。
- addCallback 的参数 后面加上orderId作为标识
- callback回调 成功,失败,或者超时的时候,调用 offCallback 删掉已经执行过的callback