- Android
- iOS
- JavaScript
- Flutter
- 鸿蒙
只允许修改自己发送的消息。修改成功后,对应会话中的其他用户会收到 onMessageUpdate 回调(需要添加消息监听)
参数说明
| 名称 | 类型 | 描述 | 版本 |
|---|---|---|---|
| messageId | String | 消息 id | 1.8.4 |
| messageContent | MessageContent | 修改后的消息实体 | 1.8.4 |
| conversation | Conversation | 会话 | 1.8.4 |
| callback | IMessageCallback | 结果回调 | 1.8.4 |
示例代码
TextMessage text = new TextMessage("update message");
Conversation conversation = new Conversation(Conversation.ConversationType.PRIVATE, "conversationId1");
JIM.getInstance().getMessageManager().updateMessage("messageId1", text, conversation, new IMessageManager.IMessageCallback() {
@Override
public void onSuccess(Message message) {
}
@Override
public void onError(int errorCode) {
}
});
只允许修改自己发送的消息。修改成功后,对应会话中的其他用户会收到 messageDidUpdate: 回调(需要添加消息监听)
参数说明
| 名称 | 类型 | 描述 | 版本 |
|---|---|---|---|
| messageContent | JMessageContent | 修改后的消息实体 | 1.8.4 |
| messageId | NSString | 消息 id | 1.8.4 |
| conversation | JConversation | 会话 | 1.8.4 |
| successBlock | 成功回调 | 1.8.4 | |
| errorBlock | 失败回调 | 1.8.4 |
示例代码
JTextMessage *text = [[JTextMessage alloc] initWithContent:@"update message"];
JConversation *conversation = [[JConversation alloc] initWithConversationType:JConversationTypePrivate
conversationId:@"conversationId1"];
[JIM.shared.messageManager updateMessage:text
messageId:@"messageId1"
inConversation:conversation
success:^(JMessage *message) {
} error:^(JErrorCode errorCode) {
}];
参数说明
| 名称 | 类型 | 必填 | 默认值 | 描述 | 版本 |
|---|---|---|---|---|---|
| message | Object | 是 | 消息对象 | 1.0.0 | |
| message.conversationType | Number | 是 | 会话类型 | 1.0.0 | |
| message.conversationId | String | 是 | 会话 Id,会话类型是 PRIVATE 时,会话 Id 是接收方的 userId,会话类型是 GROUP 时是群组 Id | 1.0.0 | |
| message.content | Object | 是 | 消息内容,构建 message.name 消息 | 1.0.0 | |
| message.tid | String | 是 | 被修改的消息的本地 Id | 1.0.0 | |
| message.messageId | String | 是 | 被修改的消息 Id | 1.0.0 | |
| message.sentTime | Number | 是 | 被修改的消息的发送时间 | 1.0.0 |
成功回调
无参数返回,回调触发表示成功
失败回调
| 名称 | 类型 | 描述 | 版本 |
|---|---|---|---|
| error | Object | 发送失败后会有对应的状态码,可以直接查看 error.msg,或者查看 状态码 | 1.0.0 |
示例代码
let { ConversationType } = JIM;
let msg = {
conversationType: ConversationType.GROUP,
conversationId: 'groupid1',
tid: 'dkaadjdk30dls',
messageId: 'xxxdkadhdsa',
sentTime: 1702180128970,
content: {
content: 'new hello world'
}
};
jim.updateMessage(msg).then(() => {
console.log('update message successfully.')
}, (error) => {
console.log(error)
});
只允许修改自己发送的消息。修改成功后,对应会话中的其他用户会收到 onMessageUpdate 回调(需要添加消息监听)
参数说明
| 名称 | 类型 | 描述 | 版本 |
|---|---|---|---|
| conver | Conversation | 会话 | 1.8.4 |
| msgId | string | 消息 id | 1.8.4 |
| msg | MessageContent | 修改后的消息实体 | 1.8.4 |
| callback | MessageCallback | 结果回调 | 1.8.4 |
示例代码
let conver = new Conversation("userid1",1)
let txt = new TextMessage("new content","")
JuggleIm.instance.getMessageManager().modifyMessage(conver,"messageid1",txt,(code,msg)=>{
})
消息修改支持将已发送的消息进行修改,修改后的消息会通知其他用户和当前用户的其他设备,触发 onMessageUpdate。
参数说明
| 名称 | 类型 | 描述 | 版本 |
|---|---|---|---|
| conversation | Conversation | 会话标识 | 0.6.3 |
| messageId | String | 消息 id | 0.6.3 |
| messageContent | MessageContent | 修改后的消息实体 | 0.6.3 |
示例代码
TextMessage textMessage = TextMessage.content('Text message');
Conversation conversation = Conversation(ConversationType.group, 'groupId1');
String messageId = 'xxhsadldpadf';
Message message = await JuggleIm.instance.updateMessage(messageId, textMessage, conversation);