thunbu-im-sdk
TypeScript icon, indicating that this package has built-in type declarations

1.0.7-alpha • Public • Published

Thunbu IM JSSdk 文档

快速开始

闪布IM JSSDK (Javascript SDK)可以使用在PC/移动网页端应用,也可以使用在Electron、RN、小程序等跨平台应用中,提供全面而完善的即时通讯开发能力,使开发人员通过简单快速的对接集成即时通讯的功能。

1、接入sdk

2、初始化SDK

3、登入

4、消息收发

5、业务相关、历史消息等

6、登出

集成方式

标签引入

<script src="https://flashchart-oss.oss-cn-hangzhou.aliyuncs.com/web-assets/js/shanliao-sdk/0.0.3/thunbuim-web-sdk.js"></script>

这样的话可以使用全局对象 window.SIM 获取sdk的引用。

npm 下载

使用

npm install thunbu-im-sdk --save

yarn add thunbu-im-sdk

从远程仓库上下载SDK

使用从远程仓库下载的SDK将附带有Typescript支持,使用标签引入或者文件引入的,也可以移步闪布开发者平台 下载.d.ts文件以获取Typescript支持

Demo 支持

闪布开发者平台站点上,包含现有SDK的使用实例

实例源代码

浏览器兼容性

PC浏览器 Chrome Firefox Safari Edge Opera Internet Explorer
最低支持 Yes 7 Yes 12 Yes 10
移动端浏览器 WebView Android Chrome Android Firefox for Android Opera Android Safari on iOS Samsung Internet
最低支持 Yes Yes 7 ? Yes Yes

因为在某些浏览器内单个方法版本另有差异,这样就导致即使在主流浏览器的低版本中,也有可能出现单个websocket不支持从而出错,详情参见MDN Websocket,当浏览器不兼容时

SIM.init(config, onSuccess, onFail);
// 或者
new SIM({});

会返回一个错误SCOKET_ENOTSUP(-1000)

小程序接入

小程序相关接入方式需联系开发人员进行沟通集成

初始化

初始化SDK

在所有事情开始之前,必须要先将SIM对象初始化,告诉SIM相关配置是什么,如果是web端,apiBaseUrl 如果传全路径可能会报跨域的问题,这个时候也可以传代理路径,不需要传全路径也可以正常工作,会将接口请求到当前域下的代理路径

从 npm 下载
import SIM from 'thunbu-im-sdk';

const SIMInstance = new SIM({
    serverip: 'ws://localhost:3000/test', // websocket 地址
    apiBaseUrl: 'http://localhost:9000/', // IM http 业务接口访问地址
    debug: false // 是否打开控制台
});
标签引入模式
const SIMInstance = new window.SIM({
    serverip: 'ws://localhost:3000/test', // websocket 地址
    apiBaseUrl: 'http://localhost:9000/', // IM http 业务接口访问地址
    debug: false // 是否打开控制台
});

在初始化成功后,会执行相应的回调方法,若是失败,则会在失败的回调中告知错误原因。

详见错误码列表

监听SIM方法

在初始化完成之后,可以监听由SIM提供的事件

从 npm 下载
    SIMInstance.addEventListener('msg', function (msg) {
    console.log('notice: ', msg); // 接收到新消息
});
SIMInstance.addEventListener('notice', function (res) {
    console.log('notice: ', res); // 接收到通知消息
});
SIMInstance.addEventListener('msgChange', function (res) {
    console.log('msgChange: ', res); // 消息变化通知
});
SIMInstance.addEventListener('connectChange', function (status) {
    console.log('connectChange: ', status); // 链接状态变更
});
标签引入模式
    window.SIM.addEventListener('msg', function (msg) {
    console.log('notice: ', msg); // 接收到新消息
});
window.SIM.addEventListener('notice', function (res) {
    console.log('notice: ', res); // 接收到通知消息
});
window.SIM.addEventListener('msgChange', function (res) {
    console.log('msgChange: ', res); // 消息变化通知
});
window.SIM.addEventListener('connectChange', function (status) {
    console.log('connectChange: ', status); // 链接状态变更
});

登录

登入

在初始化完成之后,开发人员需要操作SIM来告知SDK需要登录到IM服务器了,在通过相关服务(可能是私有化部署的本地后台服务,也可能是闪布服务,具体服务地址视后台地址决定)鉴权后,就可以开始登录IM服务器了~

SIMInstance.login({
    userId: "userId", // 用户ID
    userSig: "userSig", // 用户凭证
    appId: "appId", // 应用ID
    terminal: "terminal", // 终端类型,0为mobile,1为pc或web端
    appversion: "appversion", // 应用版本号
}).then(() => {
    console.log('login success!');
}).catch((err) => {
    console.log('login error! ', err);
});

登录成功之后,会执行相应的回调方法,若是登录失败,则会在失败的回调中告知原因

详见错误码列表

登出

退出登录功能

SIMInstance.logout().then(() => {
    console.log('logout success!');
}).catch((err) => {
    console.log('logout error! ', err);
});

我们来简单的发个消息

我们使用SIM提供的sendMsg方法来完成给小伙伴发消息~

SIMInstance.sendMsg({
    type: 0, // 这里我们定义的 0 就代表是文本消息
    message: { // 消息体内容
        text: 'hello world!' // 文本消息
    },
    receiver: "9527", // 将消息发送给TA,消息的接收者
    securityType: 0, // 安全类型 默认是0
    cross: 0, // 是否跨域
    sender: "9528", // 发送者的ID,你发送的就是你自己咯
    chatType: 0, // 你和Ta的会话类型,单聊为0, 群聊为1
}).then((msgId) => {
    console.log('sendMsg success!', msgId);
}).catch((err) => {
    console.log('sendMsg error! ', err);
});

发送消息后,如果另一端已经处于登录状态并且已经监听了SIM提供的几个事件的话,则会打印出相应的消息体,就已经完成了最基本的消息收发啦🎇

***恭喜您!***在经过简单的配置之后,终于可以开始发送/接收消息了~ 下面, 我们就可以开始扩展应用的更多功能了!

注意⚠️

我们在后续版本将基于npm进行版本管理,若是需要标签引入的源代码,则可联系客服或者对接人员提供

因为标签引入的模式不利于长期维护以及类型支持,并且我们的文档也是基于npm发布版本的内容进行讲解,包含JavaScript的新特性,所以推荐工程项目内都使用npm下载


基础方法与事件交互

介绍SIM提供的基础方法,包含登入登出、消息发送、事件监听、工具方法等

基础方法

SIM初始化

初始化SIM,在登录之前

类型定义
type SIMInitParams = {
    apiBaseUrl: boolean,
    serverip: boolean,
    debug?: boolean
}
Demo 例子🌰
const SIMInstance = new SIM({
    apiBaseUrl: '/base-api',
    serverip: 'wss://ws.test.com'
}).then(() => {
    console.log('SIM init Success');
}).catch((err) => {
    console.error('SIM init Error:', err);
})
方法参数
参数 类型 说明
params SIMInitParams 初始化SIM的参数
SIMInitParams 对象类型
参数 类型 说明
apiBaseUrl string SIM业务接口调用路径
serverip string webSocket 连接地址
?debug Boolean [可选参数] 是否开启调试模式,如果开启,则控制台会打印SIM的日志,反之不会打印

登录SIM: login

使用websocket登录至IM服务器

类型定义
type SIMLoginParams = {
    appId: string,
    userId: string,
    userSig: string,
}

type EmptyFun = (...arg: any) => void;

type login = (parms: SIMLoginParams) => Promise<string>
Demo 例子🌰
SIMInstance.login({
    appId: '1',
    userId: '9527',
    userSig: 'wo-shi-yi-dui-zi-fu-chuan'
}).then(() => {
    console.log('SIM login Success');
}).catch((err) => {
    console.error('SIM login Error:', err);
})
方法参数
参数 类型 说明
params SIMLoginParams 登录SIM的参数
SIMLoginParams-对象类型
参数 类型 说明
appId string 应用ID
userId string 登录的用户Id
userSig string 登录的用户userSig

登出: logout

用户登出 SIM

类型定义
type EmptyFun = (...arg: any) => void;

type logout = (onSuccess?: EmptyFun, onFail?: EmptyFun) => Promise<void>;
Demo 例子🌰
SIMInstance.login().then(() => {
    console.log('SIM logout Success');
}).catch((err) => {
    console.error('SIM logout Error:', err);
})
返回值
Promise<void>
方法参数


检查链接情况: testOnLine

检查websocket与服务器链接状态, 该函数并没有返回值,如果检测到连接终端,则会通过事件通知

类型定义
type testOnLine = (delay: number = 300) => void;
Demo 例子🌰
SIMInstance.testOnLine();
方法参数
参数 类型 说明
?delay number [可选参数] 退出登录成功的回调

事件交互

SIM 的变更事件都会通过事件机制反馈给开发者

绑定事件: addEventListener

事件名 参数 描述
"msg" NormalMessageItem (不同的消息类型的消息包体会有所不同) 接收到新消息时触发的事件
"repetitionMsg" any 消息重复时触发的事件
"notice" NoticeMessageItem 接收到新通知消息时触发的事件
"msgChange" NormalMessageItem 消息变更时触发的事件,比如:已读、撤回、删除、标记、取消标记等
"connectChange" any IM连接状态变更时触发的事件
Demo 例子🌰
SIMInstance.addEventListener('msg', () => {
    console.log('on message:', msg);
});

SIMInstance.addEventListener('notice', (notice) => {
    console.log('on notice:', notice);
});

解绑事件: removeEventListener

