getAllMessagesStream

open suspend fun getAllMessagesStream(filter: RoamingMessageFilter? = null): <Error class: unknown class><MessageChain>

查询所有漫游消息记录. Kotlin Flow 版本查看 getAllMessages.

返回查询到的漫游消息记录, 顺序为由新到旧. 这些 MessageChain 与从事件中收到的消息链相似, 属于在线消息. 可从 MessageChain 获取 MessageSource 来确定发送人等相关信息, 也可以进行引用回复或撤回.

注意, 返回的消息记录既包含机器人发送给目标用户的消息, 也包含目标用户发送给机器人的消息. 可通过 MessageChain 获取 MessageSource (用法为 messageChain.get(MessageSource.Key)), 判断 MessageSource.fromId (发送人). 消息的其他元数据信息也要通过 MessageSource 获取 (如 MessageSource.time 获取时间).

若只需要获取单向消息 (机器人发送给目标用户的消息或反之), 可使用 RoamingMessageFilter.SENTRoamingMessageFilter.RECEIVED 作为 filter 参数传递.

性能提示: 请在 filter 执行筛选, 若 filter 返回 false 则不会解析消息链, 这对本函数的处理速度有决定性影响.

Parameters

filter

过滤器.