查看是否有消息提及@here

问题描述

我想查看是否有消息使用Java的JDA库在discord上提及@here。

我已经可以使用net.dv8tion.jda.api.entities.Message#mentionsEveryone()查看一条消息中是否提到了@everyone,但是如何查看该消息中是否也提到了@here?

我一直在研究Message#getMentions(Message.MentionType...),但是由于返回类型为IMentionable,我不确定如何正确使用它。

解决方法

我从未使用过此API,但是JavaDoc for IMentionable显示了一种叫做getAsMention的方法

@Nonnull String getAsMention()

Retrieve a Mention for this Entity. For the public Role (@everyone),this will return the literal string "@everyone".

因此,您似乎所需要做的就是遍历IMentionable实例,并检查其中一个实例是否为"@here"