可以解绑的事件和可以绑定的事件名称可取值是一样的

类型定义
type removeEventListener = (eventName?: string, callback?: AnyFuncion) => void;
Demo 例子🌰
SIMInstance.removeEventListener('msg', () => {
    console.log('on message:', msg);
});

注意⚠️,如果不传 eventName 或者 eventName为空字符串,SIM将会认为程序需要将所有的监听事件都清除掉,所以务必保证知晓参数完整的必要性


utils - 工具集

SIM中,我们提供了一些简易的工具集以供开发人员使用

获取uuid: getGuid

通过获取n位随机字符串生成的唯一ID

类型定义
getGuid: (length?: number) => string;
Demo
SIMInstance.utils.getGuid(4);
返回参数
参数 类型 说明
uuid string 唯一ID

获取图片类型: getImgFormat

通过获取到的文件路径来确定图片类型(主要是根据文件名的后缀)

返回0|1|255 对应不同的图片类型

类型定义
getImgFormat: (filePath: string) => 0 | 1 | 255;
Demo 例子🌰
SIMInstance.utils.getImgFormat("C:\test.png"); // return: 1
返回参数
参数 类型 说明
fileType 0 1

获取文件类型: getFileFormat

通过获取到的问年间路径来确定文件类型(主要根据文件类型)

返回对应的文件类型

类型定义
getFileFormat: (filePath: string) => 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 255;
Demo 例子🌰
SIMInstance.utils.getImgFormat("C:\test.png"); // return: 3
参数 类型 说明
filePath string 文件路径,包含文件名的路径
返回值
类型 说明
0|1|2|3|4|5|6|7|8|9|10|11|12|255 0: txt 文本文件,匹配txt
1: word文件,匹配doc&#124;docx&#124;docm&#124;dot&#124;dotx&#124;wps
2: Excel文件,匹配xls&#124;xlsx&#124;xlsm&#124;xlt&#124;csv
3: 图片文件,匹配jpg&#124;jpeg&#124;jp2&#124;png&#124;svg&#124;bmp&#124;gif&#124;iff&#124;pcx&#124;pixar&#124;pxr&#124;tiff&#124;cal
4: pdf 文件,匹配pdf
5: ppt 文件,匹配ppt&#124;pptx&#124;pps&#124;ppsm
6: 压缩文件,匹配rar&#124;ace&#124;ari&#124;arc&#124;ar&#124;arj&#124;bz&#124;bza&#124;bz2&#124;car&#124;dar&#124;gca&#124;gz&#124;jar&#124;taz&#124;tar&#124;exe&#124;zip&#124;7z&#124;zz
7: html文件,匹配html&#124;htm
8: mp4文件,匹配mp4
9: mp3文件,匹配mp3
10: 思维导图文件,匹配mmap&#124;xmind&#124;mm
11: Ai文件,匹配ai&#124;eps
12: psd 文件,匹配psd
255: 未知文件

IM 统一类型定义

Socket状态码

enum IM_Status {
    /** 成功:200 */
    SUCCEED = 200,
    /** 参数正确:0 */
    ARGS_CORRECT = 0,
    /** 参数错误:-1 */
    ARGS_ERROR = -1,
    /** 未知错误:-99 */
    ERROR_UNKNOWN = -99,
    /** 网络连接中断:-100 */
    NETWORK_OFFLINE = -100,
    /** 请求超时:-101 */
    REQUEST_TIMEOUT = -101,
    /** 不支持h5:-1000 */
    SCOKET_ENOTSUP = -1000,
    /** 连接超时:-1001 */
    SCOKET_TIMEOUT = -1001,
    /** 已连接:-1002 */
    SCOKET_CONNECT = -1002,
    /** 连接中:-1003 */
    SCOKET_CONNECTING = -1003,
    /** 未连接:-1004 */
    SCOKET_UNCONNECT = -1004,
    /** 连接失败:-1005 */
    SCOKET_CONNECT_ERROR = -1005,
    /** 并发太高:-1006 */
    SCOKET_COUNT_ERROR = -1006,
    /** 登陆中:-1100 */
    LOGIN_LOGINING = -1100,
    /** 重复登陆:-1101 */
    LOGIN_REPEAT = -1101,
    /** 未登陆:-1102 */
    LOGIN_NOTLOGIN = -1102
}

IM command 枚举

enum IMCommandEnum {
    CMD_HB = 0,
    /** 命令-登陆:1 */
    CMD_LOGIN = 1,
    /** 命令-登出:2 */
    CMD_LOGOUT = 2,
    /** 命令-上线通知:3 */
    CMD_CONNECT_ONLINE_NOTICE = 3,
    /** 命令-上传终端设备信息:7 */
    CMD_UPLOAD_TERMINAL = 7,
    /** 命令-下线通知:8 */
    CMD_CONNECT_OFFLINE_NOTICE = 8,
    /** 命令-消息:20 */
    CMD_MSG = 20,
    /** 命令-消息-服务端回执:21 */
    CMD_MSG_S_RES = 21,
    /** 命令-消息-客户端回执:22 */
    CMD_MSG_C_RES = 22,
    /** 命令-消息-已读:23 */
    CMD_MSG_READ = 23,
    /** 命令-消息-撤回:24 */
    CMD_MSG_REVOCATION = 24,
    /** 命令-消息-用户删除:25 */
    CMD_MSG_DELETE = 25,
    /** 命令-消息-管理员删除:26 */
    CMD_MSG_ADMIN_DELETE = 26,
    /** 命令-消息-标记-增加:27 */
    CMD_MSG_ADD_TAG = 27,
    /** 命令-消息-标记-删除:28 */
    CMD_MSG_DEL_TAG = 28,
    /** 命令-消息-音视频:29 */
    CMD_MSG_AV = 29,
    /** 命令-离线消息-查询:30 */
    CMD_OFFLINE_MSG_INQUIRE = 30,
    /** 命令-离线消息-回执:31 */
    CMD_OFFLINE_MSG_RECEIPT = 31,
    /** 命令-消息-回复数量变更:33 */
    CMD_MSG_REPLYCOUNT_CHANGE = 33,
    /** 已读通知(服务端发送给消息发送者)= 34 **/
    CMD_MSG_READ_NOTICE = 34,
    /** 主动拉取已读通知(客户端主动拉取已读通知)= 35 **/
    CMD_MSG_GETREAD_NOTICE = 35,
    /** 命令-聊天室-获取列表:50 */
    CMD_CHAT_LIST_GIT = 50,
    /** 命令-聊天室-创建通知:51 */
    CMD_CHAT_CREATE_NOTICE = 51,
    /** 命令-聊天室-免打扰设置:52 */
    CMD_CHAT_DISTURB_CHANGE_SET = 52,
    /** 命令-聊天室-免打扰变更通知:53 */
    CMD_CHAT_DISTURB_CHANGE_NOTICE = 53,
    /** 命令-聊天室-会话消息计数重置:54 */
    CMD_CHAT_MSG_COUNT_SET = 54,
    /** 命令-聊天室-会话消息计数重置通知:55 */
    CMD_CHAT_MSG_COUNT_NOTICE = 55,
    /** 命令-聊天室-获取置顶列表:56 */
    CMD_CHAT_TOP_LIST_GIT = 56,
    /** 命令-聊天室-会话置顶设置:57 */
    CMD_CHAT_TOP_SET = 57,
    /** 命令-聊天室-置顶变更通知:58 */
    CMD_CHAT_TOP_CHANGE_NOTICE = 58,
    /** 命令-聊天室-设置会话不可见通知:59 */
    CMD_CHAT_DELETE_NOTICE = 59,
    /** 命令-聊天室-名称变更:60 */
    CMD_CHAT_NAME_SET = 60,
    /** 命令-聊天室-名称变更通知:61 */
    CMD_CHAT_NAME_CHANGE_NOTICE = 61,
    /** 命令-聊天室-彻底删除通知:62 */
    CMD_CHAT_THOROUGH_DELETE_NOTICE = 62,
    /** 命令-自定义通知:99 */
    CMD_CUSTOOM_NOTICE = 99,
    /** 命令-用户相关-账户信息修改:100 */
    CMD_USER_DETAILS_SET = 100,
    /** 命令-用户相关-账户信息修改通知:101 */
    CMD_USER_DETAILS_CHANGE_NOTICE = 101,
    /** 命令-好友相关-好友申请通知:108 */
    CMD_FRIEND_APPLY_NOTICE = 108,
    /** 命令-好友相关-好友添加成功通知:109 */
    CMD_FRIEND_APPLY_ADD_NOTICE = 109,
    /** 命令-好友相关-好友申请答复通知:110 */
    CMD_FRIEND_APPLY_RESULT_NOTICE = 110,
    /** 命令-好友相关-删除好友:111 */
    CMD_FRIEND_DELETE = 111,
    /** 命令-好友相关-删除好友通知:112 */
    CMD_FRIEND_DELETE_NOTICE = 112,
    /** 命令-好友相关-好友备注修改通知:113 */
    CMD_FRIEND_REMARK_CHANGE_NOTICE = 113,
    /** 命令-好友相关-删除所有好友通知:116 */
    CMD_FRIEND_DELETE_ALL_NOTICE = 116
}

IM 消息体类型

enum MsgTypeEnum {
    Msg_Text = 0,
    Msg_Pic = 1,
    Msg_Audio = 2,
    Msg_Video = 3,
    Msg_File = 4,
    Msg_Read = 5,
    Msg_Withdraw = 6,
    Msg_Delete = 7,
    Msg_MergeForward = 8,
    Msg_GroupVVC = 9,
    Msg_SingleVVC = 10,
    Msg_CustomEmoji = 11,
    Msg_Extra = 10000,
    Msg_Announcement = 20007
}

