I want to see if a message mentions @here on Discord using the JDA library for Java.
I can already see if a message mentions @everyone using net.dv8tion.jda.api.entities.Message#mentionsEveryone()
but how do I see if the message mentions @here as well?
I’ve been looking into Message#getMentions(Message.MentionType...)
but I’m not sure how to use it correctly as it returns the type IMentionable
.
Advertisement
Answer
You just have to check message.mentionsEveryone() && message.getContentRaw().contains("@here")
. The mentionsEveryone()
method checks whether it was an everyone mention, @here
counts as one since it does mention everyone who is online at the time. To see whether it was @here
or @everyone
you can simply check the content of the message for the literal @here
or @everyone
using contains("...")
for each type respectively.