关于前端:融云im撤回消息

融云im撤回音讯

因为疫情起因,公司基于融云做了个在线的聊天室,之前减少了一些聊天室的根底性能,最近呢因为需要补充,须要把音讯撤回加上。
官网文档阐明地址:
https://docs.rongcloud.cn/v4/…

撤回音讯代码如下:

recall() {
         const conversation = this.im.Conversation.get({
            targetId: this.targetUser.id,
            type: this.targetUser.conversationType
          });
          conversation.recall({
            messageUId: this.currentMsg.messageUId,
            sentTime: this.currentMsg.sentTime
          }).then((message) => {
            this.$message.success('撤回胜利');
            const msg =  Object.assign({extra: {nickname: this.currentUser.nickname}}, message);
            this.handleMessage(msg, false);
          });
    },

在此要留神,撤回胜利之后是不会触发会话的监听的,须要本人在胜利的回调外面解决撤回的音讯。撤回音讯解决代码如下:


if (message.messageType === 'RC:RcCmd') {
            const msg = Object.assign({tip: `${isSelef ? '您':  nickname}撤回了一条音讯`}, message);
            if (messageIds.includes(message.content.messageUId)) {
                const index = messageIds.indexOf(message.content.messageUId);
                this.messageList.splice(index, 1, msg);
            } else {
                this.messageList.push(message);
            }
        } else {
            this.messageList.push(message);
        }

当对方在音讯监听中收到上述的音讯时,也能够调用上述的办法进行撤回音讯解决。

撤回音讯当初是没有工夫限度的,如果要加上工夫限度,能够依据音讯的sentTime解决。

至此,音讯撤回已胜利集成。集成中发现了一个问题,撤回的音讯在会话列表中还存在,曾经给融云提交工单,看后续能不能解决。

融云官网地址:https://www.rongcloud.cn/

融云开发文档地址:https://docs.rongcloud.cn/v4/

【腾讯云】云产品限时秒杀,爆款1核2G云服务器,首年50元

阿里云限时活动-2核2G-5M带宽-60G SSD-1000G月流量 ,特惠价99元/年(原价1234.2元/年,可以直接买3年),速抢

本文由乐趣区整理发布,转载请注明出处,谢谢。

您可能还喜欢...

发表回复

您的电子邮箱地址不会被公开。

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据