IM 消息处理

与IM交互,收发、处理IM消息

发送消息:sendMsg

发送即时消息的方法,基本类型以及自定义类型都已经有定义好消息格式

格式详见[全局类型定义](#IM 消息体类型)

类型定义

type sendMsg = <T extends SendNormalMsgTypeEnum>(params: SendMsgItem<T>) => Promise<string>

Demo 例子🌰

SIMInstance.sendMsg({
    message: {
        text: 'hello world~',
    },
    receiver: '110',
    securityType: 0,
    chatType: 0,
    cross: 0,
    type: 0,
}).then((messageId) => {
    console.log('send message success! message id is: ', messageId);
}).catch((err) => {
    console.error('send message Error! err:', err);
})

方法参数

参数 类型 说明
params SendMsgItem 登录SIM的参数

SendMsgItem-对象类型

该对象有泛型参数

interface SendMsgItem<T extends SendNormalMsgTypeEnum> {
		receiver: string,
		message: SendMsgContentType<T>,
		securityType: 0|1,
		chatType: ChatTypeEnum,
		cross: 0|1,
		type: T,
		domain?: SendMsgDomainType,
		time?: number,
		groupType?: 0|1|2,
		offlinePush?: boolean,
		offlinePushInfo?: string,
	}
对象成员
参数 类型 说明
receiver string 接收者
message SendMsgContentType 是根据消息类型来的,不同的消息类型message字段的值会不一样
securityType 0|1 安全类型,0-普通,1-密聊
chatType ChatTypeEnum 会话类型
cross 0|1 是否跨域
type SendNormalMsgTypeEnum 消息类型
?domain SendMsgDomainType 消息扩展字段
?time number 发送时间
?groupType 0|1|2 群类型,可选值[0:私密群,1:公开群,2:讨论组]
?offlinePush boolean 是否有离线推送
?offlinePushInfo string 离线推送内容

SendMsgContentType-对象类型

通过传入的泛型来确认返回的类型,泛型的取值范围是:SendNormalMsgTypeEnum

export type SendMsgContentTypes = {
    [SendNormalMsgTypeEnum.Msg_Text]: SendTextMsgContentType,
    [SendNormalMsgTypeEnum.Msg_Pic]: SendPicMsgContentType,
    [SendNormalMsgTypeEnum.Msg_Audio]: SendAudioMsgContentType,
    [SendNormalMsgTypeEnum.Msg_Video]: SendVideoMsgContentType,
    [SendNormalMsgTypeEnum.Msg_File]: SendFileMsgContentType,
    [SendNormalMsgTypeEnum.Msg_MergeForward]: SendMergeForwardContentType,
    [SendNormalMsgTypeEnum.Msg_CustomEmoji]: SendCustomEmojiContentType,
    [SendNormalMsgTypeEnum.Msg_Extra]: SendExtraMsgContentType,
}
type SendMsgContentType<T extends SendNormalMsgTypeEnum> = SendMsgContentTypes[T];
对象成员
参数 类型 说明
Msg_Text SendTextMsgContentType 文本消息包体内容
Msg_Pic SendPicMsgContentType 图片消息包体内容
Msg_Audio SendAudioMsgContentType 语音消息包体内容
Msg_Video SendVideoMsgContentType 视频消息包体内容
Msg_File SendFileMsgContentType 文件消息包体内容
Msg_MergeForward SendMergeForwardContentType 合并转发消息包体内容
Msg_CustomEmoji SendCustomEmojiContentType 自定义表情消息包体内容
Msg_Extra SendExtraMsgContentType 扩展消息包体内容

SendNormalMsgTypeEnum-对象类型

/** 发送消息时声明的类型 - 以下类型可以发送 */
export enum SendNormalMsgTypeEnum {
    Msg_Text = 0, //: '文本',
    Msg_Pic = 1, //: '图片',
    Msg_Audio = 2, //: '语音',
    Msg_Video = 3, //: '视频',
    Msg_File = 4, //: '文件',
    Msg_MergeForward = 8, //: '合并转发',
    Msg_CustomEmoji = 11, //: '自定义表情类型',
    Msg_Extra = 10000, //: '扩展类消息',
}
对象成员
参数 类型 说明
Msg_Text 0 文本消息包体内容
Msg_Pic 1 图片消息包体内容
Msg_Audio 2 语音消息包体内容
Msg_Video 3 视频消息包体内容
Msg_File 4 文件消息包体内容
Msg_Withdraw 6 撤回消息包体内容
Msg_MergeForward 8 合并转发消息包体内容
Msg_CustomEmoji 11 自定义表情消息包体内容
Msg_Extra 10000 扩展消息包体内容

ChatTypeEnum-枚举类型

enum ChatTypeEnum {
    SingleChat,
    GroupChat,
    SubscribeChat,
    SubscribeBoxChat = 10,
}
对象成员
参数 类型 说明
SingleChat 0 单聊
GroupChat 1 群聊
SubscribeChat 2 订阅号
SubscribeBoxChat 10 订阅号盒子

SendTextMsgContentType-对象类型

发送文本消息体的内容

export interface SendTextMsgContentType {
    text: string,
    /** @ 的人员列表 */
    members?: string[]
}
对象成员
参数 类型 说明
text string 文本内容
?members string[] @的人

SendPicMsgContentType-对象类型

发送图片消息体的内容

export interface SendPicMsgContentType {
    /** 0-JPG,1-PNG,225-未知类型 */
    format: 0 | 1 | 255,
    imageList: {
        /** 0-原图  1-缩略大图  2-缩略小图 */
        type: 0 | 1 | 2,
        url: string,
        size: number,
        width: number,
        height: number
    }[]
}
对象成员
参数 类型 说明
format 0|1|255 0-JPG,1-PNG,225-未知类型
imageList object[] 图片信息
imageList[0].type 0|1|2 0-原图 1-缩略大图 2-缩略小图
imageList[0].url string 图片地址
imageList[0].size number 图片大小
imageList[0].width number 图片宽度
imageList[0].height number 图片高度

SendAudioMsgContentType-对象类型

发送音频文件消息体的内容

export interface SendAudioMsgContentType {
    size: number,
    /** 类型 */
    format: number,
    /** 时长 - 秒 */
    duration: number,
    /** 下载地址 */
    downUrl: string
}
对象成员
参数 类型 说明
format 0|1|255 0-JPG,1-PNG,225-未知类型
imageList object[] 图片信息
imageList[0].type 0|1|2 0-原图 1-缩略大图 2-缩略小图
imageList[0].url string 图片地址
imageList[0].size number 图片大小
imageList[0].width number 图片宽度
imageList[0].height number 图片高度

SendVideoMsgContentType-对象类型

发送视频文件消息体的内容

    export interface SendVideoMsgContentType {
    /** 视频地址 */
    videoUrl: string,
    /** 视频大小 - b */
    videoSize: number,
    /** 视频时长 - 毫秒 */
    duration: number,
    /** 0-AVI,1-RM,2-RMVB,3-WMV,4-MP4,225-未知类型 */
    videoFormat: 0 | 1 | 2 | 3 | 4 | 255,
    /** 封面地址 */
    coverUrl: string,
    /** 封面宽度 - px */
    coverWidth: number,
    /** 封面高度 - px */
    coverHeight: number,
    /** 封面大小 - kb */
    coverSize: number,
    /** 封面类型,0-JPG,1-PNG,225-未知类型 */
    coverFormat: 0 | 1 | 255,
}
对象成员
参数 类型 说明
videoUrl string 视频地址
videoSize number 视频大小 - b
duration number 视频时长 - 毫秒
videoFormat 0|1|2|3|4|255 0-AVI,1-RM,2-RMVB,3-WMV,4-MP4,225-未知类型
coverUrl string 封面地址
coverWidth number 封面宽度
coverHeight number 封面高度
coverSize number 封面大小
coverFormat number 封面类型

SendFileMsgContentType-对象类型

发送文件消息体的内容

export interface SendFileMsgContentType {
    /** 文件类型 */
    format: FileFormatEnum,
    /** 文件大小 - b */
    size: number,
    /** 下载地址 */
    downUrl: string,
    /** 文件名称 */
    filename: string,
}
对象成员
参数 类型 说明
format FileFormatEnum 文件类型 - 参考 utils.getFileFormat 的返回值
size number 文件大小 - b
downUrl string 下载地址
filename string 文件名称

SendMergeForwardContentType-对象类型

发送合并转发消息体的内容

export interface SendMergeForwardContentType {
    title: string,
    content: string,
    ids: string[],
    chatType: ChatTypeEnum,
}
对象成员
参数 类型 说明
title FileFormatEnum 文件类型 - 参考 utils.getFileFormat 的返回值
content number 文件大小 - b
ids string 下载地址
chatType string 文件名称

SendCustomEmojiContentType-对象类型

发送自定义表情消息体的内容

export interface SendCustomEmojiContentType {
    imgMd: string,
    imgUrl: string,
    size: number,
    width: number,
    height: number
}
对象成员
参数 类型 说明
imgMd string 图片md5值
imgUrl string 图片地址
size number 表情大小
width number 宽度
height number 高度

SendExtraMsgContentType-对象类型

发送自定义消息体的内容

export interface SendExtraMsgContentType {
    data: string // 自行解析,各端约定好
}

已读消息:readMsg

将消息设为已读

类型定义

type readMsg = (params: ReadMsgParamsType) => Promise<string>

Demo 例子🌰

SIMInstance.readMsg({
    id: 'messageID~~~~~~',
    receiver: '110',
    securityType: 0,
    chatType: 0,
    cross: 0,
}).then((messageId) => {
    console.log('readMsg message success! message id is: ', messageId);
}).catch((err) => {
    console.error('readMsg message Error! err:', err);
})

方法参数

参数 类型 说明
params ReadMsgParamsType 已读消息的参数

ReadMsgParamsType-对象类型

发送已读消息的参数

export interface ReadMsgParamsType {
    id: string,
    chatType: ChatTypeEnum,
    securityType: 0 | 1,
    cross: 0 | 1,
    receiver: string,
    time?: number
}
对象成员
参数 类型 说明
id string 操作的消息ID
chatType ChatTypeEnum 会话类型
securityType 0|1 密聊类型
cross 0|1 是否跨域
receiver string 接收者
?time number 时间

撤回消息: revocationMsg

将消息撤回

类型定义

type revocationMsg = (params: RevocationMsgParamsType)
:
Promise<string>

Demo 例子🌰

SIMInstance.revocationMsg({
    id: 'messageID~~~~~~'
    receiver: '110',
    securityType: 0,
    chatType: 0,
    cross: 0,
}).then((messageId) => {
    console.log('revocationMsg message success! message id is: ', messageId);
}).catch((err) => {
    console.error('revocationMsg message Error! err:', err);
})

方法参数

参数 类型 说明
params RevocationMsgParamsType 撤回消息的参数

RevocationMsgParamsType-对象类型

发送撤回消息的参数

export interface RevocationMsgParamsType {
    id: string,
    chatType: ChatTypeEnum,
    securityType: 0 | 1,
    cross: 0 | 1,
    receiver: string,
    time?: number
}
对象成员
参数 类型 说明
id string 撤回的消息ID
chatType ChatTypeEnum 会话类型
securityType 0|1 密聊类型
cross 0|1 是否跨域
receiver string 接收者
?time number 时间

获取消息已读状态:fetchMsgReadState

获取消息的已读状态

类型定义

type fetchMsgReadState = (params: FetchMsgReadParamsType)
:
Promise<string>

Demo 例子🌰

SIMInstance.fetchMsgReadState({
    id: 'messageID~~~~~~'
    receiver: '110',
    securityType: 0,
    chatType: 0,
    cross: 0,
    msgType: 0,
}).then((messageId) => {
    console.log('fetchMsgReadState message success! message id is: ', messageId);
}).catch((err) => {
    console.error('fetchMsgReadState message Error! err:', err);
})

方法参数

参数 类型 说明
params FetchMsgReadParamsType 获取已读状态的参数

FetchMsgReadParamsType-对象类型

获取消息的已读状态的参数

    export interface FetchMsgReadParamsType {
    id: string,
    chatType: ChatTypeEnum,
    securityType: 0 | 1,
    cross: 0 | 1,
    receiver: string,
    msgType: MsgTypeEnum,
    time?: number
}
对象成员
参数 类型 说明
id string 撤回的消息ID
chatType ChatTypeEnum 会话类型
securityType 0|1 密聊类型
cross 0|1 是否跨域
receiver string 接收者
msgType MsgTypeEnum 消息类型
?time number 时间

删除消息:deleteMsg

删除消息

类型定义

type deleteMsg = (params: DeleteMsgParamsType)
:
Promise<string>

Demo 例子🌰

SIMInstance.deleteMsg({
    id: 'messageID~~~~~~'
    receiver: '110',
    securityType: 0,
    chatType: 0,
    cross: 0,
    msgType: 0,
    delType: 1,
}).then((messageId) => {
    console.log('deleteMsg message success! message id is: ', messageId);
}).catch((err) => {
    console.error('deleteMsg message Error! err:', err);
})

deleteMsg-方法参数

参数 类型 说明
params DeleteMsgParamsType 删除消息的参数
DeleteMsgParamsType-对象类型

删除消息参数

    export interface FetchMsgReadParamsType {
    id: string,
    chatType: ChatTypeEnum,
    securityType: 0 | 1,
    cross: 0 | 1,
    receiver: string,
    msgType: MsgTypeEnum,
    time?: number,
    delType?: 0 | 1,
}
对象成员
参数 类型 说明
id string 删除的消息ID
chatType ChatTypeEnum 会话类型
securityType 0|1 密聊类型
cross 0|1 是否跨域
receiver string 接收者
msgType MsgTypeEnum 消息类型
?time number 时间
?delType 0\1 删除类型 0-删除自己的(只影响自己),1-删除所有人(影响所有人) 默认 0

获取离线消息:getOfflineMsg

获取离线消息-得到历史消息后会触发msg事件

类型定义

type getOfflineMsg = (params: GetOffLineMsgParamsType)
:
Promise<string>

Demo 例子🌰

SIMInstance.getOfflineMsg({
    queryType: 0
}).then((messageId) => {
    console.log('getOfflineMsg message success! message id is: ', messageId);
}).catch((err) => {
    console.error('getOfflineMsg message Error! err:', err);
})

getOfflineMsg-方法参数

参数 类型 说明
params GetOffLineMsgParamsType 获取离线消息方法的参数
GetOffLineMsgParamsType-对象类型

获取离线消息方法参数

    export interface FetchMsgReadParamsType {
    lastMsgTime?: number,
    loginTime?: number,
    tId?: string,
    queryType: 0 | 1 | 2,
}
对象成员
参数 类型 说明
?lastMsgTime number 上次同步时间
?loginTime number 登陆时间
?tId string 后台消息id,最开始一条id
queryType 0|1|2 查询类型,0单聊,1群聊,2指令

初始化会话消息统计数量:initMessageCount

初始化会话消息统计数量

类型定义

type initMessageCount = (params: SendInitMessageCountParams)
:
Promise<string>

Demo 例子🌰

SIMInstance.initMessageCount({
    chatId: '123123',
    chatType: 0,
    securityType: 0,
}).then((messageId) => {
    console.log('initMessageCount success! message id is: ', messageId);
}).catch((err) => {
    console.error('initMessageCount Error! err:', err);
})

方法参数

参数 类型 说明
params SendInitMessageCountParams 初始化会话消息统计数量方法的参数
SendInitMessageCountParams-对象类型

初始化会话消息统计数量方法参数

    export interface SendInitMessageCountParams {
    chatId: string,
    chatType: ChatTypeEnum,
    securityType: 0 | 1,
    time?: number
}
对象成员
参数 类型 说明
chatId string 会话ID
chatType ChatTypeEnum 会话类型
securityType 0|1 密聊类型
?time number 发送时间

HTTP 业务相关接口

业务相关接口主要分为以下几个部分

分组 说明
群组相关接口 处理群聊相关业务
人员相关接口 处理人员相关业务
会话相关接口 处理会话相关业务
消息相关接口 处理消息相关业务

群组相关接口

通过http接口来操作IM中的群组相关功能

获取所有群聊: getAllUserGroup

获取当前用户的所有群组

类型定义

getAllUserGroup: (params: GetAllUserGroupParams) => Promise<any>

Demo 例子🌰

SIMInstance.Group.getAllUserGroup().then(() => {
    console.log('getAllUserGroup success!');
}).catch((err) => {
    console.error('getAllUserGroup Error! err:', err);
})

方法参数

参数 类型 说明
params GetAllUserGroupParams 获取当前用户的所有群组的参数
GetAllUserGroupParams-对象类型

获取当前用户的所有群组的参数

interface GetAllUserGroupParams {
    typeArr?: (1|3|4)[];
}
对象成员
参数 类型 说明
?typeArr (1|3|4)[] 群组类型数组, 1内部群,3事件群(默认查询所有),4外部群)

