Skip to content

Commit 7d839d6

Browse files
committed
feat(cool-message): forward messages instead of using embed
For this feature, the version of JDA had to be bumped to 5.1.2
1 parent 6fb7720 commit 7d839d6

File tree

2 files changed

+2
-34
lines changed

2 files changed

+2
-34
lines changed

application/build.gradle

+1-1
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ dependencies {
4646
implementation project(':utils')
4747
implementation project(':formatter')
4848

49-
implementation 'net.dv8tion:JDA:5.1.0'
49+
implementation 'net.dv8tion:JDA:5.1.2'
5050

5151
implementation 'org.apache.logging.log4j:log4j-core:2.23.0'
5252
runtimeOnly 'org.apache.logging.log4j:log4j-slf4j18-impl:2.18.0'

application/src/main/java/org/togetherjava/tjbot/features/basic/CoolMessagesBoardManager.java

+1-33
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,8 @@
11
package org.togetherjava.tjbot.features.basic;
22

3-
import net.dv8tion.jda.api.EmbedBuilder;
43
import net.dv8tion.jda.api.JDA;
54
import net.dv8tion.jda.api.entities.Message;
6-
import net.dv8tion.jda.api.entities.MessageEmbed;
75
import net.dv8tion.jda.api.entities.MessageReaction;
8-
import net.dv8tion.jda.api.entities.User;
96
import net.dv8tion.jda.api.entities.channel.concrete.TextChannel;
107
import net.dv8tion.jda.api.entities.emoji.Emoji;
118
import net.dv8tion.jda.api.events.message.react.MessageReactionAddEvent;
@@ -17,8 +14,6 @@
1714
import org.togetherjava.tjbot.config.CoolMessagesBoardConfig;
1815
import org.togetherjava.tjbot.features.MessageReceiverAdapter;
1916

20-
import java.awt.Color;
21-
import java.util.Collections;
2217
import java.util.Optional;
2318
import java.util.function.Predicate;
2419
import java.util.regex.Pattern;
@@ -102,34 +97,7 @@ private Optional<TextChannel> getBoardChannel(JDA jda, long guildId) {
10297
*/
10398
private static MessageCreateAction insertCoolMessage(TextChannel boardChannel,
10499
Message message) {
105-
return boardChannel.sendMessageEmbeds(Collections.singleton(createQuoteEmbed(message)));
106-
}
107-
108-
/**
109-
* Wraps a text message into a properly formatted quote message used for the board text channel.
110-
*/
111-
private static MessageEmbed createQuoteEmbed(Message message) {
112-
final User author = message.getAuthor();
113-
EmbedBuilder embedBuilder = new EmbedBuilder();
114-
115-
// If the message contains image(s), include the first one
116-
var firstImageAttachment = message.getAttachments()
117-
.stream()
118-
.parallel()
119-
.filter(Message.Attachment::isImage)
120-
.findAny()
121-
.orElse(null);
122-
123-
if (firstImageAttachment != null) {
124-
embedBuilder.setThumbnail(firstImageAttachment.getUrl());
125-
}
126-
127-
return embedBuilder.setDescription(message.getContentDisplay())
128-
.appendDescription("%n%n[Jump to Message](%s)".formatted(message.getJumpUrl()))
129-
.setColor(Color.orange)
130-
.setAuthor(author.getName(), null, author.getAvatarUrl())
131-
.setTimestamp(message.getTimeCreated())
132-
.build();
100+
return message.forwardTo(boardChannel);
133101
}
134102

135103
/**

0 commit comments

Comments
 (0)