forked from Fascinated/Bat
switch voice channel log
This commit is contained in:
parent
fdd36d4385
commit
a7af4108c6
@ -58,7 +58,7 @@ public class LogFeature extends Feature {
|
|||||||
if (content == null) {
|
if (content == null) {
|
||||||
return "No content";
|
return "No content";
|
||||||
}
|
}
|
||||||
if (content.contains("`")) { // Workaround for markdown formatting
|
if (content.contains("`")) { // Workaround for Markdown formatting
|
||||||
content = content.replace("`", "'");
|
content = content.replace("`", "'");
|
||||||
}
|
}
|
||||||
// More than 512 characters or is more than 4 lines
|
// More than 512 characters or is more than 4 lines
|
||||||
|
@ -42,6 +42,7 @@ public enum LogType {
|
|||||||
CHANNEL_DELETE(LogCategory.CHANNEL),
|
CHANNEL_DELETE(LogCategory.CHANNEL),
|
||||||
VOICE_CHANNEL_JOIN(LogCategory.CHANNEL),
|
VOICE_CHANNEL_JOIN(LogCategory.CHANNEL),
|
||||||
VOICE_CHANNEL_LEAVE(LogCategory.CHANNEL),
|
VOICE_CHANNEL_LEAVE(LogCategory.CHANNEL),
|
||||||
|
VOICE_CHANNEL_SWITCH(LogCategory.CHANNEL),
|
||||||
CHANNEL_CONFIGURATION(LogCategory.CHANNEL),
|
CHANNEL_CONFIGURATION(LogCategory.CHANNEL),
|
||||||
THREAD_ARCHIVE(LogCategory.CHANNEL),
|
THREAD_ARCHIVE(LogCategory.CHANNEL),
|
||||||
|
|
||||||
|
@ -108,6 +108,7 @@ public class ChannelListener implements EventListener {
|
|||||||
@Override
|
@Override
|
||||||
public void onGuildVoiceUpdate(@NonNull BatGuild guild, @NonNull BatUser user, @NonNull GenericGuildVoiceEvent event) {
|
public void onGuildVoiceUpdate(@NonNull BatGuild guild, @NonNull BatUser user, @NonNull GenericGuildVoiceEvent event) {
|
||||||
AudioChannelUnion channel = event.getVoiceState().getChannel();
|
AudioChannelUnion channel = event.getVoiceState().getChannel();
|
||||||
|
VoiceChannel oldChannel = lastVoiceChannel.get(user);
|
||||||
if (channel != null) {
|
if (channel != null) {
|
||||||
VoiceChannel voiceChannel = channel.asVoiceChannel();
|
VoiceChannel voiceChannel = channel.asVoiceChannel();
|
||||||
lastVoiceChannel.put(user, voiceChannel);
|
lastVoiceChannel.put(user, voiceChannel);
|
||||||
@ -120,6 +121,18 @@ public class ChannelListener implements EventListener {
|
|||||||
if (!joined) {
|
if (!joined) {
|
||||||
lastVoiceChannel.remove(user);
|
lastVoiceChannel.remove(user);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// User switched channels
|
||||||
|
if (oldChannel != null && !oldChannel.equals(voiceChannel)) {
|
||||||
|
log.info("User \"{}\" switched from voice channel \"{}\" to \"{}\" in guild \"{}\"", user.getName(), oldChannel.getName(), voiceChannel.getName(), guild.getName());
|
||||||
|
String switchDescription = new EmbedDescriptionBuilder("Member Switched Voice Channel")
|
||||||
|
.appendLine("User: %s".formatted(user.getDiscordUser().getAsMention()), true)
|
||||||
|
.appendLine("Channel: %s -> %s".formatted(oldChannel.getAsMention(), voiceChannel.getAsMention()), true)
|
||||||
|
.build();
|
||||||
|
logFeature.sendLog(guild, LogType.VOICE_CHANNEL_SWITCH, EmbedUtils.successEmbed().setDescription(switchDescription).build());
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
log.info("User \"{}\" {} voice channel \"{}\" in guild \"{}\"", user.getName(), joined ? "joined" : "left", voiceChannel.getName(), guild.getName());
|
log.info("User \"{}\" {} voice channel \"{}\" in guild \"{}\"", user.getName(), joined ? "joined" : "left", voiceChannel.getName(), guild.getName());
|
||||||
String description = new EmbedDescriptionBuilder("Member %s Voice Channel".formatted(joined ? "Joined" : "Left"))
|
String description = new EmbedDescriptionBuilder("Member %s Voice Channel".formatted(joined ? "Joined" : "Left"))
|
||||||
.appendLine("User: %s".formatted(user.getDiscordUser().getAsMention()), true)
|
.appendLine("User: %s".formatted(user.getDiscordUser().getAsMention()), true)
|
||||||
|
Loading…
Reference in New Issue
Block a user