返回值

Promise<DefaultResponse<GetAllUserGroupResItem[]>>
GetAllUserGroupResItem-对象类型
interface AllUserGroupItemTypes {
    "id": string,
    "name": string,
    "avatar": string,
    "ownerId": string,
    "maxCount": number,
    "isReview": 0|1,
    "groupType": GroupTypeEnum,
    "appId": string,
    "createTime": number,
    "defaultType": 0|1|2|3,
    "defaultAccounts": string,
    "num": number,
    "invitedToggle": 0|1,
    "atallToggle": 0|1
}
对象成员
参数 类型 说明
id string 群组Id
name string 群组名称
avatar string 群组头像
ownerId string 群主ID
maxCount number 人数上限
isReview 0|1 用户状态: 1需要审核,0不需要审核
groupType GroupTypeEnum 群组类型 1内部群,3事件群,4外部群
appId string 应用ID
createTime number 建群时间
defaultType 0|1|2|3 群组的默认类型:0名字头像都是自定义, 1名字默认头像自定义, 2名字是自定义头像是默认, 3都是默认
defaultAccounts string 组成默认信息的人员id
num number 群人数
invitedToggle 0|1 邀请开关
atallToggle 0|1 @all开关

修改群信息: modifyGroup

修改群信息

类型定义

modifyGroup: (params: ModifyGroupParams) => Promise<any>

Demo 例子🌰

SIMInstance.Group.modifyGroup({
    groupType: 1,
    groupId: '123123',
}).then(() => {
    console.log('getAllUserGroup success!');
}).catch((err) => {
    console.error('getAllUserGroup Error! err:', err);
})

方法参数

参数 类型 说明
params ModifyGroupParams 修改群信息的参数

ModifyGroupParams-对象类型

修改群信息的参数

