reSendMessage
功能介绍
消息重发
当环境网络环境较差或文件上传失败等原因会导致信息发送失败,此时需要调用消息重发的API。
具体消息发送失败的原因可见sendMessage返回的错误码。
当使用reSendMessage时,需要将原来发送的消息删除。
参数详解
参数名称 | 参数类型 | 是否必填 | 描述 |
---|---|---|---|
msgID | string | 是 | 需要重发的消息id |
onlineUserOnly | boolean | 否 | 是否是发送给在线用户 |
返回模板
V2TimValueCallback<V2TimMessage>
{
code : number
desc : string
data : {
msgID: string
timestamp: number
progress: number
sender: string
nickName: string
friendRemark: string
faceUrl: string
nameCard: string
groupID: string
userID: string
status: number
elemType: number
textElem: V2TimTextElem
customElem: V2TimCustomElem
imageElem: V2TimImageElem
soundElem: V2TimSoundElem
videoElem: V2TimVideoElem
fileElem: V2TimFileElem
locationElem: V2TimLocationElem
faceElem: V2TimFaceElem
groupTipsElem: V2TimGroupTipsElem
mergerElem: V2TimMergerElem
localCustomData: string
localCustomInt: number
cloudCustomData: string
isSelf: boolean
isRead: boolean
isPeerRead: boolean
priority: number
offlinePushInfo: V2TimOfflinePushInfo
groupAtUserList: string[]
seq: string
random: number
isExcludedFromUnreadCount: boolean
isExcludedFromLastMessage: boolean
id: string
needReadReceipt: boolean
}
}
返回值详解
名称 | 数值类型 | 描述 |
---|---|---|
code | number | 请求结果错误码 |
desc | string | 请求结果描述 |
data | V2TimMessage | 重发后的消息 |
代码示例
import { TencentImSDKPlugin } from 'react-native-tim-js';
// 创建文本消息
const createTextMessageRes = await TencentImSDKPlugin.v2TIMManager
.getMessageManager()
.createTextMessage(
'test' // 文本信息
);
if (createTextMessageRes.code === 0) {
// 文本信息创建成功
const id = createTextMessageRes.data?.id;
// 发送文本消息
// 在sendMessage时,若只填写receiver则发个人用户单聊消息
// 若只填写groupID则发群组消息
// 若填写了receiver与groupID则发群内的个人用户,消息在群聊中显示,只有指定receiver能看见
const sendMessageRes = await TencentImSDKPlugin.v2TIMManager
.getMessageManager()
.sendMessage({ id: id!, receiver: 'userID', groupID: 'groupID' });
if (sendMessageRes.code === 0) {
// 发送成功
} else {
const reSendMessageRes = await TencentImSDKPlugin.v2TIMManager
.getMessageManager()
.reSendMessage(
id!, // 需要重发的消息id
false // 是否是发送给在线用户
);
if (reSendMessageRes.code === 0) {
// 重发成功
}
}
}