跳到主要内容

版本:5.X

插入消息(Electron)

提示

SDK 支持在 Electron 的本地数据库中插入消息。本地插入的消息仅存储于本地数据库,不会发送给服务器或对方用户。

批量插入消息

提示
  • 自 v5.7.2 版本开始支持该功能。
  • 每次最多插入 500 条消息。

调用 electronExtension.batchInsertMessage 接口批量插入多条消息至本地数据库。

接口

JavaScript
RongIMLib.electronExtension.batchInsertMessage(messages, checkDuplicate)

参数说明

参数类型必填说明
messagesIInsertMessage需要批量插入的消息数组
checkDuplicateBoolean消息是否排重

示例代码

JavaScript

const messages = [{
conversationType: RongIMLib.ConversationType.PRIVATE,
targetId: '<目标用户ID>'
senderUserId: '<userId>',
messageType: RongIMLib.MessageType.TEXT,
content: {
content: '插入一条消息'
},
messageDirection: RongIMLib.MessageDirection.SEND,
messageUId: '<消息唯一值>',

}]

const checkDuplicate = false

RongIMLib.electronExtension.batchInsertMessage(messages, checkDuplicate).then(res => {
if (res.code === RongIMLib.ErrorCode.SUCCESS) {
// 消息插入成功
console.log('批量插入成功', res.data)
} else {
// 如果消息格式不正确,res.msg 返回该消息在数组中的下标号
console.log('批量插入失败', res.code, res.msg)
}
})

插入单条消息

调用 electronExtension.insertMessage 方法,可在本地会话中插入一条消息。

建议优先选择使用 electronExtension.batchInsertMessage 接口做批量插入,其所支持的参数更全,且写库效率更高。

接口

JavaScript
RongIMLib.electronExtension.insertMessage(conversation, message, options)

参数说明

参数类型必填说明
conversationIConversationOption目标会话
messageIAReceivedMessage消息对象
optionsIInsertOptions配置参数

示例代码

JavaScript
const conversation = {
conversationType: RongIMLib.ConversationType.PRIVATE,
targetId: "<目标用户ID>"
}

const message = {
senderUserId: '<userId>',
messageType: RongIMLib.MessageType.TEXT,
content: {
content: '插入一条消息'
},
// 消息方向
messageDirection: RongIMLib.MessageDirection.SEND
}

RongIMLib.electronExtension.insertMessage(conversation, message).then(res => {
if (res.code === RongIMLib.ErrorCode.SUCCESS) {
// 消息插入成功,返回 IAReceivedMessage 类型的消息数据。
console.log('消息插入成功', res.data)
} else {
console.log('消息插入失败', res.code, res.msg)
}
})