For sync purposes
This commit is contained in:
1 parent
3163d2ecf8
commit
9d15ed7643
13 files changed
+53
-30
No files matched your search
@@ -24,7 +24,6 @@ public class StatusThread implements Runnable {
|
||||
}
|
||||
|
||||
} catch (InterruptedException e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
|
||||
@@ -54,7 +54,14 @@ public class DeleteQueueCommand extends AbstractCommand {
|
||||
|
||||
if (player.isConnected()) {
|
||||
if (player.isConnectedTo(vChannel)) {
|
||||
player.getScheduler().queue.clear();
|
||||
int queueSize = player.getScheduler().queue.size();
|
||||
if (queueSize > 0) {
|
||||
player.getScheduler().queue.clear();
|
||||
event.getTextChannel().sendMessage("Removed " + queueSize + (queueSize > 1 ? " tracks" : "track") + " from the queue").queue();
|
||||
} else {
|
||||
event.getTextChannel().sendMessage("Queue is empty!").queue();
|
||||
}
|
||||
|
||||
} else
|
||||
event.getTextChannel().sendMessage("Not in your voice channel").queue();
|
||||
} else {
|
||||
|
||||
@@ -54,11 +54,13 @@ public class PlayCommand extends AbstractCommand {
|
||||
|
||||
if (player.isConnected()) {
|
||||
if (player.isConnectedTo(vChannel)) {
|
||||
event.getMessage().delete().queue();
|
||||
player.play(args.split(" ")[0], event.getTextChannel(), false);
|
||||
} else
|
||||
event.getTextChannel().sendMessage("Not in your voice channel").queue();
|
||||
} else {
|
||||
player.connect(vChannel);
|
||||
event.getMessage().delete().queue();
|
||||
player.play(args.split(" ")[0], event.getTextChannel(), false);
|
||||
}
|
||||
} else
|
||||
|
||||
@@ -21,14 +21,12 @@ public abstract class AbstractController {
|
||||
}
|
||||
|
||||
public AbstractController start() {
|
||||
MusicBot.LOGGER.debug("Starting task.. ["+ getControllerName() + "}");
|
||||
DBController.isDoingSomething = true;
|
||||
isDoingSomething = true;
|
||||
return this;
|
||||
}
|
||||
|
||||
protected AbstractController end() {
|
||||
MusicBot.LOGGER.debug("Ended task! ["+ getControllerName() + "}");
|
||||
DBController.isDoingSomething = false;
|
||||
isDoingSomething = false;
|
||||
return this;
|
||||
|
||||
@@ -158,7 +158,6 @@ public class DBBlacklist extends AbstractController {
|
||||
|
||||
@Override
|
||||
public String getControllerName() {
|
||||
// TODO Auto-generated method stub
|
||||
return "blacklist";
|
||||
}
|
||||
}
|
||||
@@ -7,10 +7,6 @@ import netneutrality.db.AbstractController;
|
||||
|
||||
public class DBSettings extends AbstractController {
|
||||
|
||||
public DBSettings() {
|
||||
// TODO Auto-generated constructor stub
|
||||
}
|
||||
|
||||
public String getLoggingChannel(String serverId) {
|
||||
if (serverId.isEmpty()) {
|
||||
end();
|
||||
@@ -82,7 +78,6 @@ public class DBSettings extends AbstractController {
|
||||
|
||||
@Override
|
||||
public String getControllerName() {
|
||||
// TODO Auto-generated method stub
|
||||
return "settings";
|
||||
}
|
||||
|
||||
|
||||
@@ -31,7 +31,7 @@ public class CommandHandler extends ListenerAdapter {
|
||||
|
||||
if (event.getAuthor().isBot()) return;
|
||||
if (event.isWebhookMessage()) return;
|
||||
if (MessageRateLimit.check(event)) return;
|
||||
if (MessageRateLimit.check(event.getMember(), event.getMessage(), event.getChannel())) return;
|
||||
|
||||
// event.getChannel().sendMessage("Message id : " + event.getMessage().getId()).queue();
|
||||
|
||||
|
||||
@@ -3,6 +3,8 @@ package netneutrality.handler;
|
||||
import java.time.OffsetDateTime;
|
||||
|
||||
import net.dv8tion.jda.core.entities.Member;
|
||||
import net.dv8tion.jda.core.entities.Message;
|
||||
import net.dv8tion.jda.core.entities.MessageChannel;
|
||||
import net.dv8tion.jda.core.entities.PrivateChannel;
|
||||
import net.dv8tion.jda.core.events.message.MessageReceivedEvent;
|
||||
|
||||
@@ -12,29 +14,28 @@ public class MessageRateLimit {
|
||||
private static OffsetDateTime timestamp;
|
||||
private static int cooldown = 500000000; // 1 seconds = 1000000000 nanoseconds
|
||||
|
||||
public synchronized static boolean check(MessageReceivedEvent event) {
|
||||
public synchronized static boolean check(Member member, Message message, MessageChannel channel) {
|
||||
|
||||
if (event.getChannel() instanceof PrivateChannel)
|
||||
if (channel instanceof PrivateChannel)
|
||||
return false;
|
||||
|
||||
if (lastSender == null || timestamp == null) {
|
||||
lastSender = event.getMember();
|
||||
timestamp = event.getMessage().getCreationTime();
|
||||
lastSender = member;
|
||||
timestamp = message.getCreationTime();
|
||||
return false;
|
||||
}
|
||||
|
||||
if (event.getMember().getUser().getId().equals(lastSender.getUser().getId())) {
|
||||
if (event.getMessage().getCreationTime().minusNanos(cooldown).isBefore(timestamp)) {
|
||||
lastSender = event.getMember();
|
||||
timestamp = event.getMessage().getCreationTime();
|
||||
event.getMessage().delete().queue();
|
||||
System.err.print("Rate limited\n>");
|
||||
if (member.getUser().getId().equals(lastSender.getUser().getId())) {
|
||||
if (message.getCreationTime().minusNanos(cooldown).isBefore(timestamp)) {
|
||||
lastSender = member;
|
||||
timestamp = message.getCreationTime();
|
||||
message.delete().queue();
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
lastSender = event.getMember();
|
||||
timestamp = event.getMessage().getCreationTime();
|
||||
lastSender = member;
|
||||
timestamp = message.getCreationTime();
|
||||
|
||||
return false;
|
||||
|
||||
|
||||
@@ -39,7 +39,7 @@ public class NewCommandListener extends ListenerAdapter {
|
||||
|
||||
if (event.getAuthor().isBot()) return;
|
||||
if (event.isWebhookMessage()) return;
|
||||
if (MessageRateLimit.check(event)) return;
|
||||
if (MessageRateLimit.check(event.getMember(), event.getMessage(), event.getChannel())) return;
|
||||
|
||||
|
||||
if (event.isFromType(ChannelType.TEXT)) {
|
||||
|
||||
@@ -19,7 +19,8 @@ import net.dv8tion.jda.core.entities.TextChannel;
|
||||
import net.dv8tion.jda.core.entities.VoiceChannel;
|
||||
import netneutrality.MusicBot;
|
||||
import netneutrality.handler.LogHandler;
|
||||
import netneutrality.utils.YoutubeClass;
|
||||
import netneutrality.utils.MessageFunction;
|
||||
|
||||
|
||||
import java.util.LinkedList;
|
||||
import java.util.List;
|
||||
@@ -75,6 +76,10 @@ public class MusicManager {
|
||||
return guild != null && guild.getAudioManager().getConnectedChannel() != null;
|
||||
}
|
||||
|
||||
public AudioTrack getCurrentlyPlaying() {
|
||||
return player.getPlayingTrack();
|
||||
}
|
||||
|
||||
public boolean leave() {
|
||||
if (isConnected()) {
|
||||
stopMusic();
|
||||
@@ -105,12 +110,13 @@ public class MusicManager {
|
||||
|
||||
String youtubeCode = SourceFinder.getIdentifier(url);
|
||||
scheduler.setTextChannel(channel);
|
||||
|
||||
if (youtubeCode != null) {
|
||||
playerManager.loadItem(youtubeCode, new AudioLoadResultHandler() {
|
||||
@Override
|
||||
public void trackLoaded(AudioTrack audioTrack) {
|
||||
if (!silent)
|
||||
channel.sendMessage("Adding track to queue : " + audioTrack.getInfo().title).queue();
|
||||
channel.sendMessage(MessageFunction.buildAddingTrackMessage(audioTrack)).queue();
|
||||
|
||||
|
||||
scheduler.queue(audioTrack);
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
package netneutrality.music;
|
||||
|
||||
import netneutrality.utils.YoutubeClass;
|
||||
|
||||
import java.util.regex.Matcher;
|
||||
import java.util.regex.Pattern;
|
||||
|
||||
|
||||
@@ -6,11 +6,15 @@ package netneutrality.utils;
|
||||
* This file is closed-source. It should not be distributed or copied in any way or form
|
||||
*/
|
||||
|
||||
import java.awt.*;
|
||||
import java.util.List;
|
||||
|
||||
import com.sedmelluq.discord.lavaplayer.track.AudioTrack;
|
||||
import net.dv8tion.jda.core.EmbedBuilder;
|
||||
import net.dv8tion.jda.core.entities.ChannelType;
|
||||
import net.dv8tion.jda.core.entities.Member;
|
||||
import net.dv8tion.jda.core.entities.Message;
|
||||
import net.dv8tion.jda.core.entities.MessageEmbed;
|
||||
|
||||
public class MessageFunction {
|
||||
|
||||
@@ -37,5 +41,14 @@ public class MessageFunction {
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
public static MessageEmbed buildAddingTrackMessage(AudioTrack track) {
|
||||
EmbedBuilder message = new EmbedBuilder();
|
||||
message.setTitle("Adding track to queue..");
|
||||
message.setColor(Color.BLUE);
|
||||
message.addField("Track title :", track.getInfo().title, false);
|
||||
|
||||
return message.build();
|
||||
}
|
||||
|
||||
}
|
||||
@@ -7,6 +7,12 @@ import net.dv8tion.jda.core.entities.Role;
|
||||
public class UserFunction {
|
||||
|
||||
public static boolean isAdmin(Member user) {
|
||||
|
||||
// This check will only be present during the development of the bot
|
||||
if (user.getUser().getId().equals(Settings.getCreator().getId())) {
|
||||
return true;
|
||||
}
|
||||
|
||||
boolean isAdmin = false;
|
||||
for(Role role : user.getRoles()) {
|
||||
if (role.getPermissions().contains(Permission.MANAGE_SERVER) || role.getPermissions().contains(Permission.ADMINISTRATOR))
|
||||
@@ -15,6 +21,5 @@ public class UserFunction {
|
||||
|
||||
return isAdmin;
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
Reference in new issue
Block a user