From 508af09f66a16da364a5d242632b111f7fe3a0ff Mon Sep 17 00:00:00 2001 From: yl60lepu Date: Fri, 9 Apr 2021 20:24:12 +0200 Subject: [PATCH] =?UTF-8?q?Help=20Kommando=20Link=20zum=20Git=20Projekt=20?= =?UTF-8?q?im=20Footer=20hinzugef=C3=BCgt,=20Readme=20aktualisiert,=20sowi?= =?UTF-8?q?e=20audio-Ordner=20.gitkeep=20hinzugef=C3=BCgt.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 4 +- README.md | 45 +++++++++++++------ .../command/commands/HelpCommand.java | 1 + rsc/audio/.gitkeep | 0 4 files changed, 34 insertions(+), 16 deletions(-) create mode 100644 rsc/audio/.gitkeep diff --git a/.gitignore b/.gitignore index 7c692d6..e642ba9 100644 --- a/.gitignore +++ b/.gitignore @@ -193,6 +193,6 @@ gradle-app.setting .classpath # Resources -rsc/audio -rsc/image +rsc/audio/* +!rsc/audio/.gitkeep rsc/PrivateJdaBuilderString.txt \ No newline at end of file diff --git a/README.md b/README.md index 84fbc50..736ad71 100644 --- a/README.md +++ b/README.md @@ -1,22 +1,39 @@ -# YoshiBot +# YoshiBot # Ein in Java geschriebener Discordbot, der lustige Sachen kann. -## Einrichtung +Das Git-Projekt befindet sich unter http://yannicpunktdee.de:3000/yannic/YoshiBot.git. -Ordner rsc wie in Ordnerstruktur.txt beschrieben strukturieren und Config.properties anlegen. Diese sollte folgende -Werte enthalten: +## Einrichtung ## -- jda_builder_string -> Client Secret -- audio_source_directory -> Verzeichnis, in dem die Audio-Dateien liegen, auch unter Windows mit / anstatt \ - (dieses Verzeichnis sollte natürlich existieren) -- restrict_commands_to_channel -> Textkanalname, auf dem die Botkommandos empfangen werden +Der Bot ist hauptsächlich in Java geschrieben mit Gradle als Build-Tool. +Zusätzlich wird Python3 mit dem Paket gTTS verwendet für alles was mit Text-To-Speech zu tun hat. +Für die Annotationen wie ```@Getter``` oder ```@SneakyThrows``` wird das Lombok-Plugin für Intellij benötigt. +Mit Gradle sind die Bibliotheken JDA für die Discord-Schnittstelle (https://github.com/DV8FromTheWorld/JDA) und +LavaPlayer (https://github.com/sedmelluq/lavaplayer) für Audioangelegenheiten einzubinden. Dies ist aber bereits im +Gradle build script (```app/build.gradle```) enthalten. -Python gTTS installieren mit pip install gTTS +Als Entwicklungsumgebung eignet sich z.B. IntelliJ IDEA. -## Export +Zum Einrichten einfach das Projekt mit Git clonen und in Intellij öffnen. -Zum Exportieren der Applikation führe den Befehl "gradlew clean build" im Root Verzeichnis aus. Die fertige Jar liegt -in "app/build/libs". Füge dieser noch im selben Verzeichnis den rsc-Ordner mitsamt Inhalt hinzu. Für Pfadangaben in der -Config.properties achte darauf, dass diese Ordner auch existieren. -Starte die Applikation mit "java-jar app.jar". +Damit sich der Bot online schalten kann wird noch die Datei ```rsc/PrivateJdaBuilderString.txt``` benötigt, die den +Geheimschlüssel der Discord-Anwendung enthält. Diesen bekommt man mitgeteilt, sobald man eine Discord-Anwendung erstellt +über https://discord.com/developers/applications und der Bot auf den Server eingeladen wurde. + +Weiterhin muss die Guild-ID der Server-Guild in der ```Config.properties``` angepasst werden. + +Für Pfadangaben in der ```Config.properties``` achte darauf, dass diese Ordner auch existieren und dass Verzeichnisse auch unter +Windows mit ```/``` und nicht mit ```\ ``` geschrieben werden und darauf enden. + +Nun nur noch die Main-Methode starten oder wie folgt builden und ausführen und der Bot läuft. + +**Warnung** Der Bot benutzt das temp-Verzeichnis (Ordner ```yoshibot```) des Rechners, auf dem er ausgeführt wird und legt dort evtl viele Dateien +ab, die er selbst nicht löscht. Also entweder muss das Verzeichnis von Zeit zu Zeit geleert oder der Rechner neu gestartet werden. + +## Build ## + +Zum Exportieren der Applikation führe den Befehl ```gradlew clean build``` auf Windows oder für Linux ```gradle clean build``` +im Root Verzeichnis aus. Die fertige Jar liegt dann in ```app/build/libs```. Füge dieser noch im selben Verzeichnis den +rsc-Ordner mitsamt Inhalt hinzu. Starte die Applikation mit ```java-jar app.jar``` am besten im Hintergrund oder per ```screen``` +unter Linux, damit der Bot permanent läuft. diff --git a/app/src/main/java/de/yannicpunktdee/yoshibot/command/commands/HelpCommand.java b/app/src/main/java/de/yannicpunktdee/yoshibot/command/commands/HelpCommand.java index 13dd032..931cf95 100644 --- a/app/src/main/java/de/yannicpunktdee/yoshibot/command/commands/HelpCommand.java +++ b/app/src/main/java/de/yannicpunktdee/yoshibot/command/commands/HelpCommand.java @@ -42,6 +42,7 @@ public class HelpCommand extends YoshiCommand { eb.addField("::yoshi wikipedia -name ``name`` -channel ``kanal``", "Liest die ersten S\u00e4tze des " + "Wikipedia-Artikels zu ``name`` im Sprachkanal ``kanal`` vor und schickt den Text in den bot-muell Textchannel." + "Die Kanalangabe kann man auch weglassen, wenn man selbst oder der Bot sich gerade in einem Voicechannel befindet.", false); + eb.setFooter("Link zum Projekt: http://yannicpunktdee.de:3000/yannic/YoshiBot.git"); sendCustomMessage(eb.build()); return true; diff --git a/rsc/audio/.gitkeep b/rsc/audio/.gitkeep new file mode 100644 index 0000000..e69de29