diff --git a/.travis.yml b/.travis.yml index 28d0f81..f7aeaa3 100644 --- a/.travis.yml +++ b/.travis.yml @@ -11,6 +11,12 @@ after_success: - wget https://raw.githubusercontent.com/DiscordHooks/travis-ci-discord-webhook/master/send.sh - chmod +x send.sh - ./send.sh success $WEBHOOK_URL + - mvn clean compile assembly:single + - cd target + - sshpass -p $SFTP_PASSWORD scp -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -r Hadder-Build.jar $SFTP_USER@$SFTP_IP:/home/Bots/Hadder-Build.jar + - echo $? + - sshpass -p $SFTP_PASSWORD ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null $SFTP_IP /home/Bots/deploy.sh + - echo $? after_failure: - wget https://raw.githubusercontent.com/DiscordHooks/travis-ci-discord-webhook/master/send.sh diff --git a/pom.xml b/pom.xml index b900e3b..bb0869f 100644 --- a/pom.xml +++ b/pom.xml @@ -19,7 +19,7 @@ junit junit - LATEST + 4.12 test @@ -35,22 +35,22 @@ com.rethinkdb rethinkdb-driver - LATEST + 2.3.3 com.google.code.gson gson - LATEST + 2.8.6 org.slf4j slf4j-api - 1.7.5 + 1.7.29 org.slf4j slf4j-simple - 1.6.4 + 1.7.29 @@ -71,21 +71,26 @@ maven-resources-plugin - 3.0.2 + 3.1.0 maven-compiler-plugin - 3.8.0 + 3.8.1 maven-surefire-plugin - 2.22.1 + 2.22.2 maven-jar-plugin - 3.0.2 + 3.1.2 Hadder-Build + + + com.bbn.hadder.Hadder + + @@ -98,7 +103,7 @@ maven-site-plugin - 3.7.1 + 3.8.2 maven-project-info-reports-plugin @@ -123,6 +128,21 @@ 12 + + maven-assembly-plugin + + Hadder-Build + + + com.bbn.hadder.Hadder + + + + jar-with-dependencies + + false + + - \ No newline at end of file + diff --git a/src/main/java/com/bbn/hadder/Hadder.java b/src/main/java/com/bbn/hadder/Hadder.java index 3b44930..1da65ee 100644 --- a/src/main/java/com/bbn/hadder/Hadder.java +++ b/src/main/java/com/bbn/hadder/Hadder.java @@ -4,6 +4,7 @@ import com.bbn.hadder.commands.general.*; import com.bbn.hadder.commands.fun.GifCommand; import com.bbn.hadder.commands.misc.GitHubCommand; import com.bbn.hadder.commands.moderation.*; +import com.bbn.hadder.commands.owner.RebootCommand; import com.bbn.hadder.commands.owner.ShutdownCommand; import com.bbn.hadder.commands.owner.TestCommand; import com.bbn.hadder.commands.settings.PrefixCommand; @@ -24,7 +25,10 @@ import java.util.List; public class Hadder { public static void main(String[] args) { + startBot(); + } + public static void startBot() { File configfile = new File("./config.json"); if (!configfile.exists()) { System.err.println("No Config File Found!"); @@ -43,12 +47,12 @@ public class Hadder { DefaultShardManagerBuilder builder = new DefaultShardManagerBuilder(); builder.setShardsTotal(1); - builder.setActivity(Activity.streaming("auf dem BigBotNetwork", "https://twitch.tv/BigBotNetwork")); + builder.setActivity(Activity.streaming("on the BigBotNetwork", "https://twitch.tv/BigBotNetwork")); builder.setToken(config.getString("Token")); - CommandHandler.cmdlist.addAll(List.of(new HelpCommand(), new TestCommand(), new BanCommand(), new PrefixCommand(), new ShutdownCommand(), new KickCommand(), new PingCommand(), new GifCommand(), new ClearCommand(), new GitHubCommand())); - + CommandHandler.cmdlist.addAll(List.of(new HelpCommand(), new TestCommand(), new BanCommand(), new PrefixCommand(), new ShutdownCommand(), new KickCommand(), new PingCommand(), new GifCommand(), new ClearCommand(), new GitHubCommand(), new RebootCommand())); + builder.addEventListeners( new MentionListener(), new PrivateMessageListener(), @@ -61,7 +65,5 @@ public class Hadder { } catch (LoginException e) { e.printStackTrace(); } - } - } diff --git a/src/main/java/com/bbn/hadder/commands/owner/RebootCommand.java b/src/main/java/com/bbn/hadder/commands/owner/RebootCommand.java new file mode 100644 index 0000000..2e4c609 --- /dev/null +++ b/src/main/java/com/bbn/hadder/commands/owner/RebootCommand.java @@ -0,0 +1,44 @@ +package com.bbn.hadder.commands.owner; + +/* + * @author Skidder / GregTCLTK + */ + +import com.bbn.hadder.Rethink; +import com.bbn.hadder.commands.Command; +import com.bbn.hadder.utils.MessageEditor; +import net.dv8tion.jda.api.EmbedBuilder; +import net.dv8tion.jda.api.events.message.MessageReceivedEvent; + +import java.util.Timer; +import java.util.TimerTask; + +import static com.bbn.hadder.Hadder.startBot; + +public class RebootCommand implements Command { + + @Override + public void executed(String[] args, MessageReceivedEvent event) { + if (event.getAuthor().getId().equals("477141528981012511") || event.getAuthor().getId().equals("261083609148948488")) { + + } else { + EmbedBuilder builder = new EmbedBuilder(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.Messagetype.NO_PERMISSION, builder).build()).queue(); + } + } + + @Override + public String[] labels() { + return new String[]{"restart"}; + } + + @Override + public String description() { + return "Restart the bot"; + } + + @Override + public String usage() { + return labels()[0]; + } +} diff --git a/src/main/java/com/bbn/hadder/listener/GuildListener.java b/src/main/java/com/bbn/hadder/listener/GuildListener.java index abcb264..2ac0825 100644 --- a/src/main/java/com/bbn/hadder/listener/GuildListener.java +++ b/src/main/java/com/bbn/hadder/listener/GuildListener.java @@ -7,6 +7,7 @@ package com.bbn.hadder.listener; import com.bbn.hadder.Rethink; import com.bbn.hadder.utils.MessageEditor; import net.dv8tion.jda.api.EmbedBuilder; +import net.dv8tion.jda.api.entities.User; import net.dv8tion.jda.api.events.guild.GuildJoinEvent; import net.dv8tion.jda.api.events.guild.GuildLeaveEvent; import net.dv8tion.jda.api.events.guild.member.GuildMemberJoinEvent; @@ -17,6 +18,12 @@ import java.time.Instant; public class GuildListener extends ListenerAdapter { public void onGuildJoin(GuildJoinEvent event) { + for (User user : event.getJDA().getUsers()) { + if (!user.getId().equals(event.getJDA().getSelfUser().getId())) { + Rethink.insertUser(user.getId()); + } + } + Rethink.insertServer(event.getGuild().getId()); EmbedBuilder builder = new EmbedBuilder(); event.getJDA().getTextChannelById("475722540140986369").sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.Messagetype.INFO, builder)