interface ModifyGroupParams {
    groupType: GroupTypeEnum,
    groupId: string,
    groupName?: string,
    avatar?: string,
    isReview?: 0|1,
    notice?: string
}
对象成员
参数 类型 说明
groupType GroupTypeEnum 群组类型枚举
groupId string 群组ID
?groupName string 群组名称
?avatar string 群组头像
?isReview 0|1 是否需要审批 1需要审核,0不需要审核
?notice string 群通知

返回值

Promise<DefaultResponse>

@All功能设置: setGroupAtAllToggle

切换@All的设置

类型定义

setGroupAtAllToggle: (params: SetGroupAtAllToggleParams) => Promise<any>

Demo 例子🌰

SIMInstance.Group.setGroupAtAllToggle({
    groupType: 1,
    groupId: '123123',
    toggle: 1
}).then(() => {
    console.log('setGroupAtAllToggle success!');
}).catch((err) => {
    console.error('setGroupAtAllToggle Error! err:', err);
})

方法参数

参数 类型 说明
params SetGroupAtAllToggleParams 切换@All的设置的参数
SetGroupAtAllToggleParams-对象类型

切换@All的设置的参数

interface SetGroupAtAllToggleParams {
		groupType: GroupTypeEnum,
		groupId: string,
		toggle: 0|1
}
对象成员
参数 类型 说明
groupType GroupTypeEnum 群组类型枚举
groupId string 群组ID
toggle 0|1 @All的设置 是否开启@All

返回值

Promise<DefaultResponse>

邀请群成员权限设置: setGroupInvitedToggle

更改邀请群成员的设置

类型定义

setGroupInvitedToggle: (params: SetGroupInvitedToggleParams) => Promise<any>

Demo 例子🌰

SIMInstance.Group.setGroupInvitedToggle({
    groupType: 1,
    groupId: '123123',
    toggle: 1
}).then(() => {
    console.log('setGroupInvitedToggle success!');
}).catch((err) => {
    console.error('setGroupInvitedToggle Error! err:', err);
})

方法参数

参数 类型 说明
params SetGroupInvitedToggleParams 更改邀请群成员的参数
SetGroupInvitedToggleParams-对象类型

更改邀请群成员的参数

interface SetGroupInvitedToggleParams {
		groupType: GroupTypeEnum,
		groupId: string,
		toggle: 0|1
}
对象成员
参数 类型 说明
groupType GroupTypeEnum 群组类型枚举
groupId string 群组ID
toggle 0|1 是否允许邀请

返回值

Promise<DefaultResponse>

获取群的简要信息: getGroupIntro

获取群的简要信息

类型定义

getGroupIntro: (params: GetGroupIntroParams) => Promise<any>

Demo 例子🌰

SIMInstance.Group.getGroupIntro({
    groupType: 1,
    groupId: '123123'
}).then(() => {
    console.log('getGroupIntro success!');
}).catch((err) => {
    console.error('getGroupIntro Error! err:', err);
})

方法参数

参数 类型 说明
params GetGroupIntroParams 获取群的简要信息的参数
GetGroupIntroParams-对象类型

获取群的简要信息的参数

interface GetGroupIntroParams {
    groupType: GroupTypeEnum,
    groupId: string,
}
对象成员
参数 类型 说明
groupType GroupTypeEnum 群组类型枚举
groupId string 群组ID

返回值

Promise<DefaultResponse<GetAllUserGroupResItem>>
参数 类型 说明
GetAllUserGroupResItem GetAllUserGroupResItem 群组信息对象

获取群组的详细信息: getGroupDetail

获取群组的详细信息

类型定义

getGroupDetail: (params: GetGroupDetailParams) => Promise<any>

Demo 例子🌰

SIMInstance.Group.getGroupDetail({
    groupType: 1,
    groupId: '123123'
}).then(() => {
    console.log('getGroupDetail success!');
}).catch((err) => {
    console.error('getGroupDetail Error! err:', err);
})

方法参数

参数 类型 说明
params GetGroupDetailParams 获取群组的详细信息的参数
GetGroupDetailParams-对象类型

获取群组的详细信息的参数

interface GetGroupDetailParams {
    groupType: GroupTypeEnum,
    groupId: string,
}
对象成员
参数 类型 说明
groupType GroupTypeEnum 群组类型枚举
groupId string 群组ID

返回值

Promise<DefaultResponse<GetGroupDetailRes>>
GetGroupDetailRes-对象类型
interface GetGroupDetailRes extends GetAllUserGroupResItem {
    groupMembers: GroupMemberItemType[],
    groupEventExplain?: GroupEventExplainType
}
对象成员

该对象继承了GroupMemberItemType对象,继承过来的属性将不再描述

参数 类型 说明
groupMembers GroupMemberItemType[] 群组成员列表
?groupEventExplain GroupEventExplainType 群公告信息

获取群组的详细信息 - 列表获取: getGroupDetailList

获取群组的详细信息 - 列表获取

类型定义

getGroupDetailList: (params: GetGroupListDetailParams) => Promise<any>

Demo 例子🌰

SIMInstance.Group.getGroupDetailList({
    groupType: 1,
    groupIds: ['123123', '22342342121']
}).then(() => {
    console.log('getGroupDetail success!');
}).catch((err) => {
    console.error('getGroupDetail Error! err:', err);
})

方法参数

参数 类型 说明
params GetGroupListDetailParams 获取群组的详细信息 - 列表获取的参数
GetGroupDetailParams-对象类型

获取群组的详细信息 - 列表获取的参数

interface GetGroupDetailParams {
		groupType: GroupTypeEnum,
		groupIds: string[],
}
对象成员
参数 类型 说明
groupType GroupTypeEnum 群组类型枚举
groupIds string[] 群组ID数组

搜索群组: searchGroups

通过群组名称和群组类型来搜索当前用户拥有的群组

类型定义

searchGroups: (params: SearchGroupsParams) => Promise<any>

Demo 例子🌰

SIMInstance.Group.searchGroups({
    groupName: 'hello'
}).then(() => {
    console.log('searchGroups success!');
}).catch((err) => {
    console.error('searchGroups Error! err:', err);
})

方法参数

参数 类型 说明
params SearchGroupsParams 查询匹配条件的群组的参数
SearchGroupsParams-对象类型

查询匹配条件的群组的参数

