Reputation: 23
I am trying to read embedded discord messages and send a message back that pings a certain role once a keyword is matched against the String[] array that would search for every value in the embedded message.
Changing this String array works for text messages but I can't seem to fix it for embedded messages.
String[] messageSent = event.getMessage().getContentRaw().split(" ");
Code I'm Using for Embedded Messages:
public void onGuildMessageReceived(@Nonnull GuildMessageReceivedEvent event)
{
String[] messageSent = event.getMessage().getEmbeds().stream().spliterator().toString().split(" ");
for(int x = 0; x < messageSent.length; ++x) {
if (messageSent[x].contains("Red") || messageSent[x].contains("Green") ||
messageSent[x].contains("Blue"))
{
if(event.getMember().getUser().isBot())
{
event.getChannel().sendMessage("<@&825803783188071069> Color Matched!").queue();
}
else
{
event.getChannel().sendMessage("You are not <@210243798806753280> please stop chatting here!").queue();
event.getMessage().delete().queue();
}
}
}
}
}
Upvotes: 2
Views: 1228
Reputation: 91
Use event.getMessage().getEmbeds()
to retrieve the embeds.
The javadoc comes in handy all the time
Upvotes: 1