4
4
import net .dv8tion .jda .api .JDA ;
5
5
import net .dv8tion .jda .api .MessageBuilder ;
6
6
import net .dv8tion .jda .api .entities .*;
7
- import net .dv8tion .jda .api .events .interaction .ButtonClickEvent ;
8
- import net .dv8tion .jda .api .events .interaction .SelectionMenuEvent ;
9
- import net .dv8tion .jda .api .events .message .guild . GuildMessageReceivedEvent ;
7
+ import net .dv8tion .jda .api .events .interaction .component . ButtonInteractionEvent ;
8
+ import net .dv8tion .jda .api .events .interaction .component . SelectMenuInteractionEvent ;
9
+ import net .dv8tion .jda .api .events .message .MessageReceivedEvent ;
10
10
import net .dv8tion .jda .api .exceptions .ErrorHandler ;
11
11
import net .dv8tion .jda .api .interactions .components .ActionRow ;
12
- import net .dv8tion .jda .api .interactions .components .Button ;
13
- import net .dv8tion .jda .api .interactions .components .ButtonStyle ;
12
+ import net .dv8tion .jda .api .interactions .components .buttons . Button ;
13
+ import net .dv8tion .jda .api .interactions .components .buttons . ButtonStyle ;
14
14
import net .dv8tion .jda .api .requests .ErrorResponse ;
15
15
import org .jetbrains .annotations .NotNull ;
16
16
import org .jetbrains .annotations .Nullable ;
@@ -89,7 +89,8 @@ public ScamBlocker(@NotNull ModerationActionsStore actionsStore,
89
89
}
90
90
91
91
@ Override
92
- public void onSelectionMenu (@ NotNull SelectionMenuEvent event , @ NotNull List <String > args ) {
92
+ public void onSelectionMenu (@ NotNull SelectMenuInteractionEvent event ,
93
+ @ NotNull List <String > args ) {
93
94
throw new UnsupportedOperationException ("Not used" );
94
95
}
95
96
@@ -99,7 +100,7 @@ public void acceptComponentIdGenerator(@NotNull ComponentIdGenerator generator)
99
100
}
100
101
101
102
@ Override
102
- public void onMessageReceived (@ NotNull GuildMessageReceivedEvent event ) {
103
+ public void onMessageReceived (@ NotNull MessageReceivedEvent event ) {
103
104
if (event .getAuthor ().isBot () || event .isWebhookMessage ()) {
104
105
return ;
105
106
}
@@ -122,7 +123,7 @@ public void onMessageReceived(@NotNull GuildMessageReceivedEvent event) {
122
123
takeAction (event );
123
124
}
124
125
125
- private void takeActionWasAlreadyReported (@ NotNull GuildMessageReceivedEvent event ) {
126
+ private void takeActionWasAlreadyReported (@ NotNull MessageReceivedEvent event ) {
126
127
// The user recently send the same scam already, and that was already reported and handled
127
128
addScamToHistory (event );
128
129
@@ -132,7 +133,7 @@ private void takeActionWasAlreadyReported(@NotNull GuildMessageReceivedEvent eve
132
133
}
133
134
}
134
135
135
- private void takeAction (@ NotNull GuildMessageReceivedEvent event ) {
136
+ private void takeAction (@ NotNull MessageReceivedEvent event ) {
136
137
switch (mode ) {
137
138
case OFF -> throw new AssertionError (
138
139
"The OFF-mode should be detected earlier already to prevent expensive computation" );
@@ -145,26 +146,25 @@ private void takeAction(@NotNull GuildMessageReceivedEvent event) {
145
146
}
146
147
}
147
148
148
- private void takeActionLogOnly (@ NotNull GuildMessageReceivedEvent event ) {
149
+ private void takeActionLogOnly (@ NotNull MessageReceivedEvent event ) {
149
150
addScamToHistory (event );
150
151
logScamMessage (event );
151
152
}
152
153
153
- private void takeActionApproveFirst (@ NotNull GuildMessageReceivedEvent event ) {
154
+ private void takeActionApproveFirst (@ NotNull MessageReceivedEvent event ) {
154
155
addScamToHistory (event );
155
156
logScamMessage (event );
156
157
reportScamMessage (event , "Is this scam?" , createConfirmDialog (event ));
157
158
}
158
159
159
- private void takeActionAutoDeleteButApproveQuarantine (
160
- @ NotNull GuildMessageReceivedEvent event ) {
160
+ private void takeActionAutoDeleteButApproveQuarantine (@ NotNull MessageReceivedEvent event ) {
161
161
addScamToHistory (event );
162
162
logScamMessage (event );
163
163
deleteMessage (event );
164
164
reportScamMessage (event , "Is this scam? (already deleted)" , createConfirmDialog (event ));
165
165
}
166
166
167
- private void takeActionAutoDeleteAndQuarantine (@ NotNull GuildMessageReceivedEvent event ) {
167
+ private void takeActionAutoDeleteAndQuarantine (@ NotNull MessageReceivedEvent event ) {
168
168
addScamToHistory (event );
169
169
logScamMessage (event );
170
170
deleteMessage (event );
@@ -173,21 +173,21 @@ private void takeActionAutoDeleteAndQuarantine(@NotNull GuildMessageReceivedEven
173
173
reportScamMessage (event , "Detected and handled scam" , null );
174
174
}
175
175
176
- private void addScamToHistory (@ NotNull GuildMessageReceivedEvent event ) {
176
+ private void addScamToHistory (@ NotNull MessageReceivedEvent event ) {
177
177
scamHistoryStore .addScam (event .getMessage (), MODES_WITH_IMMEDIATE_DELETION .contains (mode ));
178
178
}
179
179
180
- private void logScamMessage (@ NotNull GuildMessageReceivedEvent event ) {
180
+ private void logScamMessage (@ NotNull MessageReceivedEvent event ) {
181
181
logger .warn ("Detected a scam message ('{}') from user '{}' in channel '{}' of guild '{}'." ,
182
182
event .getMessageId (), event .getAuthor ().getId (), event .getChannel ().getId (),
183
183
event .getGuild ().getId ());
184
184
}
185
185
186
- private void deleteMessage (@ NotNull GuildMessageReceivedEvent event ) {
186
+ private void deleteMessage (@ NotNull MessageReceivedEvent event ) {
187
187
event .getMessage ().delete ().queue ();
188
188
}
189
189
190
- private void quarantineAuthor (@ NotNull GuildMessageReceivedEvent event ) {
190
+ private void quarantineAuthor (@ NotNull MessageReceivedEvent event ) {
191
191
quarantineAuthor (event .getGuild (), event .getMember (), event .getJDA ().getSelfUser ());
192
192
}
193
193
@@ -205,8 +205,8 @@ private void quarantineAuthor(@NotNull Guild guild, @NotNull Member author,
205
205
.queue ();
206
206
}
207
207
208
- private void reportScamMessage (@ NotNull GuildMessageReceivedEvent event ,
209
- @ NotNull String reportTitle , @ Nullable ActionRow confirmDialog ) {
208
+ private void reportScamMessage (@ NotNull MessageReceivedEvent event , @ NotNull String reportTitle ,
209
+ @ Nullable ActionRow confirmDialog ) {
210
210
Guild guild = event .getGuild ();
211
211
Optional <TextChannel > reportChannel = getReportChannel (guild );
212
212
if (reportChannel .isEmpty ()) {
@@ -231,7 +231,7 @@ private void reportScamMessage(@NotNull GuildMessageReceivedEvent event,
231
231
reportChannel .orElseThrow ().sendMessage (message ).queue ();
232
232
}
233
233
234
- private void dmUser (@ NotNull GuildMessageReceivedEvent event ) {
234
+ private void dmUser (@ NotNull MessageReceivedEvent event ) {
235
235
dmUser (event .getGuild (), event .getAuthor ().getIdLong (), event .getJDA ());
236
236
}
237
237
@@ -255,7 +255,7 @@ If you think this was a mistake (for example, your account was hacked, but you g
255
255
return guild .getTextChannelCache ().stream ().filter (isReportChannel ).findAny ();
256
256
}
257
257
258
- private @ NotNull ActionRow createConfirmDialog (@ NotNull GuildMessageReceivedEvent event ) {
258
+ private @ NotNull ActionRow createConfirmDialog (@ NotNull MessageReceivedEvent event ) {
259
259
ComponentIdArguments args = new ComponentIdArguments (mode , event .getGuild ().getIdLong (),
260
260
event .getChannel ().getIdLong (), event .getMessageIdLong (),
261
261
event .getAuthor ().getIdLong (),
@@ -271,7 +271,8 @@ If you think this was a mistake (for example, your account was hacked, but you g
271
271
}
272
272
273
273
@ Override
274
- public void onButtonClick (@ NotNull ButtonClickEvent event , @ NotNull List <String > argsRaw ) {
274
+ public void onButtonClick (@ NotNull ButtonInteractionEvent event ,
275
+ @ NotNull List <String > argsRaw ) {
275
276
ComponentIdArguments args = ComponentIdArguments .fromList (argsRaw );
276
277
if (event .getMember ().getRoles ().stream ().map (Role ::getName ).noneMatch (hasRequiredRole )) {
277
278
event .reply (
0 commit comments