为什么推荐 V3
V3 相比 V2,对开发者和接入业务来说,有以下优点:
- 更好的国际化支持,更稳定的 SDK 服务和质量,为您的国内外业务保驾护航。
- 接入更简单方便。web & 小程序 & uni-app 接入同一个 SDK,不用区分平台。
- SDK ready 耗时更短,使用体验更好。
- 更好的弱网消息恢复机制,保障消息的可靠送达。
- 同步最近联系人耗时更短,支持动态节流 CONVERSATION_LIST_UPDATED 事件。
- 同步群组列表耗时更短,支持动态节流 GROUP_LIST_UPDATED 事件。
- 支持直播群智能节流,减少传输流量,提升移动端体验。
- 提供 ESM 规范的 SDK 并支持按需模块化集成。例如:开发者想做个私信功能,仅集成 ChatCore 即可,不必集成全量功能,减小 bundle size。
- 和信令、实时音视频、直播等融合更简单方便。web & 小程序 & uni-app 接入 Chat SDK V3 后即可使用信令能力,不用再额外分平台集成信令 SDK。
为了便于开发者接入和平滑升级,我们整理了以下区别,作为升级时的参考:
v2 | v3 | |
---|---|---|
npm 仓库 | tim-js-sdk(web) tim-wx-sdk(小程序 & uni-app) |
@tencentcloud/chat(web & 小程序 & uni-app) |
命名空间 | TIM | TencentCloudChat |
集成 | import TIM from 'tim-js-sdk' // web import TIM from 'tim-wx-sdk' // 小程序 & uniapp |
import TencentCloudChat from '@tencentcloud/chat' // web & 小程序 & uni-app |
sdk 实例一般表示 | tim | chat |
事件常量 | TIM.EVENT | TencentCloudChat.EVENT |
类型常量 | TIM.TYPES | TencentCloudChat.TYPES |
信令常量 | N/A | TencentCloudChat.TSignaling |
信令 npm 仓库 | tsignaling (web) tsignaling-wx(小程序 & uni-app) |
信令是 chat sdk 的一个内置模块(可选) |
关系链 | import TIM from 'tim-js-sdk/tim-js-friendship.js' // web import TIM from 'tim-wx-sdk/tim-wx-friendship.js' // 小程序 & uniapp |
关系链作为 chat sdk 的一个内置模块(可选) import TencentCloudChat from '@tencentcloud/chat' // web & 小程序 & uni-app |
是否提供 UMD 规范的 SDK | 是(默认) | 是(默认) |
是否提供 ESM 规范的 SDK | 是(v2.27.0起支持) | 是 |
是否提供 ts 声明文件 | 是(v2.24.1起支持) | 是 |
ESM 规范的 SDK 集成方式 | import TIM from 'tim-js-sdk/tim-js.es.js' // web import TIM from 'tim-wx-sdk/tim-wx.es.js' // 小程序 & uniapp |
import TencentCloudChat from '@tencentcloud/chat/index.es.js' // web & 小程序 & uni-app |
是否支持可选模块,减小 bundle size | 否 | 是,使用指引 |
是否支持直播群轮询智能节流 | 否 | 是 |
最近联系人列表(即会话列表)单页拉取数量 | 100 | 300 |
最近联系人列表(即会话列表)带好友备注(remark) | 否 | 是 |
最近联系人列表(即会话列表)带会话消息提醒类型(messageRemindType) | 否 | 是 |
群组列表单页最大拉取数量 | 100 | 200 |
接口
V3 的接口向下兼容 V2,同时新增了以下接口方便开发者使用: