合并转发 V2 消息
CombineV2Message encode() 之后长度 < 120KB,会被当做普通消息发送>= 120 KB 会被当做媒体消息进行上传 Copy
CombineV2Message encode() 之后长度 < 120KB,会被当做普通消息发送>= 120 KB 会被当做媒体消息进行上传
private testSendCombineV2Message() { // 假如拿到了消息数组 let msgArray: Array<Message> = new Array(); let msgNum = 0; let nameList: Array<string> = []; let summaryList: Array<string> = []; let msgList: Array<CombineMsgInfo> = []; for (let i = 0; i < msgArray.length; i++) { let msg = msgArray[i]; if (this.canSendCombineV2(msg)) { let name = i + "名称"; // 请根据实际消息修改 let summary = i + "摘要"; // 请根据实际消息修改 let combineInfo = CombineMsgInfo.createWithMessage(msg); nameList.push(name); summaryList.push(summary); msgList.push(combineInfo); } } let conId = new ConversationIdentifier(); conId.conversationType = ConversationType.Private; conId.targetId = "testTargetId"; conId.channelId = "testChannelId"; let combineV2Msg = new CombineV2Message(); combineV2Msg.name = "测试:发送合并转发 V2 消息"; combineV2Msg.msgNum = msgNum; combineV2Msg.conversationType = ConversationType.Private; combineV2Msg.msgList = msgList; combineV2Msg.nameList = nameList; combineV2Msg.summaryList = summaryList; let option: ISendMsgOption = {}; let msg = new Message(conId, combineV2Msg); IMEngine.getInstance().sendMediaMessage(msg, option, (msg: Message) => { // 消息入库 }, (msg: Message, progress: number) => { // 消息上传进度 }, ).then(result => { if (result.code == EngineError.Success) { // 发送合并转发 V2 消息成功 } else { // 发送合并转发 V2 消息失败 } }); } // 该消息是否被合并转发 V2 版本支持 private canSendCombineV2(msg: Message | undefined): boolean { if (!ObjectChecker.isValid(msg)) { return false; } let objName = msg?.objectName; if (TextMessageObjectName == objName) { return true; } if (ImageMessageObjectName == objName) { return true; } if (SightMessageObjectName == objName) { return true; } if (HQVoiceMessageObjectName == objName) { return true; } if (FileMessageObjectName == objName) { return true; } if (CombineV2MessageObjectName == objName) { return true; } return false; } Copy
private testSendCombineV2Message() { // 假如拿到了消息数组 let msgArray: Array<Message> = new Array(); let msgNum = 0; let nameList: Array<string> = []; let summaryList: Array<string> = []; let msgList: Array<CombineMsgInfo> = []; for (let i = 0; i < msgArray.length; i++) { let msg = msgArray[i]; if (this.canSendCombineV2(msg)) { let name = i + "名称"; // 请根据实际消息修改 let summary = i + "摘要"; // 请根据实际消息修改 let combineInfo = CombineMsgInfo.createWithMessage(msg); nameList.push(name); summaryList.push(summary); msgList.push(combineInfo); } } let conId = new ConversationIdentifier(); conId.conversationType = ConversationType.Private; conId.targetId = "testTargetId"; conId.channelId = "testChannelId"; let combineV2Msg = new CombineV2Message(); combineV2Msg.name = "测试:发送合并转发 V2 消息"; combineV2Msg.msgNum = msgNum; combineV2Msg.conversationType = ConversationType.Private; combineV2Msg.msgList = msgList; combineV2Msg.nameList = nameList; combineV2Msg.summaryList = summaryList; let option: ISendMsgOption = {}; let msg = new Message(conId, combineV2Msg); IMEngine.getInstance().sendMediaMessage(msg, option, (msg: Message) => { // 消息入库 }, (msg: Message, progress: number) => { // 消息上传进度 }, ).then(result => { if (result.code == EngineError.Success) { // 发送合并转发 V2 消息成功 } else { // 发送合并转发 V2 消息失败 } }); } // 该消息是否被合并转发 V2 版本支持 private canSendCombineV2(msg: Message | undefined): boolean { if (!ObjectChecker.isValid(msg)) { return false; } let objName = msg?.objectName; if (TextMessageObjectName == objName) { return true; } if (ImageMessageObjectName == objName) { return true; } if (SightMessageObjectName == objName) { return true; } if (HQVoiceMessageObjectName == objName) { return true; } if (FileMessageObjectName == objName) { return true; } if (CombineV2MessageObjectName == objName) { return true; } return false; }
1.4.0
无参构造方法
媒体内容的文件名
媒体内容的本地路径
媒体内容上传服务器后的网络地址
其他属性
合并转发的消息列表 Key 。 当被转发的消息长度之和大于等于 BUFFER_MAXSIZE 时才会有此字段,此时不会有 msgList 字段。
被转发的消息条数
会话类型
转发的全部消息的发送者名称列表
合并消息的摘要列表
消息列表。 当被转发的消息长度之和小于等于 BUFFER_MAXSIZE 时才会有此字段,此时不会有 jsonMsgKey 字段。
编码方法,将消息转为 json 字符串
json 字符串
解码方法,将 json 字符串转为消息
获取类名
类名
实现搜索方法
需要搜索的内容
合并转发 V2 消息
示例代码
Version
1.4.0