insertSingleMessageToLocalStorage
功能介绍
说明
插入一条群聊消息到本地,仅当前设备可见,不会同步到其他端。
注意
相关回调:
onConversationChanged
仅当前设备可见。
- iOS
- Android
- Flutter
- uni-app
- Browser/Electron/MiniProgram
- React-Native
- Unity
函数原型
Future<Message> insertSingleMessageToLocalStorage({
String? receiverID,
String? senderID,
Message? message,
String? operationID,
})
输入参数
参数名称 | 参数类型 | 是否必填 | 描述 |
---|---|---|---|
message | Message | 是 | 消息体 |
receiverID | String | 是 | 接收消息的 userID |
senderID | String | 是 | 发送消息的 userID |
返回结果
名称 | 类型 | 描述 |
---|---|---|
~ | Message | 成功返回 |
代码示例
await OpenIM.iMManager.messageManager.insertSingleMessageToLocalStorage(
receiverID: '',
senderID: '',
message: Message()
);
// todo
函数原型
- (void)insertSingleMessageToLocalStorage:(OIMMessageInfo *)message
recvID:(NSString *)recvID
sendID:(NSString *)sendID
onSuccess:(nullable OIMMessageInfoCallback)onSuccess
onFailure:(nullable OIMFailureCallback)onFailure;
输入参数
参数名称 | 参数类型 | 是否必填 | 描述 |
---|---|---|---|
message | OIMMessageInfo | 是 | 消息体 |
recvID | NSString | 是 | 接收消息的 userID |
sendID | NSString | 是 | 发送消息的 userID |
返回结果
名称 | 类型 | 描述 |
---|---|---|
onSuccess | OIMMessageInfo | 成功返回 |
onFailure | OIMFailureCallback | 失败返回 |
代码示例
[OIMManager.manager insertSingleMessageToLocalStorage:
recvID:@""
sendID:@""
onSuccess:^(OIMMessageInfo * _Nullable message) {
} onFailure:^(NSInteger code, NSString * _Nullable msg) {
}];
函数原型
public void insertSingleMessageToLocalStorage(OnBase<String> base, Message message, String receiver, String sender)
输入参数
参数名称 | 参数类型 | 是否必填 | 描述 |
---|---|---|---|
base | OnBase<String> | 是 | 回调接口 |
message | Message | 是 | 消息体 |
receiverID | String | 是 | 接收消息的 userID |
senderID | String | 是 | 发送消息的 userID |
代码示例
OpenIMClient.getInstance().messageManager.insertSingleMessageToLocalStorage(new OnBase<AdvancedMessage>() {
public void onError(int code, String error) {
}
public void onSuccess(AdvancedMessage data) {
}
}, message, receiver, sender);
// todo
函数原型
IMSDK.insertSingleMessageToLocalStorage({
message: MessageItem;
recvID: string;
sendID: string;
}, operationID?: string): Promise<WsResponse>
输入参数
参数名称 | 参数类型 | 是否必填 | 描述 |
---|---|---|---|
message | MessageItem | 是 | 消息体 |
recvID | string | 是 | 接收消息的用户 ID |
sendID | string | 是 | 发送消息的 userID |
返回结果
参数名称 | 参数类型 | 描述 |
---|---|---|
Promise.then() | Promise<WsResponse> | 调用成功回调 |
Promise.catch() | Promise<WsResponse> | 调用失败回调 |
代码示例
import { getSDK } from '@openim/wasm-client-sdk';
const IMSDK = getSDK();
// use in electron with ffi
// import { getWithRenderProcess } from '@openim/electron-client-sdk/lib/render';
// const { instance: IMSDK } = getWithRenderProcess();
// use in mini program
// import { OpenIMSDK } from 'open-im-sdk';
// const IMSDK = new OpenIMSDK();
IMSDK.insertSingleMessageToLocalStorage({
message: {
// MessageItem
...
};
recvID: "",
sendID: "",
})
.then(({ data }) => {
// 调用成功
})
.catch(({ errCode, errMsg }) => {
// 调用失败
});
函数原型
IMSDK.asyncApi('insertSingleMessageToLocalStorage', operationID: string,{
message: MessageItem;
recvID: string;
sendID: string;
}): Promise<void>
输入参数
参数名称 | 参数类型 | 是否必填 | 描述 |
---|---|---|---|
operationID | string | 是 | 操作 ID,用于定位问题,保持唯一,建议用当前时间和随机数 |
message | MessageItem | 是 | 消息体 |
recvID | string | 是 | 接收消息的用户 ID |
sendID | string | 是 | 发送消息的 userID |
返回结果
通过
openim-uniapp-polyfill
包将函数 Promise 化,调用时需要使用then
和catch
判断并处理成功和失败回调。
参数名称 | 参数类型 | 描述 |
---|---|---|
Promise.then() | Promise<void> | 调用成功回调 |
Promise.catch() | Promise<CatchResponse> | 调用失败回调 |
代码示例
import IMSDK from 'openim-uniapp-polyfill';
IMSDK.asyncApi(
'insertSingleMessageToLocalStorage',
IMSDK.uuid(),
{
message: {
// MessageItem
...
};
recvID: "",
sendID: "",
}
)
.then((data) => {
// 调用成功
})
.catch(({ errCode, errMsg }) => {
// 调用失败
});
函数原型
OpenIMSDKRN.insertSingleMessageToLocalStorage({
message: MessageItem;
recvID: string;
sendID: string;
},operationID: string): Promise<void>
输入参数
参数名称 | 参数类型 | 是否必填 | 描述 |
---|---|---|---|
operationID | string | 是 | 操作 ID,用于定位问题,保持唯一,建议用当前时间和随机数 |
message | MessageItem | 是 | 消息体 |
recvID | string | 是 | 接收消息的 groupID |
sendID | string | 是 | 发送消息的 userID |
返回结果
参数名称 | 参数类型 | 描述 |
---|---|---|
Promise.then() | Promise<void> | 调用成功回调 |
Promise.catch() | Promise<CatchResponse> | 调用失败回调 |
代码示例
import OpenIMSDKRN from "open-im-sdk-rn";
OpenIMSDKRN.insertSingleMessageToLocalStorage({
message: {
// MessageItem
...
};
recvID: "",
sendID: "",
}, 'operationID')
.then((data) => {
// 调用成功
})
.catch(({ errCode, errMsg }) => {
// 调用失败
});
函数原型
public static void InsertSingleMessageToLocalStorage(OnBase<Message> cb, Message message, string recvId, string sendId)
输入参数
参数名称 | 参数类型 | 是否必填 | 描述 |
---|---|---|---|
cb | OnBase<Message> | 是 | 回调接口 |
message | Message | 是 | 消息体 |
receiverId | string | 是 | 接收消息的 userID |
senderId | string | 是 | 发送消息的 userID |
代码示例
IMSDK.InsertSingleMessageToLocalStorage((msg,errCode,errMsg)=>{
}, message, receiver, sender);