interface SearchGroupsParams {
		groupName: string,
		typeJsonArray: (0|1|2|3)[],
}
对象成员
参数 类型 说明
groupName string 查询条件-群组名称
?typeJsonArray (0|1|2|3)[] 群组类型数组,0私密群,1公开群,2讨论组,3事件群(默认查询所有

邀请加入: inviteJoinGroup

邀请加入群聊

类型定义

inviteJoinGroup: (params: InviteGroupParams) => Promise<any>

Demo 例子🌰

SIMInstance.Group.inviteJoinGroup({
    groupType: '1',
    groupId: '123123123',
    userIds: ['9572', '9528'],
}).then(() => {
    console.log('inviteJoinGroup success!');
}).catch((err) => {
    console.error('inviteJoinGroup Error! err:', err);
})

方法参数

参数 类型 说明
params InviteGroupParams 加入群组的参数
JoinGroupParams-对象类型

加入群组的参数

interface JoinGroupParams {
    groupType: GroupTypeEnum,
    groupId: string,
    userIds: string[]
}
对象成员
参数 类型 说明
groupId string 要加入的群组ID
groupType GroupTypeEnum 群聊类型
members string[] 邀请人员

返回值

Promise<DefaultResponse>

转让群主: changeGroupOwner

转让群主

类型定义

changeGroupOwner: (params: ChangeOwnerParams) => Promise<any>

Demo 例子🌰

SIMInstance.Group.changeGroupOwner({
    groupType: 1,
    groupId: '123123',
    newOwnerId: '9528'
}).then(() => {
    console.log('changeGroupOwner success!');
}).catch((err) => {
    console.error('changeGroupOwner Error! err:', err);
});

方法参数

参数 类型 说明
params ChangeOwnerParams 加入群组的参数
ChangeOwnerParams-对象类型

加入群组的参数

interface ChangeOwnerParams {
		groupType: GroupTypeEnum,
		groupId: string,
		newOwnerId: string,
}
对象成员
参数 类型 说明
groupType GroupTypeEnum 群聊类型
groupId string 要加入的群组ID
newOwnerId string 要变更为群主的人员ID

返回值

Promise<DefaultResponse>

获取群组管理员: getGroupManagers

获取群组管理员

类型定义

getGroupManagers: (params: GetGroupManagerParams) => Promise<any>

Demo 例子🌰

SIMInstance.Group.getGroupManagers({
    groupType: 1,
    groupId: '123123',
}).then(() => {
    console.log('getGroupManagers success!');
}).catch((err) => {
    console.error('getGroupManagers Error! err:', err);
});

方法参数

参数 类型 说明
params GetGroupManagerParams 获取群组管理员的参数
GetGroupManagerParams-对象类型

获取群组管理员的参数

interface GetGroupManagerParams {
		groupType: GroupTypeEnum,
		groupId: string,
}
对象成员
参数 类型 说明
groupType GroupTypeEnum 群聊类型
groupId string 获取群组管理员的群组ID

返回值

Promise<DefaultResponse<GroupMemberItemType>>
参数 类型 说明
groupType GroupMemberItemType 群聊类型

获取群组成员Id集合: getGroupMemberIds

获取群组成员Id集合

类型定义

getGroupMemberIds: (params: GetGroupMemberIdsParams) => Promise<any>

Demo 例子🌰

SIMInstance.Group.getGroupMemberIds({
    groupType: 1,
    groupId: '123123',
}).then(() => {
    console.log('getGroupMemberIds success!');
}).catch((err) => {
    console.error('getGroupMemberIds Error! err:', err);
});

方法参数

参数 类型 说明
params GetGroupMemberIdsParams 获取群组成员Id集合的参数

GetGroupMemberIdsParams-对象类型

获取群组成员Id集合的参数

interface GetGroupMemberIdsParams {
		groupType: GroupTypeEnum,
		groupId: string,
}
对象成员
参数 类型 说明
groupType GroupTypeEnum 群聊类型
groupId string 获取群组成员Id集合的群组ID

返回值

Promise<DefaultResponse<string[]>>

获取群组成员集合: getGroupMemberList

获取群组成员集合

类型定义

getGroupMemberList: (params: GetGroupMemberListParams) => Promise<any>

Demo 例子🌰

SIMInstance.Group.getGroupMemberList({
    groupType: 1,
    groupId: '123123',
}).then(() => {
    console.log('getGroupMemberList success!');
}).catch((err) => {
    console.error('getGroupMemberList Error! err:', err);
});

方法参数

参数 类型 说明
params GetGroupMemberListParams 获取群组成员集合的参数

GetGroupMemberListParams-对象类型

获取群组成员集合的参数

interface GetGroupMemberListParams {
		groupType: GroupTypeEnum,
		groupId: string,
}
对象成员
参数 类型 说明
groupType GroupTypeEnum 群聊类型
groupId string 获取群组成员集合的群组ID

返回值

Promise<DefaultResponse<GroupMemberItemType[]>>
参数 类型 说明
groupType GroupMemberItemType 群聊类型

将人员移出群聊: deleteGroupMember

将人员移出群聊

类型定义

deleteGroupMember: (params: DeleteGroupMemberParams) => Promise<any>

Demo 例子🌰

SIMInstance.Group.deleteGroupMember({
    groupType: 1,
    groupId: '123123',
    userIds: ['9527', '9528']
}).then(() => {
    console.log('deleteGroupMember success!');
}).catch((err) => {
    console.error('deleteGroupMember Error! err:', err);
});

方法参数

参数 类型 说明
params DeleteGroupMemberParams 将人员移出群聊的参数

DeleteGroupMemberParams-对象类型

将人员移出群聊的参数

interface DeleteGroupMemberParams {
		groupType: GroupTypes.GroupTypeEnum,
		groupId: string,
		userIds: string[]
}
对象成员
参数 类型 说明
groupType GroupTypeEnum 群聊类型
groupId string 将人员移出群聊群组ID
userIds string[] 需要移出的人员Id列表

返回值

Promise<DefaultResponse>

退出群组: quitGroup

当前用户操作 - 退出群组

类型定义

quitGroup: (params: QuitGroupParams) => Promise<any>

Demo 例子🌰

SIMInstance.Group.quitGroup({
    groupType: 1,
    groupId: '123123',
}).then(() => {
    console.log('quitGroup success!');
}).catch((err) => {
    console.error('quitGroup Error! err:', err);
});

方法参数

参数 类型 说明
params QuitGroupParams 退出群组的参数

QuitGroupParams-对象类型

退出群组的参数

interface QuitGroupParams {
		groupType: GroupTypes.GroupTypeEnum,
		groupId: string,
}
对象成员
参数 类型 说明
groupType GroupTypeEnum 群聊类型
groupId string 退出群组的群组ID

返回值

Promise<DefaultResponse>

修改群成员角色: setGroupMemberRole

修改群成员角色

类型定义

setGroupMemberRole: (params: SetGroupMemberRoleParams) => Promise<any>

Demo 例子🌰

SIMInstance.Group.setGroupMemberRole({
    groupType: 1,
    groupId: '123123',
    managerIds: ['9527', '9528'],
    type: 1
}).then(() => {
    console.log('setGroupMemberRole success!');
}).catch((err) => {
    console.error('setGroupMemberRole Error! err:', err);
});

方法参数

参数 类型 说明
params SetGroupMemberRoleParams 设置群成员角色的参数

SetGroupMemberRoleParams-对象类型

修改群成员角色的参数

interface SetGroupMemberRoleParams {
		groupType: GroupTypes.GroupTypeEnum,
		groupId: string,
		managerIds: string[],
		type: 1|2,
}
对象成员
参数 类型 说明
groupType GroupTypeEnum 群聊类型
groupId string 退出群组的群组ID
managerIds string[] 需要操作的人员ID
type 1|2 1设置管理员,2取消管理员

返回值

Promise<DefaultResponse>

群组模块通用接口类型定义

GroupTypeEnum-对象类型

群组类型枚举

export enum GroupTypeEnum {
    InnerGroup= 1,
    EventGroup = 3,
    OuterGroup = 4,
    OrgGroup = 5,
    MeetingGroup = 6
}
对象成员
参数 类型 说明
GroupTypeEnum 1|3|4|5|6 群组类型数组, 1内部群,3事件群,4外部群,5组织群,6会议群聊

GroupMemberItemType-对象类型

群成员信息

interface GroupMemberItemType {
		"appId": string,
		"groupId": string,
		"userId": string,
		"role": GroupUserRoleEnum,
		"nickname": string,
		"petName": string,
		"nicknamePy": string,
		"disturb": 0,
		"delFlag": 0,
		"createTime": number,
		"updateTime": number,
		"beInviteId"?: string,
		beOwnerTime?: string,
}
GroupMemberItemType-对象成员
参数 类型 说明
appId number 租户ID
groupId string 群ID
userId string 用户ID
role GroupUserRoleEnum 用户角色(0群主,1管理员,2普通用户)
userId string 用户ID
nickname string 群成员昵称
petName string 用户昵称
nicknamePy string 用户昵称拼音
disturb 0|1 免打扰(1表示消息免打扰)
delFlag 0|1 删除标识,0代表为删除,1代表已删除
createTime number 创建时间(加入时间)
updateTime number 修改时间
?beInviteId string 本人被谁邀请进群的(非邀请的情况,本字段则可为空)
?beOwnerTime string 如是群的被转让人,本字段填的就是最近一次被转让时的时间

GroupEventExplainType-对象类型

群公告消息

interface GroupEventExplainType {
/** 建群人-account */
    "createBy": string,
    /** 建群人-name */
    "createName": string,
    /** 建群时间 */
    "createTime": number,
    /** 是否解散:0正常,1解散 */
    "delFlag": boolean,
    /** 附件地址JSON数组格式 */
    "fileInfo": string,
    /** 群组ID  */
    "groupId": string,
    /** 事件ID */
    "id": string,
    /** 图片地址JSON数组格式  */
    "imageInfo": string,
    /** 文字内容 */
    "text": string
}
GroupEventExplainType-对象成员
参数 类型 说明
createBy string 建群人-account
createName string 建群人-name
createTime string 建群时间
delFlag 0|1 用户角色是否解散:0正常,1解散
fileInfo string 附件地址JSON数组格式
groupId string 群组ID
id string 事件ID
imageInfo string 图片地址JSON数组格式
text string 文字内容

DefaultResponse-对象类型

群组类型枚举

interface DefaultResponse<T = {}> {
    code: number,
    message: string,
    success: boolean,
    data: T
}
对象成员
参数 类型 说明
code number 后端返回的状态码
message string 后端返回的状态值
success boolean 后端返回是否成功
data T 后端返回的内容,默认是空对象

人员相关接口

通过http接口来操作IM中的人员用户相关功能

批量获取用户账号信息: fetchMultiPersonalData

批量获取用户账号信息

类型定义

fetchMultiPersonalData: (params: FetchMultiPersonalDataParams) => Promise<any>

Demo 例子🌰

SIMInstance.User.fetchMultiPersonalData({
    accounts: ['9527', '9528'],
}).then(() => {
    console.log('fetchMultiPersonalData success!');
}).catch((err) => {
    console.error('fetchMultiPersonalData Error! err:', err);
});

方法参数

参数 类型 说明
params FetchMultiPersonalDataParams 批量获取用户账号信息的参数
FetchMultiPersonalDataParams-对象类型

批量获取用户账号信息的参数

interface FetchMultiPersonalDataParams {
		accounts: string[]
}
对象成员
参数 类型 说明
accounts string[] 要获取人员的userId集合

返回值

export interface FetchMultiPersonalDataResItem {
    account: string
    avatar: string
    createTime: string
    definition: string
    disablePush: number
    nicknamePy: string
    petName: string
    userNickname: string
    userStatus: number
    userId: number
}
Promise<DefaultResponse<FetchMultiPersonalDataResItem>>
FetchMultiPersonalDataResItem-对象成员
参数 类型 说明
account string 账号
avatar string 用户头像url地址
createTime string 账号创建时间
definition string 自定义字段内容
disablePush number 0正常,1禁用手机离线推送
nicknamePy string 用户昵称拼音
petName string 用户昵称
userNickname string 用户姓名
userStatus number 用户状态0正常,1禁用
userId number 用户id

会话相关接口

通过http接口来操作IM中的会话相关功能

设置会话: setChatSession

设置会话

类型定义

setChatSession: (params: SetChatSessionParams) => Promise<any>

Demo 例子🌰

SIMInstance.Chat.setChatSession({
    sessionId: '1234',
    securityType: 0,
    sessionType: 0,
    isTop: 1,
}).then((res) => {
    console.log('setChatSession success!', res);
}).catch((err) => {
    console.error('setChatSession Error! err:', err);
});

方法参数

参数 类型 说明
params SetChatSessionParams 设置会话的参数
SetChatSessionParams-对象类型

设置会话的参数

interface SetChatSessionParams {
		sessionId: string,
		securityType: 0|1,
		sessionType: ChatTypeEnum,
		isTop?: 0|1,
		notDisturb?: 0|1
}
对象成员
参数 类型 说明
sessionId string 会话ID
securityType 0|1 安全类型 0普通,1私聊
sessionType ChatTypeEnum 会话ID
?isTop 0|1 是否置顶 0否,1是
?notDisturb 0|1 是否免打扰 0否,1是

返回值

Promise<DefaultResponse>

获取会话详情信息: getChatInfo

获取会话详情信息

类型定义

getChatInfo: (params: SetChatSessionParams) => Promise<any>

Demo 例子🌰

SIMInstance.Chat.getChatInfo({
    sessionId: '123123',
    securityType: 0,
    sessionType: 0,
}).then((res) => {
    console.log('getChatInfo success!', res);
}).catch((err) => {
    console.error('getChatInfo Error! err:', err);
});

方法参数

参数 类型 说明
params GetChatInfoParams 获取会话详情信息的参数
GetChatInfoParams-对象类型

获取会话详情信息的参数

interface GetChatInfoParams {
		sessionId: string,
		securityType: 0|1,
		sessionType: SIMTypes.ChatTypeEnum,
}
对象成员
参数 类型 说明
sessionId string 会话ID
securityType 0|1 安全类型 0普通,1私聊
sessionType ChatTypeEnum 会话ID

返回值

	export interface GetChatInfoTypes {
    "id": string,
    "appId": string,
    "account": string,
    "sessionId": string,
    "sessionName": string,
    "avatar": string,
    "sessionType": SIMTypes.ChatTypeEnum,
    "groupType": GroupTypes.GroupTypeEnum,
    "toppingTime": string,
    "toppingTimeLong": string,
    "isTop": 0|1,
    "securityType": 0|1,
    "notDisturb": 0|1,
    "isShow": 0|1,
    "createTime": string,
    "updateTime": string,
    "lastMsg": IMReceiveTypes.DefaultMsg,
    "isAt": 0|1,
    "invalid": 0|1|2|3|10,
    "cross": 0|1,
    "sessionLevel": 0|1
}
Promise<DefaultResponse<GetChatInfoTypes>>
GetChatInfoTypes-对象成员
参数 类型 说明
id string id
appId string 应用id
account string 账号
sessionId string 聊天会话id(单聊为聊天对象用户id,群聊为群组id)
sessionName string 聊天会话名称
avatar string 聊天会话头像路径
sessionType ChatTypeEnum 会话类型,0单聊,1群聊,2订阅号,10订阅号盒子
groupType GroupTypeEnum 群组类型 0私密群,1公开群,2讨论组,3事件群
toppingTime string 置顶时间
toppingTimeLong string 置顶时间Long型
isTop 0|1 是否置顶
securityType 0|1 安全类型0普通,1私聊
notDisturb 0|1 是否免打扰:0否,1是
isShow 0|1 是否显示:0否,1是
createTime string 创建时间
updateTime string 修改时间
lastMsg DefaultMsg 最后消息包
isAt 0|1 是否@标记:0否,1是
invalid 0|1|2|3|10 会话状态: 0正常,1解散群,2被踢出群,3单聊对方账号禁用, 10彻底删除,不可恢复
cross 0|1 域状态 0内域,1外域
sessionLevel 0|1 会话级别:0外层,1内层

获取所有会话: getAllChat

获取所有会话 - 有增量选项

类型定义

getAllChat: (params: GetAllChatParams) => Promise<any>

Demo 例子🌰

SIMInstance.Chat.getAllChat().then((res) => {
    console.log('getAllChat success!', res);
}).catch((err) => {
    console.error('getAllChat Error! err:', err);
});

方法参数

参数 类型 说明
params GetAllChatParams 获取所有会话的参数
GetAllChatParams-对象类型

获取所有会话的参数

interface GetAllChatParams {
    sessionLevel?: 0|1,
    lastPullTime?: number
}
对象成员
参数 类型 说明
?sessionLevel 0|1 会话层级 0-外层 1-内层
?lastPullTime number 增量选项-最后一次更新时间,如果有该字段,将获取该字段以后更新的会话

返回值

Promise<DefaultResponse<GetChatInfoTypes[]>>
参数 类型 说明
GetChatInfoTypes GetChatInfoTypes[] 会话列表

删除会话: deleteChat

删除会话(设置为不可见)

类型定义

deleteChat: (params: DeleteChatParams) => Promise<any>

Demo 例子🌰

SIMInstance.Chat.deleteChat({
    sessionId: '123123',
    securityType: 0,
    sessionType: 0,
}).then((res) => {
    console.log('deleteChat success!', res);
}).catch((err) => {
    console.error('deleteChat Error! err:', err);
});

方法参数

参数 类型 说明
params DeleteChatParams 删除会话的参数
DeleteChatParams-对象类型

删除会话的参数

interface DeleteChatParams {
    sessionId: string,
    sessionType: ChatTypeEnum,
    securityType: 0|1,
}
对象成员
参数 类型 说明
sessionId string 会话ID
securityType 0 1
sessionType ChatTypeEnum 会话类型

返回值

Promise<DefaultResponse>

删除会话: destroyChat

删除会话(彻底删除)

类型定义

destroyChat: (params: DeleteChatParams) => Promise<any>

Demo 例子🌰

SIMInstance.Chat.destroyChat({
    sessionId: '123123',
    securityType: 0,
    sessionType: 0,
}).then((res) => {
    console.log('destroyChat success!', res);
}).catch((err) => {
    console.error('destroyChat Error! err:', err);
});

方法参数

参数 类型 说明
params DeleteChatParams 删除会话的参数

返回值

Promise<DefaultResponse>

消息相关接口

通过http接口来操作IM中的消息相关功能

获取消息: getMsgListAndCdMsgById

获取指定区间内消息和被指令修改的消息

类型定义

getMsgListAndCdMsgById: (params: GetMsgListAndCdMsgByIdParams) => Promise<any>

Demo 例子🌰

SIMInstance.Message.getMsgListAndCdMsgById({
    sessionId: '1239',
    sessionType: 0,
    securityType: 0,
}).then((res) => {
    console.log('getMsgListAndCdMsgById success!', res);
}).catch((err) => {
    console.error('getMsgListAndCdMsgById Error! err:', err);
});

方法参数

参数 类型 说明
params GetMsgListAndCdMsgByIdParams 获取指定区间内消息和被指令修改的消息的参数
GetMsgListAndCdMsgByIdParams-对象类型

获取指定区间内消息和被指令修改的消息的参数

interface GetMsgListAndCdMsgByIdParams {
		sessionId: string,
		sessionType: ChatTypeEnum,
		securityType: 0|1,
		msgId?: string,
		rows?: number,
		type?: 0|1|2
}
对象成员
参数 类型 说明
sessionId string 会话ID
sessionType ChatTypeEnum 会话类型
securityType 0|1 密聊类型 0-普通聊天 1-秘密聊天
?msgId string 消息id
?rows number 获取数量
?type 0|1|2 0向下拉,1向上拉,2定位前后 默认-0

返回值

interface GetMsgListAndCdMsgRes {
    msg: DefaultMsg[],
    cdMsg: CdMsgBody[]
}
Promise<DefaultResponse<GetMsgListAndCdMsgRes>>

历史记录搜索: searchMsg

历史记录搜索

类型定义

searchMsg: (params: SearchMsgParams) => Promise<any>

Demo 例子🌰

SIMInstance.Message.searchMsg({
    sessionId: '9527',
    sessionType: 0,
    securityType: 0,
    type: 0
}).then((res) => {
    console.log('searchMsg success!', res);
}).catch((err) => {
    console.error('searchMsg Error! err:', err);
});

方法参数

参数 类型 说明
params SearchMsgParams 历史记录搜索的参数
SearchMsgParams-对象类型

历史记录搜索的参数

interface SearchMsgParams {
		sessionId: string,
		sessionType: SIMTypes.ChatTypeEnum,
		securityType: 0|1,
		msgId?: string,
		searchName?: string,
		rows?: number,
		type: 0|1|2
}
对象成员
参数 类型 说明
sessionId string 会话ID
sessionType ChatTypeEnum 会话类型
securityType 0|1 密聊类型 0-普通聊天 1-秘密聊天
?msgId string 消息id
?searchName string 搜索文字
?rows number 获取数量
?type 0|1|2 搜索类型 0全部,1文件,2图片及视频 默认-0

返回值

Promise<DefaultResponse<DefaultMsg[]>>

获取已读状态: getMsgReadData

获取已读状态

类型定义

getMsgReadData: (params: GetMsgReadDataParams) => Promise<any>

Demo 例子🌰

SIMInstance.Message.getMsgReadData({
    msgId: '123123123'
}).then((res) => {
    console.log('getMsgReadData success!', res);
}).catch((err) => {
    console.error('getMsgReadData Error! err:', err);
});

方法参数

参数 类型 说明
params GetMsgReadDataParams 获取已读状态的参数
GetMsgReadDataParams-对象类型

获取已读状态的参数

interface GetMsgReadDataParams {
    msgId: string,
}
对象成员
参数 类型 说明
msgId string 消息id

返回值

interface GetMsgReadDataRes {
    "appId": number,
    "avatar": string,
    "createBy": string,
    "createDate": string,
    "delFlag": 0|1,
    "groupId": string,
    "id": string,
    "isRead": string,
    "msgId": string,
    "owner": string,
    "petName": string,
    "readDate": string,
    "remarks": string,
    "securityType": 0|1,
    "tId": string,
    "updateBy": string,
    "updateDate": string,
    "userName": string
}
Promise<DefaultResponse<GetMsgReadDataRes[]>>
GetMsgReadDataRes-对象成员
参数 类型 说明
avatar string 头像
createBy string 创建者
createDate string 创建时间
delFlag 0|1 删除标志
groupId string 群聊ID
id string id
isRead 0|1 已读未读状态 0.未读 1.已读
msgId string 消息ID
owner string 拥有者的用户UID
petName string 昵称
readDate string 已读时间
remarks string remarks
securityType 0|1 密聊类型
updateBy string 更新者
updateDate string 更新时间
userName string 用户名称

获取回复数据: getReplyList

获取回复数据

类型定义

getReplyList: (params: GetReplyListParams) => Promise<any>

Demo 例子🌰

SIMInstance.Message.getReplyList({
    msgId: '123123123',
    sessionType: 0
}).then((res) => {
    console.log('getReplyList success!', res);
}).catch((err) => {
    console.error('getReplyList Error! err:', err);
});

方法参数

参数 类型 说明
params GetReplyListParams 获取回复数据的参数

GetReplyListParams-对象类型

获取回复数据的参数

interface GetReplyListParams {
		msgId: string,
		sessionType: ChatTypeEnum
}
对象成员
参数 类型 说明
msgId string 消息id
sessionType ChatTypeEnum 会话类型

返回值

Promise<DefaultResponse<DefaultMsg[]>>

获取消息详情: getMessageDetails

获取消息详情-列表获取

类型定义

getMessageDetails: (params: GetMessageDetailsParams) => Promise<any>

Demo 例子🌰

SIMInstance.Message.getMessageDetails({
    msgIds: ['123123123', '123433412'],
    sessionType: 0
}).then((res) => {
    console.log('getMessageDetails success!', res);
}).catch((err) => {
    console.error('getMessageDetails Error! err:', err);
});

方法参数

参数 类型 说明
params GetMessageDetailsParams 获取消息详情的参数

GetMessageDetailsParams-对象类型

获取消息详情的参数

interface GetMessageDetailsParams {
    msgIds: string[],
    sessionType: SIMTypes.ChatTypeEnum,
}
对象成员
参数 类型 说明
msgIds string[] 消息id列表
sessionType ChatTypeEnum 会话类型

返回值

Promise<DefaultResponse<DefaultMsg[]>>

标记消息: signMessage

标记消息

类型定义

signMessage: (params: SignMessageParams) => Promise<any>

Demo 例子🌰

SIMInstance.Message.signMessage({
    sessionId: '123123',
    sessionType: 0,
    securityType: 0,
    msgId: '123123123',
    cross: 0
}).then((res) => {
    console.log('signMessage success!', res);
}).catch((err) => {
    console.error('signMessage Error! err:', err);
});

方法参数

参数 类型 说明
params SignMessageParams 标记消息的参数

SignMessageParams-对象类型

标记消息的参数

interface SignMessageParams {
		sessionId: string,
		sessionType: SIMTypes.ChatTypeEnum,
		securityType: 0|1,
		msgId: string,
		cross: 0|1
}
对象成员
参数 类型 说明
sessionId string 会话ID
sessionType ChatTypeEnum 会话类型
securityType 0|1 密聊类型 0-普通聊天 1-秘密聊天
msgId string 消息ID
cross 0|1 是否跨域 0-不跨域 1-跨域

返回值

Promise<DefaultResponse>

取消标记消息: unSignMessage

取消标记消息

类型定义

unSignMessage: (params: SignMessageParams) => Promise<any>

Demo 例子🌰

SIMInstance.Message.unSignMessage({
    sessionId: '123123',
    sessionType: 0,
    securityType: 0,
    msgId: '123123123',
    cross: 0
}).then((res) => {
    console.log('unSignMessage success!', res);
}).catch((err) => {
    console.error('unSignMessage Error! err:', err);
});

方法参数

参数 类型 说明
params SignMessageParams 取消标记消息的参数

返回值

Promise<DefaultResponse>

返回值

Promise<DefaultResponse>

获取标记列表: getSignList

获取标记列表

类型定义

getSignList: (params: GetSignListParams) => Promise<any>

Demo 例子🌰

SIMInstance.Message.getSignList({
    sessionId: '123123',
    sessionType: 0,
    securityType: 0,
}).then((res) => {
    console.log('getSignList success!', res);
}).catch((err) => {
    console.error('getSignList Error! err:', err);
});

方法参数

参数 类型 说明
params GetSignListParams 查询用户敏感消息(查询指令)的参数

GetSignListParams-对象类型

标记消息的参数

interface GetSignListParams {
		sessionId: string,
		sessionType: SIMTypes.ChatTypeEnum,
		securityType: 0|1,
		signDate?: number,
		rows?: number,
}
对象成员
参数 类型 说明
sessionId string 会话ID
sessionType ChatTypeEnum 会话类型
securityType 0|1 密聊类型 0-普通聊天 1-秘密聊天
?signDate string 消息ID
?rows number 拉取条数

返回值

Promise<DefaultResponse<DefaultMsg[]>>

查询用户敏感消息(查询指令): getCdMsgList

查询用户敏感消息(查询指令)

类型定义

getCdMsgList: (params: GetCdMsgListParams) => Promise<any>

Demo 例子🌰

SIMInstance.Message.getCdMsgList({
    time: 
}).then((res) => {
    console.log('getCdMsgList success!', res);
}).catch((err) => {
    console.error('getCdMsgList Error! err:', err);
});

方法参数

参数 类型 说明
params GetCdMsgListParams 获取标记列表的参数

GetCdMsgListParams-对象类型

查询用户敏感消息(查询指令)的参数

interface GetCdMsgListParams {
    time: string,
}
对象成员
参数 类型 说明
?time number 时间 拉取该时间至今的指令消息

返回值

Promise<DefaultResponse<CdMsgBody[]>>

根据会话消息序号查询消息列表: getMsgList

根据会话消息序号查询消息列表

类型定义

getMsgList: (params: GetMsgListParams) => Promise<any>

Demo 例子🌰

SIMInstance.Message.getMsgList({
    sessionId: 'test~~~~',
    sessionType: 0,
    securityType: 0,
    rows: 10,
    type: 1,
}).then((res) => {
    console.log('getMsgList success!', res);
}).catch((err) => {
    console.error('getMsgList Error! err:', err);
});

方法参数

参数 类型 说明
params GetMsgListParams 根据会话消息序号查询消息列表的参数

GetMsgListParams-对象类型

根据会话消息序号查询消息列表的参数

interface GetMsgListParams {
    sessionId: string,
    sessionType: SIMTypes.ChatTypeEnum,
    securityType: 0|1,
    serialId?: number,
    msgId?: string,
    rows: number,
    type: 0|1|2, //0向下拉,1向上拉,2定位前后
}
对象成员
参数 类型 说明
sessionId string 会话ID
sessionType ChatTypeEnum 会话类型
securityType 0|1 密聊类型 0-普通聊天 1-秘密聊天
?msgId string 消息ID
?serialId number 消息连续性标识
?rows number 拉取条数
?type 0|1|2 拉取方向 0向下拉,1向上拉,2定位前后

返回值

Promise<DefaultResponse<DefaultMsg[]>>

根据会话消息序号区间查询消息状态列表: getMsgStatusList

根据会话消息序号区间查询消息状态列表

类型定义

getMsgStatusList: (params: GetMsgStatusListParams) => Promise<any>

Demo 例子🌰

SIMInstance.Message.getMsgStatusList({
    sessionId: 'test~~~~',
    sessionType: 0,
    securityType: 0,
    startSerialId: 1,
    endSerialId: 10,
}).then((res) => {
    console.log('getMsgList success!', res);
}).catch((err) => {
    console.error('getMsgList Error! err:', err);
});

方法参数

参数 类型 说明
params GetMsgStatusListParams 根据会话消息序号区间查询消息状态列表的参数

GetMsgStatusListParams-对象类型

根据会话消息序号区间查询消息状态列表

interface GetMsgStatusListParams {
    sessionId: string,
    sessionType: SIMTypes.ChatTypeEnum,
    securityType: 0|1,
    startSerialId: number, // 开始序列(小的序列)
    endSerialId: number, // 结束序列(大的序列)
}
对象成员
参数 类型 说明
sessionId string 会话ID
sessionType ChatTypeEnum 会话类型
securityType 0|1 密聊类型 0-普通聊天 1-秘密聊天
startSerialId number 开始序列(小的序列)
endSerialId number 结束序列(大的序列)

返回值

interface GetMsgStatusItemType {
    /** 是否标记 */
    "sign": boolean,
    /** 是否删除 */
    "delFlag": boolean,
    /** 删除标记 */
    "priDelFlag": boolean,
    /** 回复数量 */
    "replyCount": number,
    /** 是否有小红点? */
    "redDarkenFlag": boolean,
    /** 排序ID */
    "serialId": string
}
Promise<DefaultResponse<GetMsgStatusItemType[]>>
GetMsgStatusItemType-对象成员
参数 类型 说明
sign boolean 是否标记
delFlag boolean 是否删除
priDelFlag boolean 删除标记
replyCount number 回复数量
redDarkenFlag boolean 是否有小红点
serialId string 排序ID

变更记录

序号 变更时间 变更人 变更内容
1 2021/07/19 徐鹏坤 文档创建
2 2021/08/09 徐鹏坤 添加断层维护相关接口

Package Sidebar

Install

npm i thunbu-im-sdk

Weekly Downloads

0

Version

1.0.7-alpha

License

ISC

Unpacked Size

207 kB

Total Files

19

Last publish

Collaborators

  • pengkun06