NIM SDK 开发版更新日志
更新时间: 2023/03/03 10:45:17
[9.9.0] - 2023-02-10
优化改进
-
规范
ondisconnect
提供的回调(NIMOnDisconnectResultOffline)的 code。- 主动断开,触发
ondisconnect
回调,code 为alreadyDisconnected
。 - 设置
reconnectAttempts
,重连次数达到最大触发ondisconnect
回调,code 为allAttemptsFailed
。 - 侦测断开网络,触发
ondisconnect
回调,code 为offlineListener
。
- 主动断开,触发
-
在
onClearServerHistoryMsgs
回调中新增ext
字段信息。 -
clearServerHistoryMsgsWithSync
接口新增isDeleteRoam
入参(是否删除漫游消息),默认为 true。 -
优化通过 s3 上传方式上传文件的内部逻辑。
问题修复
- 修复
onSessions
回调中,出现无消息空会话的问题。 - 修复多端登录场景下,其中一端通过
setCurrSession
接口清除置顶会话未读数后,另一端表现异常的问题。 - 修复单向删除消息后未读数未变更的问题。
- 修复其他已知问题。
[9.8.0] - 2022-12-27
优化改进
- 系统通知更新事件 onupdatesysmsg 提供 from 和 type 字段,分别表示系统通知发送方和系统通知的状态。
- 被拉黑方向拉黑方发出的消息体的服务端 ID 逻辑优化。
问题修复
- 修复登录时报
getNosOriginUrl failed
错误的异常。 - 修复登录时报
taskAfterSync syncDBDataPromise error
的异常。 - 修复
getCollects
接口lastId
、reverse
入参设置无效的问题。 - 修复
getThreadMsgs
接口endTime
入参设置无效的问题。 - 修复支付宝环境上传引起的
beginupload
提前终止上传代码失效的问题。 - 修复逻辑删除本地会话时,收到新消息后未读数没有在原来的基础上加 1 的问题。
- 修复逻辑删除本地会话引申出的问题,对本地会话为undefined的情况进行处理。
- 修复在 nodeJS 环境下引入SDK 时异常报错的问题。
- 修复长连接使用优先级顺序存在问题。
- 修复可信时间戳协议服务器下发了但是端测没解析的问题。
- 修复连接中途就销毁后数据上报报错的问题。
- 修复通过 NOS 上传文件时,由于未设置logger导致文件
Upload.onload
回调中打印日志失败的问题。
[9.6.4] - 2022-12-7
API 变更
API |
API 变更说明 |
---|---|
updateLocalSession |
新增入参 needNotify ,来控制是否触发更新会话的回调。若 needNotify 为 true ,触发onUpdateSessions 和 onUpdateSession 的回调;needNotify 为 false 则不触发。默认为 true 。 |
getQuickComments |
新增返回参数 scene ,来区分消息的会话类型。scene 对应的值有 p2p 、team 、superTeam 。 |
MessageInterface 模块下的消息发送相关接口 |
NIMBaseSendMsgOptions 新增属性 needUpdateSession ,表示发送消息时是否刷新远端的服务器会话列表。当发送消息时,设置 needUpdateSession 为 true ,接收者收到的消息的 needUpdateSession 也为 true ; needUpdateSession 为 false ,接收者收到的消息的 needUpdateSession 也为 false 。默认为 true 。 |
修复
修复删除消息后的报错问题。
[9.6.3] - 2022-10-27
新增特性
v9.6.3 的聊天室模块,新增根据标签(Tags)查询聊天室历史消息的功能,具体请参见根据标签查询历史消息。
新增事件
聊天室模块新增 onTagsUpdate
事件来监听聊天室标签的变更情况,回调包含变更后的标签信息。
API 新增
API |
API 说明 |
---|---|
getHistoryMsgsByTags |
通过聊天室标签(可多个)来检索聊天室历史消息 |
[9.6.1] - 2022-9-26
优化
- 优化断连的内部逻辑。
- 统一本地(local)操作相关接口的数据来源和内部逻辑。
[9.5.0] - 2022-8-29
优化
- 优化 LBS 策略。
- 修复发送消息返回 500 导致的本地异常问题。
[9.3.2] - 2022-8-22
修复海外地区偶现的发送语音消息和视频消息失败的问题。
[9.3.1] - 2022-8-9
修复多端登录场景下,在 Web 端调用deleteMsgSelfBatch
方法批量单向删除消息,在另一端未能触发回调事件通知用户的问题。
[9.3.0] - 2022-7-25
新增
初始化参数新增日志等级字段 logLevel
( 可选值为:debug、log、info、warn、error、off)。
设置对应的日志等级后,仅输出高于或等于对应等级的日志, off 则关闭所有日志,默认值 off。
优化
- 优化自动重连机制,实现国内外节点平滑迁移。
- 补充初始化实例的入参
reconnectionAttempts
(重连次数)的说明。
废弃
废弃 debug
参数,暂时保留功能,请及时调整。
[9.2.0]-2022-05-24
调用updateSuperTeam
方法可更新inviteMode
、updateCustomMode
、updateTeamMode
这三个权限。
[9.1.2]-2022-05-09
修复发现的问题,包括:
onSession
会抛出不完整 session 的兼容性问题。- 当不支持数据库,单向删除或撤回的消息恰好为最后一条消息时,
sessionSet
中对应 session 里仍存在lastMsg
的问题。 isTop
属性异常。
[9.1.1]-2022-04-26
修复聊天室接收到的空间消息体中没有携带坐标信息的问题。
[9.1.0]-2022-04-18
新增特性
客户端反垃圾词库存储在本地,获取时本地优先。
优化
优化消息漫游场景,避免重连时再次拉取全量漫游消息。
修复
修复遗留问题,包括:
- 多 Tab 标签页操作导致会话未读数异常
- 阿里系应用在安卓 HTML5 环境中上传文件不成功
- 初始化同步完成后,会话在
autoMarkRead:false
下lastMsg
计算错误 - 调用
updateMyInfo
方法时回调中返回的信息错误 setOptions
方法对参数中所有的函数类型的参数加上类型判断
9.0.1
新增
- 新增recallMsg(撤回消息),即将替换deleteMsg
- 新增deleteRoamingMsgBySession(删除该会话相关的漫游消息),即将替换掉deleteSession
修复
- 修复实例销毁时已绑定的监听事件未能完全移除的问题
- 因为机器人功能已下架所以下列api已删除
- getRobots
- getRobotList
- parseRbotTemplate
- sendRobotMsg
优化
- 压缩小程序平台包体积大小至 552 KB
- 优化实例销毁的流程,避免短时间内多次销毁可能会导致的异常
8.11.3
修复
- 修复 收到单聊消息没有标记已读,导致下次登录还会继续下发的问题
- 优化SDK结构,使用SDK不会与当前环境全量引入的babel-polyfill起冲突
8.11.2
修复
- 修复 某会话存在撤回消息时,初始化同步到离线消息,开发者收到的会话有两条的问题
8.11.1
修复
- 修复 API getSuperTeamMembersByAccounts 回调失效的问题
- 初始化入参的回调函数支持现在传 async 方法
8.11.0
新增
- 聊天室标签实时更新设置,见 chatroom.updateTags
- 聊天室定向消息,见 chatroom.sendText 的 toAccids 参数
- 聊天室匿名模式下支持鉴权 token,见 chatroom.getInstance 的 loginAuthType 和 loginExt 参数
- 资料反垃圾,涉及以下接口
- 更新聊天室信息chatroom.updateChatroom新增antiSpamBusinessId参数
- 更新自己在聊天室内的信息ChatroomFn.updateMyChatroomMemberInfo新增antiSpamBusinessId参数
- 发送文本消息nim.sendText新增antiSpamBusinessId参数
- 更新超大群信息nim.updateSuperTeam新增antiSpamBusinessId参数
- 创建群nim.createTeam新增antiSpamBusinessId参数
- 更新群nim.updateTeam新增antiSpamBusinessId参数
- 更新我的名片nim.updateMyInfo新增antiSpamBusinessId参数
8.10.0
新增
- 支持 aws s3 存储。见融合存储方案
- 添加 isMyFriend 接口,用于本地数据库检验某账号是否是自己的好友
- 添加 isUserInBlackList 接口,用于本地数据库检验某账号是否处于自己的黑名单中。
修复
- 修复 IE9 的兼容性问题。
8.9.0
新增
- 好友上限提升至 10000。同步时会得到多次回调得到全部好友数据,并新增接口分页从远端获取好友。
优化
- sdk 在浏览器里能更快感知到网络断线,从而断开连接,能减小聊天消息状态从 failed 突变为 success 的可能。
修复
- 修复超大群获取逻辑,当离开超大群后,此超大群的获取将会走远端服务器获取。
8.8.4
新增
- 聊天室新增空间坐标和订阅消息的距离参数,详见getInstance
- 聊天室发送文本消息接口新增空间坐标参数 详见sendText
- 新增更新坐标接口,详见 updateCoordinate
8.8.1
修复
- 修复 8.8.0 做的同步卡顿优化引起的同步失败问题。
8.8.0
修复
- 修复 deleteLocalsession 接口修复没有清除内存中的 session 的问题。
优化
- 优化初始化同步大量离线消息造成 UI 卡顿的场景
新增
- 麦序队列新增批量添加通知。
- 新增根据时间排序的全文检索消息接口,详见 msgFtsInServerByTiming
8.7.2
已知问题修复。
8.7.0
新增
- 聊天室队列变更新增归属账号
- 易盾反垃圾新增扩展字段支持(见 API 的 yidunAntiSpamExt 字段说明),命中结果返回(见 yidunAntiSpamRes)。
修复
- 断网重连后登录时autoconnect状态不对
8.6.0 - 2021-07-20
修复
- 多端同步批量单向删除消息时未读数异常问题
- 偶现收到msgReceipt后的typeError错误
- 会话过多时,偶现不能清空未读数问题
- 调用getQuickComments导致消息状态误变更
优化
- 优化文件上传失败的提示信息
8.5.1 - 2021-07-01
新增
- 云端消息全文检索API追加发送者,消息类型参数供以筛选
修复
- 修复在小程序中 socketio 判断环境不准确,导致 im 无法连上的问题。
优化
- 日志精简,脱敏,如会话,消息等对象,日志只收集必要的 id 等信息。
8.5.0 - 2021-06-22
新增
- 云端消息全文检索API
- 支持撤回自己发送给自己的消息
修复
- SDK实例destroy后,仍能收到某些数据回调
- db发生错误后,下一条消息没有上报给上层
8.4.0 - 2021-04-27
新增
- 聊天室分组功能
- 自定义消息新增可本地检索字段
text
修复
- 逻辑删除本地会话,再次登录时插入本地会话,产生的会话信息不全
- 开启了自动重连,偶现断开后没有重连
- 偶现 destroy 销毁实例不成功
- 偶现已读回执乱序问题
- 收到消息的同时调用
setCurrSession
,导致的偶现未读数异常问题
8.3.5 - 2021-03-30
优化
- db中的消息对象新增
hasRead
字段,非必须;发送过群已读回执的消息,才会包含该字段hasRead: true
- db中的消息对象新增
read
、unread
两个字段,分别代表消息的已读人数、未读人数,通过批量查询群消息已读未读人数API查询过的消息,才会包含/更新read
、unread
两个字段 - 查询单个群消息的已读未读账号列表 API的查询结果会自动存本地数据库,之后断网期间向服务器查询失败时,会自动返回db中存储的对应数据
修复
- 调用服务器API自己给自己发消息,会重复收到两次onMsg
8.3.0 - 2021-03-03
新增
- 支持动态token登录、第三方回调登录策略,详见初始化参数
authType
- 新增通过群ID及成员账号获取超大群成员信息
- 新增获取超大群内被禁言的群成员列表
resetSessionUnread
、resetSessionsUnread
、resetSuperTeamSessionsUnread
三个重置未读数的API,增加第二个参数done回调,重置失败的会话ID会通过done回调上抛- 文档转码支持的文件类型新增了
doc
、docx
修复
- 部分撤回场景,再次登录后重复收到撤回通知
- 离开超大群后,获取到的群信息不是最新的有效数据
- 超大群新成员入群/通过入群申请后,已有成员的本地群信息未更新
优化
- debug日志过滤消息的具体内容,避免消息泄漏
8.2.5 - 2021-02-04
- 完善 lbs 域名防劫持策略策略:在初始化时新增配置,用户可自行定义传入备份的 lbs 域名。详见 API 文档
getInstance
里的lbsBackupUrlsCustomer
参数。
8.2.0 - 2020-12-30
新增
- 批量查询群组信息功能开启,详见 API 文档
getTeamsById
- 群已读发送回执后,本地将会标记此条消息的
hasSendAck
字段为true
,代表它已被发送过已读回执 - 批量重置会话的未读数功能开启,详见 API 文档
resetSessionsUnread
- 删除会话现已支持删除此会话的漫游消息,详见 API 文档
deleteLocalSession
中新增了isDeleteRoaming
参数的说明
修复
- 修复“不开启 db 时
insertLocalSession
会抛出异常”的问题 - 完善断线重连逻辑,如被踢导致没有继续重连的情况
- 信令sdk同步多端消息处理逻辑修复
8.1.0 - 2020-11-13
新增
- 新增本地日志存储及上报功能,默认开启,可以通过设置初始化参数
dbLog
为false
关闭,也可通过expire
设置日志时效 - 聊天室支持CDN消息功能
- 新增独立CDN域名功能,可统一替换文件链接域名,指定域名可通过服务器动态下发或初始化参数配置
修复
- 部分格式的GIF图片发送失败问题
8.0.0 - 2020-09-24
新增
- 新增初始化参数
resetUnreadMode
,表示重置会话未读数时,若同步至服务器失败,是否仅重置本地会话未读数 - 批量单向删除消息
- 删除会话服务器聊天记录,支持单聊和群聊场景,支持多端同步
- 发消息相关API新增
env
参数,用于指定服务器抄送/第三方回调会发送给哪个环境
修复
- 收到不计入未读数消息,重新登录后,仍被计入了未读数
7.9.1 - 2020-09-14
新增
- 删除本地会话接口支持逻辑删除模式。逻辑删除不会真的删除本地会话,而是标记会话为“已删除”状态,这样可以保留会话的
unread
和msgReceiptTime
,下次新建该会话时,可以保持正确的未读数和已读时间戳 - 超大群撤回消息支持多端同步
修复
- 离线重连后偶现未读数不准的问题
7.8.1 - 2020-07-29
变更
- 获取聊天室成员列表接口支持按进入时间排序
修复
- 不使用
db
场景下,会话标记已读没有多端同步
7.8.0 - 2020-07-21
新增
- 支持自定义消息子类型。发消息时可指定消息子类型,查询本地消息时支持按消息子类型检索
- 自定义多端互踢策略,初始化参数新增
customClientType
,表示自定义的客户端类型。不同客户端类型之间的互踢策略可在管理后台自定义 - 新增备用lbs功能,存储至LocalStorage中;可以通过初始化参数
lbsBackup
开启或关闭,默认开启 - 新增快速断网重连功能,加快重连速度;可通过初始化参数
quickReconnect
开启或关闭,默认关闭
变更
- 聊天室不再请求lbs地址
- 小程序SDK文件名格式变更为
NIM_Web_XXX_miniapp_vX.X.X.js
修复
- 单向删除消息后偶现没有触发更新会话
7.7.2 - 2020-06-12
新增
7.7.0 - 2020-05-27
新增
- IM和聊天室消息新增服务器第三方回调扩展字段
callbackExt
- IM账号被服务器踢
serverKick
时新增自定义字段custom
修复
- 超大群发消息没有多端同步
7.6.0 - 2020-05-11
新增
- 消息回复(thread)
- 消息快捷评论
- 收藏功能
- 会话置顶功能
- 会话消息PIN标记
- 未接通的音视频通话支持存漫游和离线
修复
- 会话未读数多端同步不准的问题
变更
- 调整初始化回调
onsessions
的会话数量上限至500
7.4.2 - 2020-03-20
新增
- 新增
onSessionsWithMoreRoaming
初始化回调函数,用于同步漫游消息未全部下发的会话。 - 新增
deleteSessionsWithMoreRoaming
、getSessionsWithMoreRoaming
、updateSessionsWithMoreRoaming
API
7.4.0 - 2020-03-10
新增
- 新增单向删除消息API,仅删除自己看到的消息,对方无感知
变更
- 删除某个会话的本地消息API支持本地标记删除
- 撤回消息API支持自定义推送文案和推送属性
修复
- 修复无法感知微信下的上传文件失败
7.2.0 - 2020-01-13
新增
- 超大群新增部分API,包括申请加入、添加/删除管理员、群成员禁言、超大群禁言、修改别人的群昵称、转让群等
- 新增将消息存储至本地数据库API
- 新增搜索本地内容API
- 微信小程序SDK上传文件支持
uploadprogress
修复
- chrome headless 不能使用数据库
- 群组消息撤回后对应的未读数没有更新
- 修复多次重连后偶现悄悄被踢silentlyKick
- 不使用db时,会话未读数不能忽略通知类消息
7.0.3 - 2019-12-04
新增shouldIgnoreMsg
初始化参数,支持开发者自定义忽略某些消息
7.0.0 - 2019-11-13
新增
- 新增服务端会话列表服务,支持更多的会话,支持获取、更新、删除
- 发送本地消息支持自定义发送方
优化
- 心跳逻辑优化
- 兼容本地数据库异常情况,保证仍能正常收发消息
修复
- 开启文件安全校验的应用,调用获取历史消息接口返回的消息顺序不正确
6.9.0 - 2019-09-17
新增
修复
- 偶现登录或重连后会话回调不全及缺少msgReceiptTime字段
6.7.0 - 2019-08-01
新增
修复
- electron环境下,断网后执行
destroy
,再联网SDK仍会重连 notifyForNewTeamMsg
方法不能指出具体的错误群ID- 缺失离线时收到的未接通的音视频通话话单
6.6.6 - 2019-07-11
新增
- 获取服务器当前时间戳
- 根据会话ID和时间区间删除本地消息:
nim.deleteLocalMsgs
修复
- 删除本地消息后会话的
lastMsg
为null
- 修复重复收到群撤回通知
[6.5.5] - 2019-06-12
新增
[6.5.0] - 2019-05-23
新增
- 连接初始化参数
- 增加
noCacheLinkUrl
参数,表示不缓存链接地址,默认false
。
- 增加
- 获取群成员的邀请者accid
[6.3.0] - 2019-04-18
新增
- 连接初始化参数
- 增加
rollbackDelMsgUnread
参数,表示收到撤回消息是否同时撤销被撤回消息影响的未读数,默认false
。
- 增加
- 删除好友
- 增加
delAlias
参数,表示用户删除好友时,是否需要删除备注信息,默认false
。
- 增加
- 删除某个会话的本地消息
- 增加
delLastMsg
参数,表示是否同时删除本地会话对象中的的lastMsg,默认false
。
- 增加
- 删除点对点云端历史记录
变更
- 发送文件消息上传文件失败时,也触发
done
回调。 - 预览文件、发送文件消息
- 删除
fileInputMaxSize
参数,增加maxSize
参数,对文件进行大小限制。 - 删除
fileInputCommonUpload
参数,增加commonUpload
参数,表示是否使用普通上传(最大100M文件)。默认false
为分片直传,true
为普通上传。 【注意】!!!
默认上传方式改为了“分片直传”,对比之前版本的“普通上传”,会自动选择加速节点上传,文件大小限制最大约39G,但返回的文件信息对象没有了md5
值,如果依赖文件信息的md5
值,则需要手动设置commonUpload: true
放弃使用“分片直传”- 支持blob/dataURL类型的分片上传。
- 删除
[6.2.0] - 2019-03-14
新增
- 连接初始化参数
- 增加
keepNosSafeUrl
参数,表示是否保持NOS安全短链不变,默认false
自动替换短链为源链。
- 增加
- NOS文件短链换源链
- 预览文件、发送文件消息
- 增加
fileInputMaxSize
参数,对传入的fileInput
文件进行大小限制。 - 增加
fileInputCommonUpload
参数,可选择传入fileInput
文件的上传方式,默认false
为分片直传,true
为普通上传。 【注意】!!!
默认上传方式改为了“分片直传”,对比之前版本的“普通上传”,会自动选择加速节点上传,文件大小限制最大约39G,但返回的文件信息对象没有了md5
值,如果依赖文件信息的md5
值,则需要手动设置fileInputCommonUpload: true
放弃使用“分片直传”
- 增加
- 消息对象
- 增加
isInBlackList
参数,表示发送此条消息时,发送方from
是否在接收方to
的黑名单列表中。
- 增加
- 通知消息
netcallBill
类型支持云端历史、漫游,同时attach
里增加主叫方accidfrom
,和其他端在发起通话时设置的自定义内容ext
。
[6.1.0] - 2019-01-22
变更
[5.9.0] - 2018-11-22
新增
- 通过sessionId获取本地会话
- 指定某个群ID和群内成员Account,获取对应的群成员信息
变更
- 创建群时,群可以设置群人数上限level
[5.7.0] - 2018-10-11
新增
- 登录接口增加
customTag
字段透传,服务器推送消息回传 - 聊天室队列批量更新元素
- 重复大文件加速秒传
- 新建群、拉人入群返回810时返回增加“因为被拉的成员入群数量超限导致邀请失败的accid列表”
变更
- IM发送消息的配置选项推送文案
pushContent
的限制提升到500字
[5.5.0] - 2018-08-07
新增
- IM,chatroom初始化增加文件存储配置
- IM,chatroom发送文件消息增加文件存储配置
[5.3.0] - 2018-06-26
变更
- 微信小程序重连机制优化
[5.1.0] - 2018-05-17
新增
- 销毁实例
destroy
及断开连接disconnect
方法增加done
回调 - 微信小程序机型兼容性适配,及连接性能优化
变更
- 微信小程序聊天室获取连接地址优化
- 不再兼容IE8浏览器,并对SDK包做了精简及优化
[5.0.0] - 2018-03-29
新增
- 客户端反垃圾
- 客户端提供删除NIM实例缓存的接口
- 群组临时禁言
- 群组消息已读功能
- web私有化配置
- 微信小程序支持多条websocket
- 微信小程序白名单列表处理
- 新增文档转码功能
变更
- 聊天室登录带上重连标记
- 聊天室高优先级消息增加标记
[4.8.0] - 2018-02-08
变更
- SDK日志记录优化
- 易盾反垃圾配置更新
[4.6.0] - 2018-01-04
新增
- 聊天室队列管理权限可配置
- 聊天室历史记录拉取可以按类型筛选
- 群管理员可以撤回其他人发的消息
- 易盾反垃圾,支持对单条消息配置对应的反垃圾业务规则
变更
- WebSocket链路若因网络状态不佳,悄悄被踢,将自动重连,不再由上层做处理
- WebSocket握手重连优化,清除实例接口
[4.4.0] - 2017-11-16
新增
- 聊天室新增麦序队列元素,增加可配置选项,用户从聊天室掉线或退出的时候,需要删除这个元素
变更
- 取消同步群成员配置选项,强制要求开发者按需同步群成员列表
[4.3.0] - 2017-10-12
新增
- 全部会话未读数清零
- 全员广播接收接口
- 展示消息图片自动转换https链接
- 群消息支持「只接收管理员消息提醒」的免打扰选项
变更
- 获取及同步群成员不再进行本地存储,一律取服务器数据
[4.2.0] - 2017-09-12
新增
- 聊天室匿名登录
- 聊天室机器人及其发送消息接口
- 聊天室获取机器人接口
[4.1.0] - 2017-08-08
新增
- 多端同步及状态同步增加Mac端
- 新增聊天室连麦获取连麦队列头上第一个元素的方法
变更
- 登录同步消息失败的重连处理优化
[4.0.0] - 2017-07-06
新增
- 新增机器人消息收发接口
- 新增机器人默认bot类型消息的xml解析方法
- 新增聊天室发送消息可选不保存历史消息配置
变更
- 修复部分iPhone机型断网重连后协议解析问题
- 修复转发消息数据库记录有误的问题
[3.8.0] - 2017-06-06
新增
- 新增通用同步图片预览接口,支持私有化定制方案
- 连接初始化支持选择连接协议
变更
- 修复忽略群通知消息配置以后,对群状态更改相关bug
- 修复不开启数据库情况下,会话未读数不准的问题
[3.6.0] - 2017-04-27
新增
- 发布订阅事件,以及多端登录状态事件的订阅
变更
- 修复若干开启同步会话未读数后产生的bugs
[3.5.0] - 2017-03-15
新增
- 聊天室获取历史消息记录支持双向查询
[3.4.0] - 2017-01-20
变更
- 优化 SDK 内部同步操作, 加快同步速度
- 获取本地消息去掉数量限制, 由开发者自己控制
[3.3.0] - 2016-12-28
变更
- 优化连接建立方式
[3.2.0] - 2016-11-30
新增
- 会话初始化参数 syncSessionUnread, 是否同步会话的未读数
变更
- 获取本地历史记录, 详情参考文档
[3.1.0] - 2016-10-26
新增
- 群对象增加
mute
字段 - 获取群禁言成员列表
- 发送消息的配置选项增加开启易盾的参数
- 自定义系统通知增加开启易盾的参数
- 发送聊天室消息的配置选项增加开启易盾的参数
- 聊天室通知消息的类型增加全体禁言的通知类型
[2.8.0] - 2016-08-30
新增
[2.7.0] - 2016-08-11
变更
- 发送消息 和 发送自定义系统通知 的时候, 如果发送方被接收方加入了黑名单, 那么将会发送失败, 返回错误码 7101
新增
- 获取用户名片 和 获取用户名片数组 可以传入参数
sync=true
来强制从服务器获取最新的数据 - 聊天室
- 更新聊天室信息
- 更新自己在聊天室内的信息
- 图片操作增加了一系列预览图片的操作
- 发送消息的配置选项增加了 apns 用于配置特殊推送选项, 只在群会话中使用
[2.5.0] - 2016-07-08
变更
- 获取用户名片数组 限制每次最多只能获取150个名片
新增
- 转发消息
- 重发消息
- 获取包含关键词的本地历史记录
- 新增参数
global
表示是否全局搜索
- 新增参数
- 同步开关
syncExtraTeamInfo
, 控制是否同步额外的群信息, 默认true
会同步额外的群信息, 目前包括- 当前登录用户是否开启某个群的消息提醒 (SDK 只是存储了此信息, 具体用此信息来做什么事情完全由开发者控制)
- 调用接口 修改自己的群属性 来关闭/开启某个群的消息提醒
- 调用接口 是否需要群消息通知 来查询是否需要群消息通知
- 设置聊天室临时禁言
[2.4.0] - 2016-06-02
变更
- 在 Safari 下禁用数据库
- 发送消息已读回执, 发送的时候请传入
session.lastMsg
新增
- 群字段增加
- 群头像
- 群被邀请模式
- 群邀请模式
- 群信息修改权限
- 群信息自定义字段修改权限
- 修改自己的群属性 字段增加
- 扩展字段
- 更新群成员禁言状态
- 对应的 群通知消息 类型为
'updateTeamMute'
- 对应的 群通知消息 类型为
[2.2.0] - 2016-04-28
- 获取本地系统通知 加了一个参数
read
来限制已读状态
[2.1.1] - 2016-04-18
变更
- 后续调用接口 初始化SDK 和 初始化聊天室 时
- 同时也会调用接口 更新配置 和 更新聊天室配置 更新传入的配置
- 如果连接已断开, 会自动建立连接
- 发送本地消息
- 消息对象 增加一个字段
isLocal
表示是否是本地消息
- 消息对象 增加一个字段
[2.1.0] - 2016-03-24
变更
- 使用 NIM.getInstance() 来 初始化SDK
- 此接口为单例模式, 对于同一个账号, 永远返回同一份实例, 即只有第一次调用会初始化一个实例, 后续调用此接口会直接返回初始化过的实例.
- 增加 更新配置 的接口
- 使用 Chatroom.getInstance() 来 初始化聊天室
- 此接口为单例模式, 对于同一个账号的同一个聊天室, 永远返回同一份实例, 即只有第一次调用会初始化一个实例, 后续调用此接口会直接返回初始化过的实例.
- 增加更新聊天室配置的接口
- 聊天室回调
onmsg
变更为onmsgs
, 传入的消息对象变更为消息数组 - 去掉初始化参数 dataSource
新增
- 已读回执
- 聊天室支持文件等各种类型的消息
[2.0.2] - 2016-03-01
变更
session 增加lastTextMsg
等字段
[2.0.1] - 2016-02-19
变更
- 聊天室成员类型 中的普通成员变更 "normal" -> "common"
- 设置聊天室普通成员 名字变更 markChatroomMemberLevel -> markChatroomCommonMember
- 设置聊天室普通成员 对应的 通知类型 变更
- "addLevel" -> "addCommon"
- "removeLevel" -> "removeCommon"
- 聊天室被关闭的时候, 聊天室成员收到的被踢通知的
reason
的值变更 "chatroomDismiss" -> "chatroomClosed"
[2.0.0] - 2016-01-28
变更
- 发送自定义系统通知 返回拼装好的对象
- 去掉初始化参数 dataSource.getMsg 和 dataSource.getSysMsg, 由 SDK 来做消息和系统通知的过滤
新增
-
修改图片下载的名字
-
取消文件上传
-
将音频url转为mp3
-
语音转文字
-
以下四个接口加了参数
asc
, 默认false
表示返回的消息按时间逆序排序; 传true
表示按时间正序排序- 获取云端历史记录
- 获取本地历史记录
- 获取包含关键词的本地历史记录
-
群通知消息, 如果
attach
有account
或者accounts
字段, 那么attach
的字段users
包含这些账号对应的用户名片 -
聊天室
[1.8.0] - 2016-01-18
修复
- 音频对象加了一个字段
mp3Url
- 修复更新好友多端同步通知
- 修复离线自定义系统通知引起的存储问题
[1.7.2] - 2015-12-30
修复
- 多Tab页可以使用数据库了
- 消息多端同步,未读数计数问题修复
[1.7.1] - 2015-12-14
修复
- IE8 下不打开控制台,直接使用console会报错,已修复
[1.7.0] - 2015-12-02
变更
-
断线自动重连
- SDK 加入了断线自动的逻辑, 调整了
onerror
和ondisconnect
的使用方法 - 请参考开发手册中的 初始化SDK 的关于
onwillreconnect
和ondisconnect
的描述
- SDK 加入了断线自动的逻辑, 调整了
-
同步
- 所有同步接口均为增量同步, 请查看开发手册中的
- 用户关系托管 中的初始化参数描述
- 好友关系托管 中的初始化参数描述
- 用户名片托管 中的初始化参数描述
- 群组 中的初始化参数描述
- 会话 中的初始化参数描述
- 消息 中的初始化参数描述
- 系统通知 中的初始化参数描述
- 去掉同步我的名片控制开关
syncMyInfo
- 所有同步接口均为增量同步, 请查看开发手册中的
-
用户关系托管
- 同步开关
syncBlacklistAndMutelist
名字变更为syncRelations
- 方法
getBlacklistAndMutelist
名字变更为getRelations
onblacklist
和onmutelist
收到的内容从账号数组变为对象数组, 包含以下几个字段account
, 账号updateTime
, 更新时间reocrd
, 拼装好的对象- 如果只关心账号, 那么可以将此对象数组转为账号数组
var accounts = records.map(function(record) { return record.account; });
- 加入黑名单/从黑名单移除、加入静音列表/从静音列表移除 以及对应的多端同步
onsyncmarkinblacklist
和onsyncmarkinmutelist
, 都加了字段record
包含拼装好的对象
- 同步开关
-
用户名片托管
- 增加回调
onupdatemyinfo
, 用于接收更新后的我的名片 - 增加回调
users
, 用于接收好友的用户名片 - 增加回调
onupdateuser
, 用于接收用户名片更新 - 请参考开发手册中的 用户名片托管 的关于
onupdatemyinfo
、users
和onupdateuser
的描述
- 增加回调
-
群组
- 创建群成功时传入的对象变了, 除了群对象, 额外传了创建者的信息, 请参考开发手册中的创建群
- 拉人入群后, 所有群成员会收到一条类型为
'addTeamMembers'
的群通知消息。此类群通知消息的attach
有一个字段members
的值为被拉的群成员列表 - 如果接受邀请, 那么该群的所有群成员会收到一条类型为
'acceptTeamInvite'
的群通知消息, 此类群通知消息的attach
有一个字段members
的值为接收入群邀请的群成员列表 - 如果通过申请, 那么该群的所有群成员会收到一条类型为
'passTeamApply'
的群通知消息, 此类群通知消息的attach
有一个字段members
的值为被通过申请的群成员列表 - 添加群管理员后, 所有群成员会收到一条类型为
'addTeamManagers'
的群通知消息。此类群通知消息的attach
有一个字段members
的值为被加为管理员的群成员列表 - 移除群管理员后, 所有群成员会收到一条类型为
'removeTeamManagers'
的群通知消息。此类群通知消息的attach
有一个字段members
的值为被移除管理员的群成员列表 - 转让群后, 所有群成员会收到一条类型为
'transferTeam'
的群通知消息。此类群通知消息的attach
有一个字段members
的值为包含新旧群主的群成员列表
-
会话
- 完善了会话机制, 请参考开发手册中的 会话
- 新的回调
onupdatesession
用于接收被更新的会话 - 增加未读数管理机制
- 新的方法
- 设置当前会话
- 重置会话未读数
- 新的回调
- 增加了几个新字段, 请参考开发手册中的 会话对象
- 完善了会话机制, 请参考开发手册中的 会话
-
消息
onroamingmsgs
和onofflinemsgs
这两个回调为一个会话一个回调, 接收的内容从消息数组变更为一个对象, 包含以下几个字段session
, 会话scene
, 场景to
, 聊天对象msgs
, 消息数组, 按照时间正序排列
- 消息对象的字段
idServer
类型变更为String
, 影响方法getHistoryMsgs
和searchHistoryMsgs
- 消息增加了几个新字段, 请参考开发手册中的 消息对象
- 所有发送消息的接口均返回一个拼装好的消息对象而不是消息的
idClient
- 发送文本消息
- 发送文件消息
- 如果需要上传文件, 那么在
beforesend
收到要发送的消息对象而不是消息的idClient
- 如果需要上传文件, 那么在
- 发送
Geo
消息 - 发送
tip
消息 - 发送自定义消息
- 发送消息的回调返回的也是一个拼装好的消息对象
- 本地历史记录
-
系统通知
- 完善了系统通知机制, 请参考开发手册中的 系统通知
- 增加回调
onupdatesysmsg
用于接收被更新的系统通知对象 - 增加未读数管理机制
- 收到系统通知后需要调用标记系统通知为已读状态来将系统通知标记为已读状态
- 增加回调
- 增加了几个新字段, 请参考开发手册中的 系统通知对象
- 所有拒绝、通过系统通知的接口加一个参数: 对应系统通知的
idServer
- passFriendApply
- rejectFriendApply
- acceptTeamInvite
- rejectTeamInvite
- passTeamApply
- rejectTeamApply
- 新的方法
- 更新本地系统通知
- 完善了系统通知机制, 请参考开发手册中的 系统通知
新增
-
数据源, 请查看开发手册中的 数据源
-
数据库支持, 请查看开发手册中的 数据库兼容性
-
图片操作, 请参考开发手册中的 图片操作
优化
-
onupdateteammember
接收到的对象只包含被更新的字段, 可以使用NIM.util.merge
来合并数据 -
onsyncfriendaction(updateFriend)
和updateFriend
接收到的对象只包含被更新的字段, 可以使用NIM.util.merge
来合并数据 -
日志样式优化
[1.5.0] - 2015-09-30
变更
- 无
新增
- 用户名片托管, 请参考开发手册中的
- 初始化SDK 的关于
syncMyInfo
和onmyinfo
的描述 - 用户名片托管
- 初始化SDK 的关于
- 静音群, 请参考开发手册中的
- 修改自己的群属性
优化
- 无
[1.4.0] - 2015-08-31
变更
- 去掉
onkicked
回调,如果被踢,在收到的ondisconnect
回调里会包含被踢的相关信息 - 跟群相关名字变更,包括一系列的操作及对应的群通知消息类型和系统通知类型
- 拉人入群从
'addMembers'
变更为'addTeamMembers'
,对应的群通知消息的类型也从'addMembers'
变更为'addTeamMembers'
。 - 踢人出群从
'removeMembers'
变更为'removeTeamMembers'
,对应的群通知消息的类型也从'removeMembers'
变更为'removeTeamMembers'
。 - 接受入群邀请从
'acceptInvite'
变更为'acceptTeamInvite'
,对应的群通知消息的类型也从'acceptInvite'
变更为'acceptTeamInvite'
。 - 拒绝入群邀请从
'rejectInvite'
变更为'rejectTeamInvite'
,对应的系统通知类型也从'rejectInvite'
变更为'rejectTeamInvite'
。 - 通过入群申请从
'passApply'
变更为'passTeamApply'
,对应的群通知消息的类型也从'passApply'
变更为'passTeamApply'
。 - 拒绝入群申请从
'rejectApply'
变更为'rejectTeamApply'
,对应的系统通知类型也从'rejectApply'
变更为'rejectTeamApply'
。 - 添加群管理员从
'addManagers'
变更为'addTeamManagers'
,对应的群通知消息的类型也从'addManagers'
变更为'addTeamManagers'
。 - 移除群管理员从
'removeManagers'
变更为'removeTeamManagers'
,对应的群通知消息的类型也从'removeManagers'
变更为'removeTeamManagers'
。 - 建议直接全局查找并替换相关名字。
- 拉人入群从
- 当前登录用户在其它端创建群后的回调,名字从
oncreateteam
变更为onsynccreateteam
,另外添加了一系列其他的多端同步回调,请参考下面的文档
新增
- 用户关系托管
- 请参考开发手册中的
- 初始化SDK 的关于
syncBlacklistAndMutelist
、onblacklist
、onmutelist
、onsyncmarkinblacklist
和onsyncmarkinmutelist
的描述 - 用户关系托管
- 初始化SDK 的关于
- 消息对象加了一个字段
isMuted
来标明该消息在接收方是否应该被静音
- 请参考开发手册中的
- 好友关系托管, 请参考开发手册中的
- 初始化SDK 的关于
syncFriends
、onfriends
和onsyncfriendaction
的描述 - 好友关系托管
- 系统通知类型 新增了与好友相关的类型
- 初始化SDK 的关于
- 会话列表, 请参考开发手册中的
- 初始化SDK 的关于
syncSessions
和onsessions
的描述 - 获取会话列表
- 删除会话
- 批量删除会话
- 初始化SDK 的关于
- 标记消息已读, 请参考开发手册中的
- 初始化SDK 的标记消息已读部分
优化
- 无
[1.3.0] - 2015-07-31
变更
- 不支持断线自动重连,开发者可以手动重连,请参考
- 开发手册中的初始化SDK的
ondisconnect
回调。
- 开发手册中的初始化SDK的
- 通过入群申请的参数
options.account
变更为options.from
,请参考开发手册中的- 通过入群申请
- 拒绝入群申请的参数
options.account
变更为options.from
,请参考开发手册中的- 拒绝入群申请
新增
- 日志功能
优化
- IE8/IE9,上传文件超过100M时的错误提示,请参考开发手册中的