如何利用融云 IMLib 来实现一个阅后即焚功能
场景
项目需要在私聊中来实现一个阅后即焚的功能,即 A 用户给 B 用户发送消息,B 用户在进入聊天页面查看之后 A 用户删除此消息,B 用户开始进入倒计时,倒计时结束后,删除此消息。
思考
大体的梳理一下具体的逻辑
从上面内容我们来大体的设计一下我们需要用户的技术
对外暴露接口
详解
初始化我们的所有容器
收到消息,在合适的业务时机将此消息加入到焚烧队列
查询消息是否已经在焚烧队列
如果不在,添加到 A B C 容器
执行倒计时
倒计时操作
遍历 C 是否有消息
给发送方发送消息,通知我已经开始焚烧 A 里的消息了 并在 A 容器删除此会话
发送方收到消息发送通知
接收方遍历 B 容器,判断每条消息是否到时
如果消息焚烧时间到 在 A、B 容器删除,并触发代理
如果没到时间,就触发代理并修改 此消息在 B 容器的时长。
评论