Compare commits
61 commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
b31780588a | ||
|
|
dd288bf847 | ||
|
|
7cd8942c41 | ||
|
|
0f23a0ba16 | ||
|
|
93daeebb12 | ||
|
|
111844a273 | ||
|
|
1c9db1d35d | ||
|
|
69ed1b95a9 | ||
|
|
b8d666faa7 | ||
|
|
a24f1d0188 | ||
|
|
44890b70a6 | ||
|
|
be7eae412c | ||
|
|
18996a515a | ||
|
|
989c083391 | ||
|
|
3fa4b73625 | ||
|
|
208e0e8734 | ||
|
|
7ad69136ae | ||
|
|
90ff9d65af | ||
|
|
040e3ebeee | ||
|
|
866ebd5d7c | ||
|
|
37a0ca300d | ||
|
|
af8334761b | ||
|
|
368e00044b | ||
|
|
3c1e3e5d1e | ||
|
|
8760a5221e | ||
|
|
aaeb89da89 | ||
|
|
6557fe795e | ||
|
|
64d5b9946f | ||
|
|
a06f4631b3 | ||
|
|
b935b09ee4 | ||
|
|
bbf35b213c | ||
|
|
f22ebda2ec | ||
|
|
d9e6117106 | ||
|
|
2d995e632b | ||
|
|
fb70b271b3 | ||
|
|
0a502c5d14 | ||
|
|
9a3c8c969a | ||
|
|
a70191cab2 | ||
|
|
faab0719fc | ||
|
|
af937e7d11 | ||
|
|
da7c5e62da | ||
|
|
e9de80f756 | ||
|
|
5cec18d7ea | ||
|
|
c90a0a9ba8 | ||
|
|
517475dfb3 | ||
|
|
d2a5ed0713 | ||
|
|
7f40c41183 | ||
|
|
07f4edd17f | ||
|
|
e8093512fe | ||
|
|
fe6cdb3d5f | ||
|
|
fe0edb7bc1 | ||
|
|
1a4171b978 | ||
|
|
7a1954ca73 | ||
|
|
acaf7fc272 | ||
|
|
b45b6f269d | ||
|
|
66cded9d7d | ||
|
|
45eb227d22 | ||
|
|
5640e88cbe | ||
|
|
c526bbbeea | ||
|
|
b993c563c0 | ||
|
|
544e34b415 |
21 changed files with 963 additions and 501 deletions
4
.gitignore
vendored
4
.gitignore
vendored
|
|
@ -24,5 +24,7 @@ hs_err_pid*
|
||||||
*.xml
|
*.xml
|
||||||
|
|
||||||
SECRETS.java
|
SECRETS.java
|
||||||
SECRETSsss.java
|
|
||||||
|
.idea
|
||||||
|
|
||||||
Discord-Data-Mining.iml
|
Discord-Data-Mining.iml
|
||||||
|
|
|
||||||
BIN
Diagramm.jpg
BIN
Diagramm.jpg
Binary file not shown.
|
Before Width: | Height: | Size: 2.2 KiB |
|
|
@ -1,2 +1,4 @@
|
||||||
# Discord-Data-Mining
|
# Discord-Data-Mining
|
||||||
The official Discord-Data-Mining
|
The official Discord-Data-Mining Rewrite
|
||||||
|
|
||||||
|
<a href="https://discord.gg/nPwjaJk"><img src="https://discord.com/api/guilds/757966278936756345/embed.png"/></a>
|
||||||
|
|
|
||||||
27
pom.xml
27
pom.xml
|
|
@ -6,15 +6,15 @@
|
||||||
|
|
||||||
<groupId>Discord-Data-Mining</groupId>
|
<groupId>Discord-Data-Mining</groupId>
|
||||||
<artifactId>Discord-Data-Mining</artifactId>
|
<artifactId>Discord-Data-Mining</artifactId>
|
||||||
<version>1.0-SNAPSHOT</version>
|
<version>2.0</version>
|
||||||
<build>
|
<build>
|
||||||
<plugins>
|
<plugins>
|
||||||
<plugin>
|
<plugin>
|
||||||
<groupId>org.apache.maven.plugins</groupId>
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
<artifactId>maven-compiler-plugin</artifactId>
|
<artifactId>maven-compiler-plugin</artifactId>
|
||||||
<configuration>
|
<configuration>
|
||||||
<source>1.9</source>
|
<source>15</source>
|
||||||
<target>1.9</target>
|
<target>15</target>
|
||||||
</configuration>
|
</configuration>
|
||||||
</plugin>
|
</plugin>
|
||||||
</plugins>
|
</plugins>
|
||||||
|
|
@ -26,21 +26,22 @@
|
||||||
<name>jcenter-bintray</name>
|
<name>jcenter-bintray</name>
|
||||||
<url>http://jcenter.bintray.com</url>
|
<url>http://jcenter.bintray.com</url>
|
||||||
</repository>
|
</repository>
|
||||||
<repository>
|
|
||||||
<id>jitpack.io</id>
|
|
||||||
<url>https://jitpack.io</url>
|
|
||||||
</repository>
|
|
||||||
</repositories>
|
</repositories>
|
||||||
<dependencies>
|
<dependencies>
|
||||||
<dependency>
|
|
||||||
<groupId>com.rethinkdb</groupId>
|
|
||||||
<artifactId>rethinkdb-driver</artifactId>
|
|
||||||
<version>LATEST</version>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>net.dv8tion</groupId>
|
<groupId>net.dv8tion</groupId>
|
||||||
<artifactId>JDA</artifactId>
|
<artifactId>JDA</artifactId>
|
||||||
<version>LATEST</version>
|
<version>4.2.0_247</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.slf4j</groupId>
|
||||||
|
<artifactId>slf4j-api</artifactId>
|
||||||
|
<version>1.7.31</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.slf4j</groupId>
|
||||||
|
<artifactId>slf4j-simple</artifactId>
|
||||||
|
<version>1.7.31</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
</dependencies>
|
</dependencies>
|
||||||
</project>
|
</project>
|
||||||
|
|
|
||||||
|
|
@ -1,3 +0,0 @@
|
||||||
Manifest-Version: 1.0
|
|
||||||
Main-Class: discord.data.mining.Main
|
|
||||||
|
|
||||||
59
src/main/java/discord/data/mining/DataMining.java
Normal file
59
src/main/java/discord/data/mining/DataMining.java
Normal file
|
|
@ -0,0 +1,59 @@
|
||||||
|
package discord.data.mining;
|
||||||
|
|
||||||
|
import discord.data.mining.listener.GenericEventListener;
|
||||||
|
import discord.data.mining.listener.MessageListener;
|
||||||
|
import discord.data.mining.listener.ReadyListener;
|
||||||
|
import net.dv8tion.jda.api.AccountType;
|
||||||
|
import net.dv8tion.jda.api.JDA;
|
||||||
|
import net.dv8tion.jda.api.JDABuilder;
|
||||||
|
import net.dv8tion.jda.api.utils.ChunkingFilter;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
|
||||||
|
import static discord.data.mining.SECRETS.*;
|
||||||
|
|
||||||
|
public class DataMining {
|
||||||
|
|
||||||
|
public static String MessageLog = "462507170383134720";
|
||||||
|
public static String ReactionLog = "462524422713245696";
|
||||||
|
public static String UserLog = "655416028620128262";
|
||||||
|
public static String ConsoleLog = "462556910206320640";
|
||||||
|
public static String ChannelLog = "655494752506216475";
|
||||||
|
public static String GuildLog = "655714414976040961";
|
||||||
|
public static String MemberLog = "656026530190983188";
|
||||||
|
public static String ActivityLog = "656028905802694666";
|
||||||
|
public static ArrayList<JDA> clients = new ArrayList<>();
|
||||||
|
public static ArrayList<JDA> bots = new ArrayList<>();
|
||||||
|
private static ArrayList<JDA> manager = new ArrayList<>();
|
||||||
|
public static int bot = 0;
|
||||||
|
|
||||||
|
public static void main(String[] args) {
|
||||||
|
try {
|
||||||
|
for (String Token : managerTokens) {
|
||||||
|
manager.add(new JDABuilder(AccountType.BOT).setAutoReconnect(true).setToken(Token).addEventListeners(new MessageListener()).build());
|
||||||
|
}
|
||||||
|
|
||||||
|
Thread.sleep(1500);
|
||||||
|
|
||||||
|
startMining();
|
||||||
|
|
||||||
|
} catch (Exception e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void startMining() {
|
||||||
|
try {
|
||||||
|
for (String Token : botTokens) {
|
||||||
|
bots.add(new JDABuilder(AccountType.BOT).setAutoReconnect(true).setToken(Token).build());
|
||||||
|
}
|
||||||
|
|
||||||
|
for (String Token : clientTokens) {
|
||||||
|
clients.add(new JDABuilder(AccountType.CLIENT).setToken(Token).setAutoReconnect(true).setChunkingFilter(ChunkingFilter.NONE).addEventListeners(new ReadyListener(), new GenericEventListener()).build());
|
||||||
|
}
|
||||||
|
|
||||||
|
} catch (Exception e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -1,31 +0,0 @@
|
||||||
package discord.data.mining;
|
|
||||||
|
|
||||||
import com.rethinkdb.net.Connection;
|
|
||||||
|
|
||||||
import static com.rethinkdb.RethinkDB.r;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @author Hax
|
|
||||||
* @github github.com/Schlauer-Hax
|
|
||||||
* @time 19:40 07.08.2018
|
|
||||||
* @project Discord-Data-Mining
|
|
||||||
* @package discord.data.mining
|
|
||||||
* @class Database
|
|
||||||
**/
|
|
||||||
|
|
||||||
public class Database {
|
|
||||||
|
|
||||||
static Connection conn;
|
|
||||||
|
|
||||||
public static void connect() {
|
|
||||||
conn = r.connection()
|
|
||||||
.hostname("localhost")
|
|
||||||
.db("DM")
|
|
||||||
.port(28015)
|
|
||||||
.connect();
|
|
||||||
}
|
|
||||||
|
|
||||||
public static Connection getConn() {
|
|
||||||
return conn;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -1,22 +0,0 @@
|
||||||
package discord.data.mining.Listener;
|
|
||||||
|
|
||||||
import discord.data.mining.Main;
|
|
||||||
import discord.data.mining.sendMessage;
|
|
||||||
import net.dv8tion.jda.api.events.Event;
|
|
||||||
import net.dv8tion.jda.api.hooks.ListenerAdapter;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @author GregTCLTK
|
|
||||||
* @time 21:22 29.06.2018
|
|
||||||
* @project Discord-Data-Mining
|
|
||||||
* @package discord.data.mining.Listener
|
|
||||||
* @class onReactionAdd
|
|
||||||
**/
|
|
||||||
|
|
||||||
public class GenericEventListener extends ListenerAdapter {
|
|
||||||
|
|
||||||
public void onGenericEvent(Event event) {
|
|
||||||
Main.Actionperh++;
|
|
||||||
sendMessage.sendMessage(event);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -1,34 +0,0 @@
|
||||||
package discord.data.mining.Listener;
|
|
||||||
|
|
||||||
import discord.data.mining.Main;
|
|
||||||
import net.dv8tion.jda.api.JDA;
|
|
||||||
import net.dv8tion.jda.api.events.message.MessageReceivedEvent;
|
|
||||||
import net.dv8tion.jda.api.hooks.ListenerAdapter;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @author GregTCLTK
|
|
||||||
* @time 09:42 01.07.2018
|
|
||||||
* @project Discord-Data-Mining
|
|
||||||
* @package discord.data.mining.Listener
|
|
||||||
* @class MessageReceivedListener
|
|
||||||
**/
|
|
||||||
|
|
||||||
public class MessageReceivedListener extends ListenerAdapter {
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onMessageReceived(MessageReceivedEvent event) {
|
|
||||||
if (event.getAuthor().getId().contains("401817301919465482") || event.getAuthor().getId().contains("261083609148948488")) {
|
|
||||||
if (event.getMessage().getContentRaw().equals("dm!shutdown") || (event.getMessage().getContentRaw().equals("dm!stop"))) {
|
|
||||||
|
|
||||||
for (JDA Bots : Main.bots) {
|
|
||||||
Bots.shutdown();
|
|
||||||
}
|
|
||||||
for (JDA Clients : Main.clients) {
|
|
||||||
Clients.shutdown();
|
|
||||||
}
|
|
||||||
} else if (event.getMessage().getContentRaw().equals("dm!start")) {
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -1,42 +0,0 @@
|
||||||
package discord.data.mining.Listener;
|
|
||||||
|
|
||||||
import discord.data.mining.Logger;
|
|
||||||
import discord.data.mining.Main;
|
|
||||||
import net.dv8tion.jda.api.JDA;
|
|
||||||
import net.dv8tion.jda.api.entities.Guild;
|
|
||||||
import net.dv8tion.jda.api.events.ReadyEvent;
|
|
||||||
import net.dv8tion.jda.api.hooks.ListenerAdapter;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @author Hax
|
|
||||||
* @time 12:04 30.06.2018
|
|
||||||
* @project Discord-Data-Mining
|
|
||||||
* @package discord.data.mining.Listener
|
|
||||||
* @class ReadyListener
|
|
||||||
**/
|
|
||||||
|
|
||||||
public class ReadyListener extends ListenerAdapter {
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onReady(ReadyEvent event) {
|
|
||||||
Logger.info("Client " + event.getJDA().getSelfUser().getName() + "#" +event.getJDA().getSelfUser().getDiscriminator() + "\nGuilds: " + event.getJDA().getGuilds().size() + "\nUser: " + event.getJDA().getUsers().size());
|
|
||||||
Main.onlineclients.add(event.getJDA().getSelfUser().getName());
|
|
||||||
Logger.info("Arraylist size " + Main.onlineclients.size() + " " + Main.clients.size());
|
|
||||||
for (Guild guild : event.getJDA().getGuilds()) {
|
|
||||||
if (!Main.guilds.contains(guild)) {
|
|
||||||
Main.guilds.add(guild);
|
|
||||||
} else {
|
|
||||||
if (!guild.getId().contains("448554629282922527")) {
|
|
||||||
Logger.info("Leave" + guild.getName());
|
|
||||||
guild.leave().queue();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (Main.onlineclients.size() == Main.clients.size()) {
|
|
||||||
Logger.info("All clients loaded");
|
|
||||||
for (JDA jda : Main.clients) {
|
|
||||||
jda.addEventListener(new GenericEventListener());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -1,25 +0,0 @@
|
||||||
package discord.data.mining;
|
|
||||||
|
|
||||||
import net.dv8tion.jda.api.EmbedBuilder;
|
|
||||||
|
|
||||||
import java.text.SimpleDateFormat;
|
|
||||||
import java.time.Instant;
|
|
||||||
import java.util.Calendar;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @author GregTCLTK
|
|
||||||
* @time 21:26 30.06.2018
|
|
||||||
* @project Discord-Data-Mining
|
|
||||||
* @package discord.data.mining
|
|
||||||
* @class Logger
|
|
||||||
**/
|
|
||||||
|
|
||||||
public class Logger {
|
|
||||||
public static void info(String info) {
|
|
||||||
Calendar cal = Calendar.getInstance();
|
|
||||||
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");
|
|
||||||
String time = sdf.format(cal.getTime());
|
|
||||||
Main.manager.get(0).getTextChannelById(Main.ConsoleLog).sendMessage(new EmbedBuilder().setColor(65280).setTimestamp(Instant.now()).setDescription(info).build()).queue();
|
|
||||||
System.out.println("[" + time + "] " + info);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -1,50 +0,0 @@
|
||||||
package discord.data.mining;
|
|
||||||
|
|
||||||
import discord.data.mining.Listener.MessageReceivedListener;
|
|
||||||
import discord.data.mining.Listener.ReadyListener;
|
|
||||||
import net.dv8tion.jda.api.AccountType;
|
|
||||||
import net.dv8tion.jda.api.JDA;
|
|
||||||
import net.dv8tion.jda.api.JDABuilder;
|
|
||||||
import net.dv8tion.jda.api.entities.Guild;
|
|
||||||
|
|
||||||
import java.util.*;
|
|
||||||
|
|
||||||
import static discord.data.mining.SECRETS.botTokens;
|
|
||||||
import static discord.data.mining.SECRETS.clienttokens;
|
|
||||||
import static discord.data.mining.SECRETS.managerTokens;
|
|
||||||
|
|
||||||
public class Main {
|
|
||||||
|
|
||||||
public static long MessageLog = 462507170383134720L;
|
|
||||||
public static long ReactionLog = 462524422713245696L;
|
|
||||||
public static long ConsoleLog = 462556910206320640L;
|
|
||||||
public static ArrayList<JDA> clients = new ArrayList<>();
|
|
||||||
public static ArrayList<JDA> bots = new ArrayList<>();
|
|
||||||
public static ArrayList<JDA> manager = new ArrayList<>();
|
|
||||||
public static int currentBot =0;
|
|
||||||
public static ArrayList<String> onlineclients = new ArrayList<>();
|
|
||||||
public static long Actionperh = 0;
|
|
||||||
public static ArrayList<Guild> guilds = new ArrayList<>();
|
|
||||||
|
|
||||||
public static void main(String[] args) {
|
|
||||||
try {
|
|
||||||
Database.connect();
|
|
||||||
for (String Token : managerTokens) {
|
|
||||||
manager.add(new JDABuilder(AccountType.BOT).setAutoReconnect(true).setToken(Token).addEventListeners(new MessageReceivedListener()).build());
|
|
||||||
}
|
|
||||||
|
|
||||||
Thread.sleep(1500);
|
|
||||||
|
|
||||||
onlinethread.main();
|
|
||||||
for (String Token : clienttokens) {
|
|
||||||
clients.add(new JDABuilder(AccountType.CLIENT).setToken(Token).addEventListeners(new ReadyListener()).setAutoReconnect(true).build());
|
|
||||||
}
|
|
||||||
for (String Token : botTokens) {
|
|
||||||
bots.add(new JDABuilder(AccountType.BOT).setAutoReconnect(true).setToken(Token).build());
|
|
||||||
}
|
|
||||||
Stats.start();
|
|
||||||
} catch (Exception e) {
|
|
||||||
e.printStackTrace();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -1,138 +0,0 @@
|
||||||
package discord.data.mining;
|
|
||||||
|
|
||||||
import javax.imageio.ImageIO;
|
|
||||||
import java.awt.*;
|
|
||||||
import java.awt.font.FontRenderContext;
|
|
||||||
import java.awt.font.LineMetrics;
|
|
||||||
import java.awt.geom.Ellipse2D;
|
|
||||||
import java.awt.geom.Line2D;
|
|
||||||
import java.awt.image.BufferedImage;
|
|
||||||
import java.io.*;
|
|
||||||
import java.util.*;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @author Hax
|
|
||||||
* @time 12:52 30.06.2018
|
|
||||||
* @project Discord-Data-Mining
|
|
||||||
* @package discord.data.mining
|
|
||||||
* @class Stats
|
|
||||||
**/
|
|
||||||
|
|
||||||
public class Stats {
|
|
||||||
|
|
||||||
public static void start() {
|
|
||||||
|
|
||||||
Thread diagramm = new Thread(() -> {
|
|
||||||
TimerTask timerTask = new TimerTask() {
|
|
||||||
@Override
|
|
||||||
public void run() {
|
|
||||||
Date date = new Date();
|
|
||||||
Calendar calendar = GregorianCalendar.getInstance();
|
|
||||||
calendar.setTime(date);
|
|
||||||
if (calendar.get(Calendar.MINUTE)==0) {
|
|
||||||
try {
|
|
||||||
FileReader fr = new FileReader("stats.txt");
|
|
||||||
BufferedReader br = new BufferedReader(fr);
|
|
||||||
|
|
||||||
String zeile = "";
|
|
||||||
StringBuilder stringBuilder = new StringBuilder();
|
|
||||||
while ((zeile = br.readLine()) != null) {
|
|
||||||
stringBuilder.append(zeile);
|
|
||||||
}
|
|
||||||
br.close();
|
|
||||||
|
|
||||||
String[] stats = stringBuilder.toString().split(" ");
|
|
||||||
String statsstring = stringBuilder.toString();
|
|
||||||
statsstring = statsstring.replaceFirst(stats[0]+" ", "");
|
|
||||||
statsstring = statsstring+" "+Main.Actionperh;
|
|
||||||
FileWriter fw = new FileWriter("stats.txt");
|
|
||||||
BufferedWriter bw = new BufferedWriter(fw);
|
|
||||||
bw.write(statsstring);
|
|
||||||
bw.close();
|
|
||||||
Main.Actionperh =0;
|
|
||||||
|
|
||||||
} catch (Exception e) {
|
|
||||||
e.printStackTrace();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (calendar.get(Calendar.HOUR_OF_DAY)==0&&calendar.get(Calendar.MINUTE)==0) {
|
|
||||||
try {
|
|
||||||
FileReader fr = new FileReader("stats.txt");
|
|
||||||
BufferedReader br = new BufferedReader(fr);
|
|
||||||
|
|
||||||
String zeile = "";
|
|
||||||
StringBuilder stringBuilder = new StringBuilder();
|
|
||||||
while ((zeile = br.readLine()) != null) {
|
|
||||||
stringBuilder.append(zeile);
|
|
||||||
}
|
|
||||||
br.close();
|
|
||||||
String[] datas = stringBuilder.toString().split(" ");
|
|
||||||
ArrayList<Integer> data = new ArrayList<>();
|
|
||||||
for (String dataa:datas) {
|
|
||||||
data.add(Integer.parseInt(dataa));
|
|
||||||
}
|
|
||||||
int max = -Integer.MAX_VALUE;
|
|
||||||
for (Integer aData : data) {
|
|
||||||
if (aData > max)
|
|
||||||
max = aData;
|
|
||||||
}
|
|
||||||
BufferedImage bufferedImage = ImageIO.read(new File("Diagramm.jpg"));
|
|
||||||
Graphics2D g2 = bufferedImage.createGraphics();
|
|
||||||
g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
|
|
||||||
RenderingHints.VALUE_ANTIALIAS_ON);
|
|
||||||
int w = bufferedImage.getWidth();
|
|
||||||
int h = bufferedImage.getHeight();
|
|
||||||
g2.draw(new Line2D.Double(24, 24, 24, h - 24));
|
|
||||||
g2.draw(new Line2D.Double(24, h - 24, w - 24, h - 24));
|
|
||||||
Font font = g2.getFont();
|
|
||||||
FontRenderContext frc = g2.getFontRenderContext();
|
|
||||||
LineMetrics lm = font.getLineMetrics("0", frc);
|
|
||||||
float sh = lm.getAscent() + lm.getDescent();
|
|
||||||
String s = "data";
|
|
||||||
float sy = 24 + ((h - 2 * 24) - s.length() * sh) / 2 + lm.getAscent();
|
|
||||||
for (int i = 0; i < s.length(); i++) {
|
|
||||||
String letter = String.valueOf(s.charAt(i));
|
|
||||||
float sw = (float) font.getStringBounds(letter, frc).getWidth();
|
|
||||||
float sx = (24 - sw) / 2;
|
|
||||||
g2.drawString(letter, sx, sy);
|
|
||||||
sy += sh;
|
|
||||||
}
|
|
||||||
s = "x axis";
|
|
||||||
sy = h - 24 + (24 - sh) / 2 + lm.getAscent();
|
|
||||||
float sw = (float) font.getStringBounds(s, frc).getWidth();
|
|
||||||
float sx = (w - sw) / 2;
|
|
||||||
g2.drawString(s, sx, sy);
|
|
||||||
// Draw lines.
|
|
||||||
double xInc = (double) (w - 2 * 24) / (data.size() - 1);
|
|
||||||
double scale = (double) (h - 2 * 24) / max;
|
|
||||||
g2.setPaint(Color.green.darker());
|
|
||||||
for (int i = 0; i < data.size() - 1; i++) {
|
|
||||||
double x1 = 24 + i * xInc;
|
|
||||||
double y1 = h - 24 - scale * data.get(i);
|
|
||||||
double x2 = 24 + (i + 1) * xInc;
|
|
||||||
double y2 = h - 24 - scale * data.get(i + 1);
|
|
||||||
g2.draw(new Line2D.Double(x1, y1, x2, y2));
|
|
||||||
}
|
|
||||||
// Mark data points.
|
|
||||||
g2.setPaint(Color.red);
|
|
||||||
for (int i = 0; i < data.size(); i++) {
|
|
||||||
double x = 24 + i * xInc;
|
|
||||||
double y = h - 24 - scale * data.get(i);
|
|
||||||
g2.fill(new Ellipse2D.Double(x - 2, y - 2, 4, 4));
|
|
||||||
}
|
|
||||||
ByteArrayOutputStream os = new ByteArrayOutputStream();
|
|
||||||
ImageIO.write(bufferedImage, "jpg", os);
|
|
||||||
Main.manager.get(0).getTextChannelById("462534066869370882").sendFile(new ByteArrayInputStream(os.toByteArray()), "test.jpg").queue();
|
|
||||||
} catch (Exception e) {
|
|
||||||
e.printStackTrace();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
};
|
|
||||||
new Timer().schedule(timerTask, 30000, 60000);
|
|
||||||
});
|
|
||||||
diagramm.start();
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
736
src/main/java/discord/data/mining/core/DataLog.java
Normal file
736
src/main/java/discord/data/mining/core/DataLog.java
Normal file
|
|
@ -0,0 +1,736 @@
|
||||||
|
package discord.data.mining.core;
|
||||||
|
|
||||||
|
import discord.data.mining.DataMining;
|
||||||
|
import net.dv8tion.jda.api.EmbedBuilder;
|
||||||
|
import net.dv8tion.jda.api.JDA;
|
||||||
|
import net.dv8tion.jda.api.events.GenericEvent;
|
||||||
|
import net.dv8tion.jda.api.events.channel.category.CategoryCreateEvent;
|
||||||
|
import net.dv8tion.jda.api.events.channel.category.CategoryDeleteEvent;
|
||||||
|
import net.dv8tion.jda.api.events.channel.category.update.CategoryUpdateNameEvent;
|
||||||
|
import net.dv8tion.jda.api.events.channel.store.StoreChannelCreateEvent;
|
||||||
|
import net.dv8tion.jda.api.events.channel.store.StoreChannelDeleteEvent;
|
||||||
|
import net.dv8tion.jda.api.events.channel.store.update.StoreChannelUpdateNameEvent;
|
||||||
|
import net.dv8tion.jda.api.events.channel.text.TextChannelCreateEvent;
|
||||||
|
import net.dv8tion.jda.api.events.channel.text.TextChannelDeleteEvent;
|
||||||
|
import net.dv8tion.jda.api.events.channel.text.update.TextChannelUpdateNameEvent;
|
||||||
|
import net.dv8tion.jda.api.events.channel.text.update.TextChannelUpdateTopicEvent;
|
||||||
|
import net.dv8tion.jda.api.events.channel.voice.VoiceChannelCreateEvent;
|
||||||
|
import net.dv8tion.jda.api.events.channel.voice.VoiceChannelDeleteEvent;
|
||||||
|
import net.dv8tion.jda.api.events.channel.voice.update.VoiceChannelUpdateNameEvent;
|
||||||
|
import net.dv8tion.jda.api.events.guild.GuildBanEvent;
|
||||||
|
import net.dv8tion.jda.api.events.guild.GuildUnbanEvent;
|
||||||
|
import net.dv8tion.jda.api.events.guild.member.GuildMemberJoinEvent;
|
||||||
|
import net.dv8tion.jda.api.events.guild.member.GuildMemberLeaveEvent;
|
||||||
|
import net.dv8tion.jda.api.events.guild.member.GuildMemberRoleAddEvent;
|
||||||
|
import net.dv8tion.jda.api.events.guild.member.GuildMemberRoleRemoveEvent;
|
||||||
|
import net.dv8tion.jda.api.events.guild.member.update.GuildMemberUpdateBoostTimeEvent;
|
||||||
|
import net.dv8tion.jda.api.events.guild.member.update.GuildMemberUpdateNicknameEvent;
|
||||||
|
import net.dv8tion.jda.api.events.guild.update.*;
|
||||||
|
import net.dv8tion.jda.api.events.message.MessageDeleteEvent;
|
||||||
|
import net.dv8tion.jda.api.events.message.MessageReceivedEvent;
|
||||||
|
import net.dv8tion.jda.api.events.message.react.MessageReactionAddEvent;
|
||||||
|
import net.dv8tion.jda.api.events.message.react.MessageReactionRemoveEvent;
|
||||||
|
import net.dv8tion.jda.api.events.user.UserActivityEndEvent;
|
||||||
|
import net.dv8tion.jda.api.events.user.UserActivityStartEvent;
|
||||||
|
import net.dv8tion.jda.api.events.user.update.*;
|
||||||
|
|
||||||
|
import java.awt.*;
|
||||||
|
import java.time.Instant;
|
||||||
|
|
||||||
|
public class DataLog {
|
||||||
|
|
||||||
|
public static void log(GenericEvent event) {
|
||||||
|
JDA BOT = DataMining.bots.get(DataMining.bot);
|
||||||
|
DataMining.bot++;
|
||||||
|
if (DataMining.bot == DataMining.bots.size()) DataMining.bot = 0;
|
||||||
|
if (event instanceof MessageReceivedEvent) {
|
||||||
|
MessageReceivedEvent msgevent = (MessageReceivedEvent) event;
|
||||||
|
if (!msgevent.getGuild().getId().equals("448554629282922527")) {
|
||||||
|
BOT.getTextChannelById(DataMining.MessageLog).sendMessage(new EmbedUtil().add()
|
||||||
|
.setThumbnail(msgevent.getGuild().getIconUrl())
|
||||||
|
.setAuthor(msgevent.getAuthor().getAsTag(), msgevent.getAuthor().getAvatarUrl(), msgevent.getAuthor().getAvatarUrl())
|
||||||
|
.setTitle("New Message")
|
||||||
|
.addField("Guild name", msgevent.getGuild().getName(), true)
|
||||||
|
.addField("Guild ID", msgevent.getGuild().getId(), true)
|
||||||
|
.addField("Guild owner", msgevent.getGuild().getOwner().getUser().getAsTag(), true)
|
||||||
|
.addField("Content", "```" + msgevent.getMessage().getContentDisplay() + "```", false)
|
||||||
|
.build()).queue();
|
||||||
|
}
|
||||||
|
} else if (event instanceof MessageDeleteEvent) {
|
||||||
|
MessageDeleteEvent msgevent = (MessageDeleteEvent) event;
|
||||||
|
if (!msgevent.getGuild().getId().equals("448554629282922527")) {
|
||||||
|
BOT.getTextChannelById(DataMining.MessageLog).sendMessage(new EmbedUtil().remove()
|
||||||
|
.setThumbnail(msgevent.getGuild().getIconUrl())
|
||||||
|
.setTitle("Message deleted")
|
||||||
|
.addField("Guild name", msgevent.getGuild().getName(), true)
|
||||||
|
.addField("Guild ID", msgevent.getGuild().getId(), true)
|
||||||
|
.addField("Guild owner", msgevent.getGuild().getOwner().getUser().getAsTag(), true)
|
||||||
|
.build()).queue();
|
||||||
|
}
|
||||||
|
} else if (event instanceof MessageReactionAddEvent) {
|
||||||
|
MessageReactionAddEvent revent = (MessageReactionAddEvent) event;
|
||||||
|
if (!revent.getGuild().getId().equals("448554629282922527")) {
|
||||||
|
BOT.getTextChannelById(DataMining.ReactionLog).sendMessage(new EmbedUtil().add()
|
||||||
|
.setThumbnail(revent.getGuild().getIconUrl())
|
||||||
|
.setAuthor(revent.getMember().getUser().getAsTag(), revent.getMember().getUser().getAvatarUrl(), revent.getMember().getUser().getAvatarUrl())
|
||||||
|
.setTitle("Reaction added")
|
||||||
|
.addField("Guild name", revent.getGuild().getName(), true)
|
||||||
|
.addField("Guild ID", revent.getGuild().getId(), true)
|
||||||
|
.addField("Guild owner", revent.getGuild().getOwner().getUser().getAsTag(), true)
|
||||||
|
.addField("Reaction", revent.getReaction().toString(), false)
|
||||||
|
.build()).queue();
|
||||||
|
}
|
||||||
|
} else if (event instanceof MessageReactionRemoveEvent) {
|
||||||
|
MessageReactionRemoveEvent revent = (MessageReactionRemoveEvent) event;
|
||||||
|
if (!revent.getGuild().getId().equals("448554629282922527")) {
|
||||||
|
BOT.getTextChannelById(DataMining.ReactionLog).sendMessage(new EmbedUtil().remove()
|
||||||
|
.setThumbnail(revent.getGuild().getIconUrl())
|
||||||
|
.setAuthor(revent.getMember().getUser().getAsTag(), revent.getMember().getUser().getAvatarUrl(), revent.getMember().getUser().getAvatarUrl())
|
||||||
|
.setTitle("Reaction removed")
|
||||||
|
.addField("Guild name", revent.getGuild().getName(), true)
|
||||||
|
.addField("Guild ID", revent.getGuild().getId(), true)
|
||||||
|
.addField("Guild owner", revent.getGuild().getOwner().getUser().getAsTag(), true)
|
||||||
|
.addField("Reaction", revent.getReaction().toString(), false)
|
||||||
|
.build()).queue();
|
||||||
|
}
|
||||||
|
} else if (event instanceof UserUpdateNameEvent) {
|
||||||
|
UserUpdateNameEvent uevent = (UserUpdateNameEvent) event;
|
||||||
|
BOT.getTextChannelById(DataMining.UserLog).sendMessage(new EmbedUtil().add()
|
||||||
|
.setThumbnail(uevent.getUser().getAvatarUrl())
|
||||||
|
.setAuthor(uevent.getUser().getAsTag(), uevent.getUser().getAvatarUrl(), uevent.getUser().getAvatarUrl())
|
||||||
|
.setTitle("User updated name")
|
||||||
|
.addField("Old name", uevent.getOldName(), true)
|
||||||
|
.addField("New name", uevent.getNewName(), true)
|
||||||
|
.build()).queue();
|
||||||
|
} else if (event instanceof UserUpdateDiscriminatorEvent) {
|
||||||
|
UserUpdateDiscriminatorEvent uevent = (UserUpdateDiscriminatorEvent) event;
|
||||||
|
BOT.getTextChannelById(DataMining.UserLog).sendMessage(new EmbedUtil().add()
|
||||||
|
.setThumbnail(uevent.getUser().getAvatarUrl())
|
||||||
|
.setAuthor(uevent.getUser().getAsTag(), uevent.getUser().getAvatarUrl(), uevent.getUser().getAvatarUrl())
|
||||||
|
.setTitle("User updated discriminator")
|
||||||
|
.addField("Old discriminator", uevent.getOldDiscriminator(), true)
|
||||||
|
.addField("New discriminator", uevent.getNewDiscriminator(), true)
|
||||||
|
.build()).queue();
|
||||||
|
} else if (event instanceof UserUpdateAvatarEvent) {
|
||||||
|
UserUpdateAvatarEvent uevent = (UserUpdateAvatarEvent) event;
|
||||||
|
try {
|
||||||
|
BOT.getTextChannelById(DataMining.UserLog).sendMessage(new EmbedUtil().add()
|
||||||
|
.setImage(uevent.getNewAvatarUrl())
|
||||||
|
.setThumbnail(uevent.getOldAvatarUrl())
|
||||||
|
.setAuthor(uevent.getUser().getAsTag(), uevent.getUser().getAvatarUrl(), uevent.getUser().getAvatarUrl())
|
||||||
|
.setTitle("User updated avatar")
|
||||||
|
.addField("New avatar ID", uevent.getNewAvatarId(), true)
|
||||||
|
.addField("Old avatar ID", uevent.getOldAvatarId(), true)
|
||||||
|
.build()).queue();
|
||||||
|
} catch (Exception ignore){}
|
||||||
|
} else if (event instanceof UserUpdateOnlineStatusEvent) {
|
||||||
|
UserUpdateOnlineStatusEvent uevent = (UserUpdateOnlineStatusEvent) event;
|
||||||
|
BOT.getTextChannelById(DataMining.UserLog).sendMessage(new EmbedUtil().add()
|
||||||
|
.setThumbnail(uevent.getUser().getAvatarUrl())
|
||||||
|
.setAuthor(uevent.getUser().getAsTag(), uevent.getUser().getAvatarUrl(), uevent.getUser().getAvatarUrl())
|
||||||
|
.setTitle("User updated online status")
|
||||||
|
.addField("New online status", uevent.getNewOnlineStatus().toString(), true)
|
||||||
|
.addField("Old online status", uevent.getOldOnlineStatus().toString(), true)
|
||||||
|
.build()).queue();
|
||||||
|
} else if (event instanceof UserActivityStartEvent) {
|
||||||
|
UserActivityStartEvent uevent = (UserActivityStartEvent) event;
|
||||||
|
BOT.getTextChannelById(DataMining.ActivityLog).sendMessage(new EmbedUtil().add()
|
||||||
|
.setThumbnail(uevent.getUser().getAvatarUrl())
|
||||||
|
.setAuthor(uevent.getUser().getAsTag(), uevent.getUser().getAvatarUrl(), uevent.getUser().getAvatarUrl())
|
||||||
|
.setTitle("User started playing")
|
||||||
|
.addField("New activity", uevent.getNewActivity().toString(), true)
|
||||||
|
.build()).queue();
|
||||||
|
} else if (event instanceof UserActivityEndEvent) {
|
||||||
|
UserActivityEndEvent uevent = (UserActivityEndEvent) event;
|
||||||
|
BOT.getTextChannelById(DataMining.ActivityLog).sendMessage(new EmbedUtil().remove()
|
||||||
|
.setThumbnail(uevent.getUser().getAvatarUrl())
|
||||||
|
.setAuthor(uevent.getUser().getAsTag(), uevent.getUser().getAvatarUrl(), uevent.getUser().getAvatarUrl())
|
||||||
|
.setTitle("User ended playing")
|
||||||
|
.addField("Old activity", uevent.getOldActivity().toString(), true)
|
||||||
|
.build()).queue();
|
||||||
|
} else if (event instanceof StoreChannelCreateEvent) {
|
||||||
|
StoreChannelCreateEvent cevent = (StoreChannelCreateEvent) event;
|
||||||
|
BOT.getTextChannelById(DataMining.ChannelLog).sendMessage(new EmbedUtil().add()
|
||||||
|
.setThumbnail(cevent.getChannel().getGuild().getIconUrl())
|
||||||
|
.setAuthor(cevent.getChannel().getGuild().getName(), cevent.getChannel().getGuild().getIconUrl(), cevent.getChannel().getGuild().getIconUrl())
|
||||||
|
.setTitle("Store channel created")
|
||||||
|
.addField("Guild name", cevent.getChannel().getGuild().getName(), true)
|
||||||
|
.addField("Guild ID", cevent.getChannel().getGuild().getId(), true)
|
||||||
|
.addField("Guild owner", cevent.getChannel().getGuild().getOwner().getUser().getAsTag(), true)
|
||||||
|
.addField("Channel name", cevent.getChannel().getName(), true)
|
||||||
|
.addField("Channel ID", cevent.getChannel().getId(), true)
|
||||||
|
.build()).queue();
|
||||||
|
} else if (event instanceof StoreChannelDeleteEvent) {
|
||||||
|
StoreChannelDeleteEvent cevent = (StoreChannelDeleteEvent) event;
|
||||||
|
BOT.getTextChannelById(DataMining.ChannelLog).sendMessage(new EmbedUtil().remove()
|
||||||
|
.setThumbnail(cevent.getChannel().getGuild().getIconUrl())
|
||||||
|
.setAuthor(cevent.getChannel().getGuild().getName(), cevent.getChannel().getGuild().getIconUrl(), cevent.getChannel().getGuild().getIconUrl())
|
||||||
|
.setTitle("Store channel deleted")
|
||||||
|
.addField("Guild name", cevent.getChannel().getGuild().getName(), true)
|
||||||
|
.addField("Guild ID", cevent.getChannel().getGuild().getId(), true)
|
||||||
|
.addField("Guild owner", cevent.getChannel().getGuild().getOwner().getUser().getAsTag(), true)
|
||||||
|
.addField("Channel name", cevent.getChannel().getName(), true)
|
||||||
|
.addField("Channel ID", cevent.getChannel().getId(), true)
|
||||||
|
.build()).queue();
|
||||||
|
} else if (event instanceof StoreChannelUpdateNameEvent) {
|
||||||
|
StoreChannelUpdateNameEvent cevent = (StoreChannelUpdateNameEvent) event;
|
||||||
|
BOT.getTextChannelById(DataMining.ChannelLog).sendMessage(new EmbedUtil().update()
|
||||||
|
.setThumbnail(cevent.getChannel().getGuild().getIconUrl())
|
||||||
|
.setAuthor(cevent.getChannel().getGuild().getName(), cevent.getChannel().getGuild().getIconUrl(), cevent.getChannel().getGuild().getIconUrl())
|
||||||
|
.setTitle("Store channel name updated")
|
||||||
|
.addField("Guild name", cevent.getChannel().getGuild().getName(), true)
|
||||||
|
.addField("Guild ID", cevent.getChannel().getGuild().getId(), true)
|
||||||
|
.addField("Guild owner", cevent.getChannel().getGuild().getOwner().getUser().getAsTag(), true)
|
||||||
|
.addField("Old name", cevent.getOldName(), true)
|
||||||
|
.addField("New name", cevent.getNewName(), true)
|
||||||
|
.addField("Channel ID", cevent.getChannel().getId(), true)
|
||||||
|
.build()).queue();
|
||||||
|
} else if (event instanceof TextChannelCreateEvent) {
|
||||||
|
TextChannelCreateEvent cevent = (TextChannelCreateEvent) event;
|
||||||
|
BOT.getTextChannelById(DataMining.ChannelLog).sendMessage(new EmbedBuilder()
|
||||||
|
.setColor(Color.GREEN)
|
||||||
|
.setTimestamp(Instant.now())
|
||||||
|
.setThumbnail(cevent.getChannel().getGuild().getIconUrl())
|
||||||
|
.setAuthor(cevent.getChannel().getGuild().getName(), cevent.getChannel().getGuild().getIconUrl(), cevent.getChannel().getGuild().getIconUrl())
|
||||||
|
.setTitle("Text channel created")
|
||||||
|
.addField("Guild name", cevent.getChannel().getGuild().getName(), true)
|
||||||
|
.addField("Guild ID", cevent.getChannel().getGuild().getId(), true)
|
||||||
|
.addField("Guild owner", cevent.getChannel().getGuild().getOwner().getUser().getAsTag(), true)
|
||||||
|
.addField("Channel name", cevent.getChannel().getName(), true)
|
||||||
|
.addField("Channel ID", cevent.getChannel().getId(), true)
|
||||||
|
.setFooter("BBN Data Mining", "https://bbn.one/images/avatar.png")
|
||||||
|
.build()).queue();
|
||||||
|
} else if (event instanceof TextChannelDeleteEvent) {
|
||||||
|
TextChannelDeleteEvent cevent = (TextChannelDeleteEvent) event;
|
||||||
|
BOT.getTextChannelById(DataMining.ChannelLog).sendMessage(new EmbedBuilder()
|
||||||
|
.setColor(Color.RED)
|
||||||
|
.setTimestamp(Instant.now())
|
||||||
|
.setThumbnail(cevent.getChannel().getGuild().getIconUrl())
|
||||||
|
.setAuthor(cevent.getChannel().getGuild().getName(), cevent.getChannel().getGuild().getIconUrl(), cevent.getChannel().getGuild().getIconUrl())
|
||||||
|
.setTitle("Text channel deleted")
|
||||||
|
.addField("Guild name", cevent.getChannel().getGuild().getName(), true)
|
||||||
|
.addField("Guild ID", cevent.getChannel().getGuild().getId(), true)
|
||||||
|
.addField("Guild owner", cevent.getChannel().getGuild().getOwner().getUser().getAsTag(), true)
|
||||||
|
.addField("Channel name", cevent.getChannel().getName(), true)
|
||||||
|
.addField("Channel ID", cevent.getChannel().getId(), true)
|
||||||
|
.setFooter("BBN Data Mining", "https://bbn.one/images/avatar.png")
|
||||||
|
.build()).queue();
|
||||||
|
} else if (event instanceof TextChannelUpdateNameEvent) {
|
||||||
|
TextChannelUpdateNameEvent cevent = (TextChannelUpdateNameEvent) event;
|
||||||
|
BOT.getTextChannelById(DataMining.ChannelLog).sendMessage(new EmbedBuilder()
|
||||||
|
.setColor(Color.YELLOW)
|
||||||
|
.setTimestamp(Instant.now())
|
||||||
|
.setThumbnail(cevent.getChannel().getGuild().getIconUrl())
|
||||||
|
.setAuthor(cevent.getChannel().getGuild().getName(), cevent.getChannel().getGuild().getIconUrl(), cevent.getChannel().getGuild().getIconUrl())
|
||||||
|
.setTitle("Text channel name updated")
|
||||||
|
.addField("Guild name", cevent.getChannel().getGuild().getName(), true)
|
||||||
|
.addField("Guild ID", cevent.getChannel().getGuild().getId(), true)
|
||||||
|
.addField("Guild owner", cevent.getChannel().getGuild().getOwner().getUser().getAsTag(), true)
|
||||||
|
.addField("Old name", cevent.getOldName(), true)
|
||||||
|
.addField("New name", cevent.getNewName(), true)
|
||||||
|
.addField("Channel ID", cevent.getChannel().getId(), true)
|
||||||
|
.setFooter("BBN Data Mining", "https://bbn.one/images/avatar.png")
|
||||||
|
.build()).queue();
|
||||||
|
} else if (event instanceof TextChannelUpdateTopicEvent) {
|
||||||
|
TextChannelUpdateTopicEvent cevent = (TextChannelUpdateTopicEvent) event;
|
||||||
|
BOT.getTextChannelById(DataMining.ChannelLog).sendMessage(new EmbedBuilder()
|
||||||
|
.setColor(Color.YELLOW)
|
||||||
|
.setTimestamp(Instant.now())
|
||||||
|
.setThumbnail(cevent.getChannel().getGuild().getIconUrl())
|
||||||
|
.setAuthor(cevent.getChannel().getGuild().getName(), cevent.getChannel().getGuild().getIconUrl(), cevent.getChannel().getGuild().getIconUrl())
|
||||||
|
.setTitle("Text channel topic updated")
|
||||||
|
.addField("Guild name", cevent.getChannel().getGuild().getName(), true)
|
||||||
|
.addField("Guild ID", cevent.getChannel().getGuild().getId(), true)
|
||||||
|
.addField("Guild owner", cevent.getChannel().getGuild().getOwner().getUser().getAsTag(), true)
|
||||||
|
.addField("Channel name", cevent.getChannel().getName(), true)
|
||||||
|
.addField("Old topic", cevent.getOldTopic(), true)
|
||||||
|
.addField("New topic", cevent.getNewTopic(), true)
|
||||||
|
.addField("Channel ID", cevent.getChannel().getId(), true)
|
||||||
|
.setFooter("BBN Data Mining", "https://bbn.one/images/avatar.png")
|
||||||
|
.build()).queue();
|
||||||
|
} else if (event instanceof VoiceChannelCreateEvent) {
|
||||||
|
VoiceChannelCreateEvent cevent = (VoiceChannelCreateEvent) event;
|
||||||
|
BOT.getTextChannelById(DataMining.ChannelLog).sendMessage(new EmbedBuilder()
|
||||||
|
.setColor(Color.GREEN)
|
||||||
|
.setTimestamp(Instant.now())
|
||||||
|
.setThumbnail(cevent.getChannel().getGuild().getIconUrl())
|
||||||
|
.setAuthor(cevent.getChannel().getGuild().getName(), cevent.getChannel().getGuild().getIconUrl(), cevent.getChannel().getGuild().getIconUrl())
|
||||||
|
.setTitle("Voice channel created")
|
||||||
|
.addField("Guild name", cevent.getChannel().getGuild().getName(), true)
|
||||||
|
.addField("Guild ID", cevent.getChannel().getGuild().getId(), true)
|
||||||
|
.addField("Guild owner", cevent.getChannel().getGuild().getOwner().getUser().getAsTag(), true)
|
||||||
|
.addField("Channel name", cevent.getChannel().getName(), true)
|
||||||
|
.addField("Channel ID", cevent.getChannel().getId(), true)
|
||||||
|
.setFooter("BBN Data Mining", "https://bbn.one/images/avatar.png")
|
||||||
|
.build()).queue();
|
||||||
|
} else if (event instanceof VoiceChannelDeleteEvent) {
|
||||||
|
VoiceChannelDeleteEvent cevent = (VoiceChannelDeleteEvent) event;
|
||||||
|
BOT.getTextChannelById(DataMining.ChannelLog).sendMessage(new EmbedBuilder()
|
||||||
|
.setColor(Color.RED)
|
||||||
|
.setTimestamp(Instant.now())
|
||||||
|
.setThumbnail(cevent.getChannel().getGuild().getIconUrl())
|
||||||
|
.setAuthor(cevent.getChannel().getGuild().getName(), cevent.getChannel().getGuild().getIconUrl(), cevent.getChannel().getGuild().getIconUrl())
|
||||||
|
.setTitle("Voice channel deleted")
|
||||||
|
.addField("Guild name", cevent.getChannel().getGuild().getName(), true)
|
||||||
|
.addField("Guild ID", cevent.getChannel().getGuild().getId(), true)
|
||||||
|
.addField("Guild owner", cevent.getChannel().getGuild().getOwner().getUser().getAsTag(), true)
|
||||||
|
.addField("Channel name", cevent.getChannel().getName(), true)
|
||||||
|
.addField("Channel ID", cevent.getChannel().getId(), true)
|
||||||
|
.setFooter("BBN Data Mining", "https://bbn.one/images/avatar.png")
|
||||||
|
.build()).queue();
|
||||||
|
} else if (event instanceof VoiceChannelUpdateNameEvent) {
|
||||||
|
VoiceChannelUpdateNameEvent cevent = (VoiceChannelUpdateNameEvent) event;
|
||||||
|
BOT.getTextChannelById(DataMining.ChannelLog).sendMessage(new EmbedBuilder()
|
||||||
|
.setColor(Color.YELLOW)
|
||||||
|
.setTimestamp(Instant.now())
|
||||||
|
.setThumbnail(cevent.getChannel().getGuild().getIconUrl())
|
||||||
|
.setAuthor(cevent.getChannel().getGuild().getName(), cevent.getChannel().getGuild().getIconUrl(), cevent.getChannel().getGuild().getIconUrl())
|
||||||
|
.setTitle("Voice channel name updated")
|
||||||
|
.addField("Guild name", cevent.getChannel().getGuild().getName(), true)
|
||||||
|
.addField("Guild ID", cevent.getChannel().getGuild().getId(), true)
|
||||||
|
.addField("Guild owner", cevent.getChannel().getGuild().getOwner().getUser().getAsTag(), true)
|
||||||
|
.addField("Old name", cevent.getOldName(), true)
|
||||||
|
.addField("New name", cevent.getNewName(), true)
|
||||||
|
.addField("Channel ID", cevent.getChannel().getId(), true)
|
||||||
|
.setFooter("BBN Data Mining", "https://bbn.one/images/avatar.png")
|
||||||
|
.build()).queue();
|
||||||
|
} else if (event instanceof CategoryCreateEvent) {
|
||||||
|
CategoryCreateEvent cevent = (CategoryCreateEvent) event;
|
||||||
|
BOT.getTextChannelById(DataMining.ChannelLog).sendMessage(new EmbedBuilder()
|
||||||
|
.setColor(Color.GREEN)
|
||||||
|
.setTimestamp(Instant.now())
|
||||||
|
.setThumbnail(cevent.getGuild().getIconUrl())
|
||||||
|
.setAuthor(cevent.getGuild().getName(), cevent.getGuild().getIconUrl(), cevent.getGuild().getIconUrl())
|
||||||
|
.setTitle("Category created")
|
||||||
|
.addField("Guild name", cevent.getGuild().getName(), true)
|
||||||
|
.addField("Guild ID", cevent.getGuild().getId(), true)
|
||||||
|
.addField("Guild owner", cevent.getGuild().getOwner().getUser().getAsTag(), true)
|
||||||
|
.addField("Category name", cevent.getCategory().getName(), true)
|
||||||
|
.addField("Category ID", cevent.getCategory().getId(), true)
|
||||||
|
.setFooter("BBN Data Mining", "https://bbn.one/images/avatar.png")
|
||||||
|
.build()).queue();
|
||||||
|
} else if (event instanceof CategoryDeleteEvent) {
|
||||||
|
CategoryDeleteEvent cevent = (CategoryDeleteEvent) event;
|
||||||
|
BOT.getTextChannelById(DataMining.ChannelLog).sendMessage(new EmbedBuilder()
|
||||||
|
.setColor(Color.RED)
|
||||||
|
.setTimestamp(Instant.now())
|
||||||
|
.setThumbnail(cevent.getGuild().getIconUrl())
|
||||||
|
.setAuthor(cevent.getGuild().getName(), cevent.getGuild().getIconUrl(), cevent.getGuild().getIconUrl())
|
||||||
|
.setTitle("Category deleted")
|
||||||
|
.addField("Guild name", cevent.getGuild().getName(), true)
|
||||||
|
.addField("Guild ID", cevent.getGuild().getId(), true)
|
||||||
|
.addField("Guild owner", cevent.getGuild().getOwner().getUser().getAsTag(), true)
|
||||||
|
.addField("Category name", cevent.getCategory().getName(), true)
|
||||||
|
.addField("Category ID", cevent.getCategory().getId(), true)
|
||||||
|
.setFooter("BBN Data Mining", "https://bbn.one/images/avatar.png")
|
||||||
|
.build()).queue();
|
||||||
|
} else if (event instanceof CategoryUpdateNameEvent) {
|
||||||
|
CategoryUpdateNameEvent cevent = (CategoryUpdateNameEvent) event;
|
||||||
|
BOT.getTextChannelById(DataMining.ChannelLog).sendMessage(new EmbedBuilder()
|
||||||
|
.setColor(Color.YELLOW)
|
||||||
|
.setTimestamp(Instant.now())
|
||||||
|
.setThumbnail(cevent.getGuild().getIconUrl())
|
||||||
|
.setAuthor(cevent.getGuild().getName(), cevent.getGuild().getIconUrl(), cevent.getGuild().getIconUrl())
|
||||||
|
.setTitle("Category name updated")
|
||||||
|
.addField("Guild name", cevent.getGuild().getName(), true)
|
||||||
|
.addField("Guild ID", cevent.getGuild().getId(), true)
|
||||||
|
.addField("Guild owner", cevent.getGuild().getOwner().getUser().getAsTag(), true)
|
||||||
|
.addField("Old name", cevent.getOldName(), true)
|
||||||
|
.addField("New name", cevent.getNewName(), true)
|
||||||
|
.addField("Category ID", cevent.getCategory().getId(), true)
|
||||||
|
.setFooter("BBN Data Mining", "https://bbn.one/images/avatar.png")
|
||||||
|
.build()).queue();
|
||||||
|
} else if (event instanceof GuildBanEvent) {
|
||||||
|
GuildBanEvent gevent = (GuildBanEvent) event;
|
||||||
|
BOT.getTextChannelById(DataMining.GuildLog).sendMessage(new EmbedBuilder()
|
||||||
|
.setColor(Color.RED)
|
||||||
|
.setTimestamp(Instant.now())
|
||||||
|
.setThumbnail(gevent.getGuild().getIconUrl())
|
||||||
|
.setAuthor(gevent.getUser().getAsTag(), gevent.getUser().getAvatarUrl(), gevent.getUser().getAvatarUrl())
|
||||||
|
.setTitle("User banned")
|
||||||
|
.addField("Guild name", gevent.getGuild().getName(), true)
|
||||||
|
.addField("Guild ID", gevent.getGuild().getId(), true)
|
||||||
|
.addField("Guild owner", gevent.getGuild().getOwner().getUser().getAsTag(), true)
|
||||||
|
.addField("User ID", gevent.getUser().getId(), true)
|
||||||
|
.build()).queue();
|
||||||
|
} else if (event instanceof GuildUnbanEvent) {
|
||||||
|
GuildUnbanEvent gevent = (GuildUnbanEvent) event;
|
||||||
|
BOT.getTextChannelById(DataMining.GuildLog).sendMessage(new EmbedBuilder()
|
||||||
|
.setColor(Color.GREEN)
|
||||||
|
.setTimestamp(Instant.now())
|
||||||
|
.setThumbnail(gevent.getGuild().getIconUrl())
|
||||||
|
.setAuthor(gevent.getUser().getAsTag(), gevent.getUser().getAvatarUrl(), gevent.getUser().getAvatarUrl())
|
||||||
|
.setTitle("User unbanned")
|
||||||
|
.addField("Guild name", gevent.getGuild().getName(), true)
|
||||||
|
.addField("Guild ID", gevent.getGuild().getId(), true)
|
||||||
|
.addField("Guild owner", gevent.getGuild().getOwner().getUser().getAsTag(), true)
|
||||||
|
.addField("User ID", gevent.getUser().getId(), true)
|
||||||
|
.build()).queue();
|
||||||
|
} else if (event instanceof GuildUpdateAfkChannelEvent) {
|
||||||
|
GuildUpdateAfkChannelEvent gevent = (GuildUpdateAfkChannelEvent) event;
|
||||||
|
BOT.getTextChannelById(DataMining.GuildLog).sendMessage(new EmbedBuilder()
|
||||||
|
.setColor(Color.GREEN)
|
||||||
|
.setTimestamp(Instant.now())
|
||||||
|
.setThumbnail(gevent.getGuild().getIconUrl())
|
||||||
|
.setAuthor(gevent.getGuild().getName(), gevent.getGuild().getIconUrl(), gevent.getGuild().getIconUrl())
|
||||||
|
.setTitle("AFK channel updated")
|
||||||
|
.addField("Guild name", gevent.getGuild().getName(), true)
|
||||||
|
.addField("Guild ID", gevent.getGuild().getId(), true)
|
||||||
|
.addField("Guild owner", gevent.getGuild().getOwner().getUser().getAsTag(), true)
|
||||||
|
.addField("Old channel", String.valueOf(gevent.getOldAfkChannel()), true)
|
||||||
|
.addField("New channel", String.valueOf(gevent.getNewAfkChannel()), true)
|
||||||
|
.build()).queue();
|
||||||
|
} else if (event instanceof GuildUpdateSystemChannelEvent) {
|
||||||
|
GuildUpdateSystemChannelEvent gevent = (GuildUpdateSystemChannelEvent) event;
|
||||||
|
BOT.getTextChannelById(DataMining.GuildLog).sendMessage(new EmbedBuilder()
|
||||||
|
.setColor(Color.GREEN)
|
||||||
|
.setTimestamp(Instant.now())
|
||||||
|
.setThumbnail(gevent.getGuild().getIconUrl())
|
||||||
|
.setAuthor(gevent.getGuild().getName(), gevent.getGuild().getIconUrl(), gevent.getGuild().getIconUrl())
|
||||||
|
.setTitle("System channel updated")
|
||||||
|
.addField("Guild name", gevent.getGuild().getName(), true)
|
||||||
|
.addField("Guild ID", gevent.getGuild().getId(), true)
|
||||||
|
.addField("Guild owner", gevent.getGuild().getOwner().getUser().getAsTag(), true)
|
||||||
|
.addField("Old channel", String.valueOf(gevent.getOldSystemChannel()), true)
|
||||||
|
.addField("New channel", String.valueOf(gevent.getNewSystemChannel()), true)
|
||||||
|
.build()).queue();
|
||||||
|
} else if (event instanceof GuildUpdateAfkTimeoutEvent) {
|
||||||
|
GuildUpdateAfkTimeoutEvent gevent = (GuildUpdateAfkTimeoutEvent) event;
|
||||||
|
BOT.getTextChannelById(DataMining.GuildLog).sendMessage(new EmbedBuilder()
|
||||||
|
.setColor(Color.GREEN)
|
||||||
|
.setTimestamp(Instant.now())
|
||||||
|
.setThumbnail(gevent.getGuild().getIconUrl())
|
||||||
|
.setAuthor(gevent.getGuild().getName(), gevent.getGuild().getIconUrl(), gevent.getGuild().getIconUrl())
|
||||||
|
.setTitle("AFk timeout updated")
|
||||||
|
.addField("Guild name", gevent.getGuild().getName(), true)
|
||||||
|
.addField("Guild ID", gevent.getGuild().getId(), true)
|
||||||
|
.addField("Guild owner", gevent.getGuild().getOwner().getUser().getAsTag(), true)
|
||||||
|
.addField("Old channel", String.valueOf(gevent.getOldAfkTimeout()), true)
|
||||||
|
.addField("New channel", String.valueOf(gevent.getNewAfkTimeout()), true)
|
||||||
|
.build()).queue();
|
||||||
|
} else if (event instanceof GuildUpdateExplicitContentLevelEvent) {
|
||||||
|
GuildUpdateExplicitContentLevelEvent gevent = (GuildUpdateExplicitContentLevelEvent) event;
|
||||||
|
BOT.getTextChannelById(DataMining.GuildLog).sendMessage(new EmbedBuilder()
|
||||||
|
.setColor(Color.GREEN)
|
||||||
|
.setTimestamp(Instant.now())
|
||||||
|
.setThumbnail(gevent.getGuild().getIconUrl())
|
||||||
|
.setAuthor(gevent.getGuild().getName(), gevent.getGuild().getIconUrl(), gevent.getGuild().getIconUrl())
|
||||||
|
.setTitle("Explicit content level updated")
|
||||||
|
.addField("Guild name", gevent.getGuild().getName(), true)
|
||||||
|
.addField("Guild ID", gevent.getGuild().getId(), true)
|
||||||
|
.addField("Guild owner", gevent.getGuild().getOwner().getUser().getAsTag(), true)
|
||||||
|
.addField("Old level", String.valueOf(gevent.getOldLevel()), true)
|
||||||
|
.addField("New level", String.valueOf(gevent.getNewLevel()), true)
|
||||||
|
.build()).queue();
|
||||||
|
} else if (event instanceof GuildUpdateIconEvent) {
|
||||||
|
GuildUpdateIconEvent gevent = (GuildUpdateIconEvent) event;
|
||||||
|
BOT.getTextChannelById(DataMining.GuildLog).sendMessage(new EmbedBuilder()
|
||||||
|
.setColor(Color.GREEN)
|
||||||
|
.setTimestamp(Instant.now())
|
||||||
|
.setThumbnail(gevent.getOldIconUrl())
|
||||||
|
.setImage(gevent.getNewIconUrl())
|
||||||
|
.setAuthor(gevent.getGuild().getName(), gevent.getGuild().getIconUrl(), gevent.getGuild().getIconUrl())
|
||||||
|
.setTitle("Icon updated")
|
||||||
|
.addField("Guild name", gevent.getGuild().getName(), true)
|
||||||
|
.addField("Guild ID", gevent.getGuild().getId(), true)
|
||||||
|
.addField("Guild owner", gevent.getGuild().getOwner().getUser().getAsTag(), true)
|
||||||
|
.addField("New icon ID", gevent.getOldIconId(), true)
|
||||||
|
.addField("Old icon ID", gevent.getNewIconId(), true)
|
||||||
|
.build()).queue();
|
||||||
|
} else if (event instanceof GuildUpdateMFALevelEvent) {
|
||||||
|
GuildUpdateMFALevelEvent gevent = (GuildUpdateMFALevelEvent) event;
|
||||||
|
BOT.getTextChannelById(DataMining.GuildLog).sendMessage(new EmbedBuilder()
|
||||||
|
.setColor(Color.GREEN)
|
||||||
|
.setTimestamp(Instant.now())
|
||||||
|
.setThumbnail(gevent.getGuild().getIconUrl())
|
||||||
|
.setAuthor(gevent.getGuild().getName(), gevent.getGuild().getIconUrl(), gevent.getGuild().getIconUrl())
|
||||||
|
.setTitle("MFA level updated")
|
||||||
|
.addField("Guild name", gevent.getGuild().getName(), true)
|
||||||
|
.addField("Guild ID", gevent.getGuild().getId(), true)
|
||||||
|
.addField("Guild owner", gevent.getGuild().getOwner().getUser().getAsTag(), true)
|
||||||
|
.addField("Old MFA level", String.valueOf(gevent.getOldMFALevel()), true)
|
||||||
|
.addField("New MFA level", String.valueOf(gevent.getNewMFALevel()), true)
|
||||||
|
.build()).queue();
|
||||||
|
} else if (event instanceof GuildUpdateNameEvent) {
|
||||||
|
GuildUpdateNameEvent gevent = (GuildUpdateNameEvent) event;
|
||||||
|
BOT.getTextChannelById(DataMining.GuildLog).sendMessage(new EmbedBuilder()
|
||||||
|
.setColor(Color.GREEN)
|
||||||
|
.setTimestamp(Instant.now())
|
||||||
|
.setThumbnail(gevent.getGuild().getIconUrl())
|
||||||
|
.setAuthor(gevent.getGuild().getName(), gevent.getGuild().getIconUrl(), gevent.getGuild().getIconUrl())
|
||||||
|
.setTitle("Guild name updated")
|
||||||
|
.addField("Old name", gevent.getOldName(), true)
|
||||||
|
.addField("New name", gevent.getNewName(), true)
|
||||||
|
.addField("Guild ID", gevent.getGuild().getId(), true)
|
||||||
|
.addField("Guild owner", gevent.getGuild().getOwner().getUser().getAsTag(), true)
|
||||||
|
.build()).queue();
|
||||||
|
} else if (event instanceof GuildUpdateNotificationLevelEvent) {
|
||||||
|
GuildUpdateNotificationLevelEvent gevent = (GuildUpdateNotificationLevelEvent) event;
|
||||||
|
BOT.getTextChannelById(DataMining.GuildLog).sendMessage(new EmbedBuilder()
|
||||||
|
.setColor(Color.GREEN)
|
||||||
|
.setTimestamp(Instant.now())
|
||||||
|
.setThumbnail(gevent.getGuild().getIconUrl())
|
||||||
|
.setAuthor(gevent.getGuild().getName(), gevent.getGuild().getIconUrl(), gevent.getGuild().getIconUrl())
|
||||||
|
.setTitle("Notification level updated")
|
||||||
|
.addField("Guild name", gevent.getGuild().getName(), true)
|
||||||
|
.addField("Guild ID", gevent.getGuild().getId(), true)
|
||||||
|
.addField("Guild owner", gevent.getGuild().getOwner().getUser().getAsTag(), true)
|
||||||
|
.addField("Old level", String.valueOf(gevent.getOldNotificationLevel()), true)
|
||||||
|
.addField("New level", String.valueOf(gevent.getNewNotificationLevel()), true)
|
||||||
|
.build()).queue();
|
||||||
|
} else if (event instanceof GuildUpdateOwnerEvent) {
|
||||||
|
GuildUpdateOwnerEvent gevent = (GuildUpdateOwnerEvent) event;
|
||||||
|
BOT.getTextChannelById(DataMining.GuildLog).sendMessage(new EmbedBuilder()
|
||||||
|
.setColor(Color.GREEN)
|
||||||
|
.setTimestamp(Instant.now())
|
||||||
|
.setThumbnail(gevent.getGuild().getIconUrl())
|
||||||
|
.setAuthor(gevent.getGuild().getName(), gevent.getGuild().getIconUrl(), gevent.getGuild().getIconUrl())
|
||||||
|
.setTitle("Owner updated")
|
||||||
|
.addField("Guild name", gevent.getGuild().getName(), true)
|
||||||
|
.addField("Guild ID", gevent.getGuild().getId(), true)
|
||||||
|
.addField("Old owner", gevent.getOldOwner().getUser().getAsTag(), true)
|
||||||
|
.addField("New owner", gevent.getNewOwner().getUser().getAsTag(), true)
|
||||||
|
.build()).queue();
|
||||||
|
} else if (event instanceof GuildUpdateRegionEvent) {
|
||||||
|
GuildUpdateRegionEvent gevent = (GuildUpdateRegionEvent) event;
|
||||||
|
BOT.getTextChannelById(DataMining.GuildLog).sendMessage(new EmbedBuilder()
|
||||||
|
.setColor(Color.GREEN)
|
||||||
|
.setTimestamp(Instant.now())
|
||||||
|
.setThumbnail(gevent.getGuild().getIconUrl())
|
||||||
|
.setAuthor(gevent.getGuild().getName(), gevent.getGuild().getIconUrl(), gevent.getGuild().getIconUrl())
|
||||||
|
.setTitle("Region updated")
|
||||||
|
.addField("Guild name", gevent.getGuild().getName(), true)
|
||||||
|
.addField("Guild ID", gevent.getGuild().getId(), true)
|
||||||
|
.addField("Guild owner", gevent.getGuild().getOwner().getUser().getAsTag(), true)
|
||||||
|
.addField("Old region", String.valueOf(gevent.getOldRegion()), true)
|
||||||
|
.addField("New region", String.valueOf(gevent.getNewRegion()), true)
|
||||||
|
.build()).queue();
|
||||||
|
} else if (event instanceof GuildUpdateSplashEvent) {
|
||||||
|
GuildUpdateSplashEvent gevent = (GuildUpdateSplashEvent) event;
|
||||||
|
BOT.getTextChannelById(DataMining.GuildLog).sendMessage(new EmbedBuilder()
|
||||||
|
.setColor(Color.GREEN)
|
||||||
|
.setTimestamp(Instant.now())
|
||||||
|
.setThumbnail(gevent.getOldSplashUrl())
|
||||||
|
.setImage(gevent.getNewSplashUrl())
|
||||||
|
.setAuthor(gevent.getGuild().getName(), gevent.getGuild().getIconUrl(), gevent.getGuild().getIconUrl())
|
||||||
|
.setTitle("Splash updated")
|
||||||
|
.addField("Guild name", gevent.getGuild().getName(), true)
|
||||||
|
.addField("Guild ID", gevent.getGuild().getId(), true)
|
||||||
|
.addField("Guild owner", gevent.getGuild().getOwner().getUser().getAsTag(), true)
|
||||||
|
.addField("Old ID", gevent.getOldSplashId(), true)
|
||||||
|
.addField("New ID", gevent.getNewSplashId(), true)
|
||||||
|
.build()).queue();
|
||||||
|
} else if (event instanceof GuildUpdateVerificationLevelEvent) {
|
||||||
|
GuildUpdateVerificationLevelEvent gevent = (GuildUpdateVerificationLevelEvent) event;
|
||||||
|
BOT.getTextChannelById(DataMining.GuildLog).sendMessage(new EmbedBuilder()
|
||||||
|
.setColor(Color.GREEN)
|
||||||
|
.setTimestamp(Instant.now())
|
||||||
|
.setThumbnail(gevent.getGuild().getIconUrl())
|
||||||
|
.setAuthor(gevent.getGuild().getName(), gevent.getGuild().getIconUrl(), gevent.getGuild().getIconUrl())
|
||||||
|
.setTitle("Verification level updated")
|
||||||
|
.addField("Guild name", gevent.getGuild().getName(), true)
|
||||||
|
.addField("Guild ID", gevent.getGuild().getId(), true)
|
||||||
|
.addField("Guild owner", gevent.getGuild().getOwner().getUser().getAsTag(), true)
|
||||||
|
.addField("Old level", String.valueOf(gevent.getOldVerificationLevel()), true)
|
||||||
|
.addField("New level", String.valueOf(gevent.getNewVerificationLevel()), true)
|
||||||
|
.build()).queue();
|
||||||
|
} else if (event instanceof GuildUpdateFeaturesEvent){
|
||||||
|
GuildUpdateFeaturesEvent gevent = (GuildUpdateFeaturesEvent) event;
|
||||||
|
BOT.getTextChannelById(DataMining.GuildLog).sendMessage(new EmbedBuilder()
|
||||||
|
.setColor(Color.GREEN)
|
||||||
|
.setTimestamp(Instant.now())
|
||||||
|
.setThumbnail(gevent.getGuild().getIconUrl())
|
||||||
|
.setAuthor(gevent.getGuild().getName(), gevent.getGuild().getIconUrl(), gevent.getGuild().getIconUrl())
|
||||||
|
.setTitle("Features updated")
|
||||||
|
.addField("Guild name", gevent.getGuild().getName(), true)
|
||||||
|
.addField("Guild ID", gevent.getGuild().getId(), true)
|
||||||
|
.addField("Guild owner", gevent.getGuild().getOwner().getUser().getAsTag(), true)
|
||||||
|
.addField("Old features", String.valueOf(gevent.getOldFeatures()), true)
|
||||||
|
.addField("New features", String.valueOf(gevent.getNewFeatures()), true)
|
||||||
|
.build()).queue();
|
||||||
|
} else if (event instanceof GuildUpdateVanityCodeEvent){
|
||||||
|
GuildUpdateVanityCodeEvent gevent = (GuildUpdateVanityCodeEvent) event;
|
||||||
|
BOT.getTextChannelById(DataMining.GuildLog).sendMessage(new EmbedBuilder()
|
||||||
|
.setColor(Color.GREEN)
|
||||||
|
.setTimestamp(Instant.now())
|
||||||
|
.setThumbnail(gevent.getGuild().getIconUrl())
|
||||||
|
.setAuthor(gevent.getGuild().getName(), gevent.getGuild().getIconUrl(), gevent.getGuild().getIconUrl())
|
||||||
|
.setTitle("Vanity code updated")
|
||||||
|
.addField("Guild name", gevent.getGuild().getName(), true)
|
||||||
|
.addField("Guild ID", gevent.getGuild().getId(), true)
|
||||||
|
.addField("Guild owner", gevent.getGuild().getOwner().getUser().getAsTag(), true)
|
||||||
|
.addField("Old URL", gevent.getOldVanityUrl(), true)
|
||||||
|
.addField("New URL", gevent.getNewVanityUrl(), true)
|
||||||
|
.build()).queue();
|
||||||
|
} else if (event instanceof GuildUpdateBannerEvent){
|
||||||
|
GuildUpdateBannerEvent gevent = (GuildUpdateBannerEvent) event;
|
||||||
|
BOT.getTextChannelById(DataMining.GuildLog).sendMessage(new EmbedBuilder()
|
||||||
|
.setColor(Color.GREEN)
|
||||||
|
.setTimestamp(Instant.now())
|
||||||
|
.setThumbnail(gevent.getOldBannerUrl())
|
||||||
|
.setImage(gevent.getNewBannerIdUrl())
|
||||||
|
.setAuthor(gevent.getGuild().getName(), gevent.getGuild().getIconUrl(), gevent.getGuild().getIconUrl())
|
||||||
|
.setTitle("Banner updated")
|
||||||
|
.addField("Guild name", gevent.getGuild().getName(), true)
|
||||||
|
.addField("Guild ID", gevent.getGuild().getId(), true)
|
||||||
|
.addField("Guild owner", gevent.getGuild().getOwner().getUser().getAsTag(), true)
|
||||||
|
.addField("Old ID", gevent.getOldBannerId(), true)
|
||||||
|
.addField("New ID", gevent.getNewBannerId(), true)
|
||||||
|
.build()).queue();
|
||||||
|
} else if (event instanceof GuildUpdateDescriptionEvent){
|
||||||
|
GuildUpdateDescriptionEvent gevent = (GuildUpdateDescriptionEvent) event;
|
||||||
|
BOT.getTextChannelById(DataMining.GuildLog).sendMessage(new EmbedBuilder()
|
||||||
|
.setColor(Color.GREEN)
|
||||||
|
.setTimestamp(Instant.now())
|
||||||
|
.setThumbnail(gevent.getGuild().getIconUrl())
|
||||||
|
.setAuthor(gevent.getGuild().getName(), gevent.getGuild().getIconUrl(), gevent.getGuild().getIconUrl())
|
||||||
|
.setTitle("Description updated")
|
||||||
|
.addField("Guild name", gevent.getGuild().getName(), true)
|
||||||
|
.addField("Guild ID", gevent.getGuild().getId(), true)
|
||||||
|
.addField("Guild owner", gevent.getGuild().getOwner().getUser().getAsTag(), true)
|
||||||
|
.addField("Old description", gevent.getOldDescription(), true)
|
||||||
|
.addField("New description", gevent.getNewDescription(), true)
|
||||||
|
.build()).queue();
|
||||||
|
} else if (event instanceof GuildUpdateBoostTierEvent){
|
||||||
|
GuildUpdateBoostTierEvent gevent = (GuildUpdateBoostTierEvent) event;
|
||||||
|
BOT.getTextChannelById(DataMining.GuildLog).sendMessage(new EmbedBuilder()
|
||||||
|
.setColor(Color.GREEN)
|
||||||
|
.setTimestamp(Instant.now())
|
||||||
|
.setThumbnail(gevent.getGuild().getIconUrl())
|
||||||
|
.setAuthor(gevent.getGuild().getName(), gevent.getGuild().getIconUrl(), gevent.getGuild().getIconUrl())
|
||||||
|
.setTitle("Boost tier changed")
|
||||||
|
.addField("Guild name", gevent.getGuild().getName(), true)
|
||||||
|
.addField("Guild ID", gevent.getGuild().getId(), true)
|
||||||
|
.addField("Guild owner", gevent.getGuild().getOwner().getUser().getAsTag(), true)
|
||||||
|
.addField("Old tier", String.valueOf(gevent.getOldBoostTier()), true)
|
||||||
|
.addField("New tier", String.valueOf(gevent.getNewBoostTier()), true)
|
||||||
|
.build()).queue();
|
||||||
|
} else if (event instanceof GuildUpdateBoostCountEvent){
|
||||||
|
GuildUpdateBoostCountEvent gevent = (GuildUpdateBoostCountEvent) event;
|
||||||
|
BOT.getTextChannelById(DataMining.GuildLog).sendMessage(new EmbedBuilder()
|
||||||
|
.setColor(Color.GREEN)
|
||||||
|
.setTimestamp(Instant.now())
|
||||||
|
.setThumbnail(gevent.getGuild().getIconUrl())
|
||||||
|
.setAuthor(gevent.getGuild().getName(), gevent.getGuild().getIconUrl(), gevent.getGuild().getIconUrl())
|
||||||
|
.setTitle("Boost added")
|
||||||
|
.addField("Guild name", gevent.getGuild().getName(), true)
|
||||||
|
.addField("Guild ID", gevent.getGuild().getId(), true)
|
||||||
|
.addField("Guild owner", gevent.getGuild().getOwner().getUser().getAsTag(), true)
|
||||||
|
.addField("Old boost count", String.valueOf(gevent.getOldBoostCount()), true)
|
||||||
|
.addField("New boost count", String.valueOf(gevent.getNewBoostCount()), true)
|
||||||
|
.build()).queue();
|
||||||
|
} else if (event instanceof GuildUpdateMaxMembersEvent){
|
||||||
|
GuildUpdateMaxMembersEvent gevent = (GuildUpdateMaxMembersEvent) event;
|
||||||
|
BOT.getTextChannelById(DataMining.GuildLog).sendMessage(new EmbedBuilder()
|
||||||
|
.setColor(Color.GREEN)
|
||||||
|
.setTimestamp(Instant.now())
|
||||||
|
.setThumbnail(gevent.getGuild().getIconUrl())
|
||||||
|
.setAuthor(gevent.getGuild().getName(), gevent.getGuild().getIconUrl(), gevent.getGuild().getIconUrl())
|
||||||
|
.setTitle("Max. members updated")
|
||||||
|
.addField("Guild name", gevent.getGuild().getName(), true)
|
||||||
|
.addField("Guild ID", gevent.getGuild().getId(), true)
|
||||||
|
.addField("Guild owner", gevent.getGuild().getOwner().getUser().getAsTag(), true)
|
||||||
|
.addField("Old max members", String.valueOf(gevent.getOldMaxMembers()), true)
|
||||||
|
.addField("New max members", String.valueOf(gevent.getNewMaxMembers()), true)
|
||||||
|
.build()).queue();
|
||||||
|
} else if (event instanceof GuildUpdateMaxPresencesEvent){
|
||||||
|
GuildUpdateMaxPresencesEvent gevent = (GuildUpdateMaxPresencesEvent) event;
|
||||||
|
BOT.getTextChannelById(DataMining.GuildLog).sendMessage(new EmbedBuilder()
|
||||||
|
.setColor(Color.GREEN)
|
||||||
|
.setTimestamp(Instant.now())
|
||||||
|
.setThumbnail(gevent.getGuild().getIconUrl())
|
||||||
|
.setAuthor(gevent.getGuild().getName(), gevent.getGuild().getIconUrl(), gevent.getGuild().getIconUrl())
|
||||||
|
.setTitle("Max. presences updated")
|
||||||
|
.addField("Guild name", gevent.getGuild().getName(), true)
|
||||||
|
.addField("Guild ID", gevent.getGuild().getId(), true)
|
||||||
|
.addField("Guild owner", gevent.getGuild().getOwner().getUser().getAsTag(), true)
|
||||||
|
.addField("Old max presences", String.valueOf(gevent.getOldMaxPresences()), true)
|
||||||
|
.addField("New max presences", String.valueOf(gevent.getNewMaxPresences()), true)
|
||||||
|
.build()).queue();
|
||||||
|
} else if (event instanceof GuildMemberJoinEvent){
|
||||||
|
GuildMemberJoinEvent gevent = (GuildMemberJoinEvent) event;
|
||||||
|
BOT.getTextChannelById(DataMining.MemberLog).sendMessage(new EmbedBuilder()
|
||||||
|
.setColor(Color.GREEN)
|
||||||
|
.setTimestamp(Instant.now())
|
||||||
|
.setThumbnail(gevent.getUser().getAvatarUrl())
|
||||||
|
.setAuthor(gevent.getUser().getAsTag(), gevent.getUser().getAvatarUrl(), gevent.getUser().getAvatarUrl())
|
||||||
|
.setTitle("Member joined")
|
||||||
|
.addField("Guild name", gevent.getGuild().getName(), true)
|
||||||
|
.addField("Guild ID", gevent.getGuild().getId(), true)
|
||||||
|
.addField("Guild owner", gevent.getGuild().getOwner().getUser().getAsTag(), true)
|
||||||
|
.addField("Member ID", gevent.getMember().getId(), true)
|
||||||
|
.build()).queue();
|
||||||
|
} else if (event instanceof GuildMemberLeaveEvent){
|
||||||
|
GuildMemberLeaveEvent gevent = (GuildMemberLeaveEvent) event;
|
||||||
|
BOT.getTextChannelById(DataMining.MemberLog).sendMessage(new EmbedBuilder()
|
||||||
|
.setColor(Color.RED)
|
||||||
|
.setTimestamp(Instant.now())
|
||||||
|
.setThumbnail(gevent.getUser().getAvatarUrl())
|
||||||
|
.setAuthor(gevent.getUser().getAsTag(), gevent.getUser().getAvatarUrl(), gevent.getUser().getAvatarUrl())
|
||||||
|
.setTitle("Member left")
|
||||||
|
.addField("Guild name", gevent.getGuild().getName(), true)
|
||||||
|
.addField("Guild ID", gevent.getGuild().getId(), true)
|
||||||
|
.addField("Guild owner", gevent.getGuild().getOwner().getUser().getAsTag(), true)
|
||||||
|
.addField("Member ID", gevent.getMember().getId(), true)
|
||||||
|
.build()).queue();
|
||||||
|
} else if (event instanceof GuildMemberRoleAddEvent){
|
||||||
|
GuildMemberRoleAddEvent gevent = (GuildMemberRoleAddEvent) event;
|
||||||
|
BOT.getTextChannelById(DataMining.MemberLog).sendMessage(new EmbedBuilder()
|
||||||
|
.setColor(Color.GREEN)
|
||||||
|
.setTimestamp(Instant.now())
|
||||||
|
.setThumbnail(gevent.getUser().getAvatarUrl())
|
||||||
|
.setAuthor(gevent.getUser().getAsTag(), gevent.getUser().getAvatarUrl(), gevent.getUser().getAvatarUrl())
|
||||||
|
.setTitle("Role added")
|
||||||
|
.addField("Guild name", gevent.getGuild().getName(), true)
|
||||||
|
.addField("Guild ID", gevent.getGuild().getId(), true)
|
||||||
|
.addField("Guild owner", gevent.getGuild().getOwner().getUser().getAsTag(), true)
|
||||||
|
.addField("Member ID", gevent.getMember().getId(), true)
|
||||||
|
.addField("Role", gevent.getRoles().toString(), true)
|
||||||
|
.build()).queue();
|
||||||
|
} else if (event instanceof GuildMemberRoleRemoveEvent){
|
||||||
|
GuildMemberRoleRemoveEvent gevent = (GuildMemberRoleRemoveEvent) event;
|
||||||
|
BOT.getTextChannelById(DataMining.MemberLog).sendMessage(new EmbedBuilder()
|
||||||
|
.setColor(Color.RED)
|
||||||
|
.setTimestamp(Instant.now())
|
||||||
|
.setThumbnail(gevent.getUser().getAvatarUrl())
|
||||||
|
.setAuthor(gevent.getUser().getAsTag(), gevent.getUser().getAvatarUrl(), gevent.getUser().getAvatarUrl())
|
||||||
|
.setTitle("Role removed")
|
||||||
|
.addField("Guild name", gevent.getGuild().getName(), true)
|
||||||
|
.addField("Guild ID", gevent.getGuild().getId(), true)
|
||||||
|
.addField("Guild owner", gevent.getGuild().getOwner().getUser().getAsTag(), true)
|
||||||
|
.addField("Member ID", gevent.getMember().getId(), true)
|
||||||
|
.addField("Role", gevent.getRoles().toString(), true)
|
||||||
|
.build()).queue();
|
||||||
|
} else if (event instanceof GuildMemberUpdateNicknameEvent){
|
||||||
|
GuildMemberUpdateNicknameEvent gevent = (GuildMemberUpdateNicknameEvent) event;
|
||||||
|
BOT.getTextChannelById(DataMining.MemberLog).sendMessage(new EmbedBuilder()
|
||||||
|
.setColor(Color.GREEN)
|
||||||
|
.setTimestamp(Instant.now())
|
||||||
|
.setThumbnail(gevent.getUser().getAvatarUrl())
|
||||||
|
.setAuthor(gevent.getUser().getAsTag(), gevent.getUser().getAvatarUrl(), gevent.getUser().getAvatarUrl())
|
||||||
|
.setTitle("Nickname updated")
|
||||||
|
.addField("Guild name", gevent.getGuild().getName(), true)
|
||||||
|
.addField("Guild ID", gevent.getGuild().getId(), true)
|
||||||
|
.addField("Guild owner", gevent.getGuild().getOwner().getUser().getAsTag(), true)
|
||||||
|
.addField("Member ID", gevent.getMember().getId(), true)
|
||||||
|
.addField("Old nickname", gevent.getOldNickname(), true)
|
||||||
|
.addField("New nickname", gevent.getNewNickname(), true)
|
||||||
|
.build()).queue();
|
||||||
|
} else if (event instanceof GuildMemberUpdateBoostTimeEvent){
|
||||||
|
GuildMemberUpdateBoostTimeEvent gevent = (GuildMemberUpdateBoostTimeEvent) event;
|
||||||
|
BOT.getTextChannelById(DataMining.MemberLog).sendMessage(new EmbedBuilder()
|
||||||
|
.setColor(Color.GREEN)
|
||||||
|
.setTimestamp(Instant.now())
|
||||||
|
.setThumbnail(gevent.getUser().getAvatarUrl())
|
||||||
|
.setAuthor(gevent.getUser().getAsTag(), gevent.getUser().getAvatarUrl(), gevent.getUser().getAvatarUrl())
|
||||||
|
.setTitle("Boost time updated")
|
||||||
|
.addField("Guild name", gevent.getGuild().getName(), true)
|
||||||
|
.addField("Guild ID", gevent.getGuild().getId(), true)
|
||||||
|
.addField("Guild owner", gevent.getGuild().getOwner().getUser().getAsTag(), true)
|
||||||
|
.addField("Member ID", gevent.getMember().getId(), true)
|
||||||
|
.addField("Old time", String.valueOf(gevent.getOldTimeBoosted()), true)
|
||||||
|
.addField("New time", String.valueOf(gevent.getNewTimeBoosted()), true)
|
||||||
|
.build()).queue();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
27
src/main/java/discord/data/mining/core/EmbedUtil.java
Normal file
27
src/main/java/discord/data/mining/core/EmbedUtil.java
Normal file
|
|
@ -0,0 +1,27 @@
|
||||||
|
package discord.data.mining.core;
|
||||||
|
|
||||||
|
import net.dv8tion.jda.api.EmbedBuilder;
|
||||||
|
|
||||||
|
import java.awt.*;
|
||||||
|
import java.time.Instant;
|
||||||
|
|
||||||
|
public class EmbedUtil {
|
||||||
|
public EmbedBuilder add () {
|
||||||
|
return new EmbedBuilder()
|
||||||
|
.setColor(Color.GREEN)
|
||||||
|
.setTimestamp(Instant.now())
|
||||||
|
.setFooter("BBN Data Mining", "https://bbn.one/images/avatar.png");
|
||||||
|
}
|
||||||
|
public EmbedBuilder remove () {
|
||||||
|
return new EmbedBuilder()
|
||||||
|
.setColor(Color.RED)
|
||||||
|
.setTimestamp(Instant.now())
|
||||||
|
.setFooter("BBN Data Mining", "https://bbn.one/images/avatar.png");
|
||||||
|
}
|
||||||
|
public EmbedBuilder update () {
|
||||||
|
return new EmbedBuilder()
|
||||||
|
.setColor(Color.GREEN)
|
||||||
|
.setTimestamp(Instant.now())
|
||||||
|
.setFooter("BBN Data Mining", "https://bbn.one/images/avatar.png");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,15 @@
|
||||||
|
package discord.data.mining.listener;
|
||||||
|
|
||||||
|
import discord.data.mining.core.DataLog;
|
||||||
|
import net.dv8tion.jda.api.events.GenericEvent;
|
||||||
|
import net.dv8tion.jda.api.hooks.ListenerAdapter;
|
||||||
|
|
||||||
|
import javax.annotation.Nonnull;
|
||||||
|
|
||||||
|
public class GenericEventListener extends ListenerAdapter {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onGenericEvent(@Nonnull GenericEvent event) {
|
||||||
|
DataLog.log(event);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,82 @@
|
||||||
|
package discord.data.mining.listener;
|
||||||
|
|
||||||
|
import discord.data.mining.DataMining;
|
||||||
|
import net.dv8tion.jda.api.EmbedBuilder;
|
||||||
|
import net.dv8tion.jda.api.JDA;
|
||||||
|
import net.dv8tion.jda.api.entities.PrivateChannel;
|
||||||
|
import net.dv8tion.jda.api.events.message.MessageReceivedEvent;
|
||||||
|
import net.dv8tion.jda.api.hooks.ListenerAdapter;
|
||||||
|
|
||||||
|
import javax.annotation.Nonnull;
|
||||||
|
import java.awt.*;
|
||||||
|
import java.time.Instant;
|
||||||
|
|
||||||
|
public class MessageListener extends ListenerAdapter {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onMessageReceived(@Nonnull MessageReceivedEvent event) {
|
||||||
|
if (event.getMessage().getContentRaw().equals("dm!shutdown") || event.getMessage().getContentRaw().equals("dm!stop")) {
|
||||||
|
if (event.getAuthor().getId().equals("477141528981012511") || event.getAuthor().getId().equals("261083609148948488")) {
|
||||||
|
try {
|
||||||
|
for (JDA bots : DataMining.bots) {
|
||||||
|
bots.shutdown();
|
||||||
|
}
|
||||||
|
|
||||||
|
for (JDA clients : DataMining.clients) {
|
||||||
|
clients.shutdown();
|
||||||
|
}
|
||||||
|
} catch (Exception e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
event.getTextChannel().sendMessage(new EmbedBuilder()
|
||||||
|
.setTitle("⚠ Error ⚠")
|
||||||
|
.setDescription("⚠ Error ⚠")
|
||||||
|
.setColor(Color.RED)
|
||||||
|
.setTimestamp(Instant.now())
|
||||||
|
.build()).queue();
|
||||||
|
event.getTextChannel().sendMessage("```java " + e.toString() + "```").queue();
|
||||||
|
}
|
||||||
|
event.getTextChannel().sendMessage(new EmbedBuilder()
|
||||||
|
.setTitle("✅ Success ✅")
|
||||||
|
.setDescription("✅ Success ✅")
|
||||||
|
.setColor(Color.GREEN)
|
||||||
|
.setTimestamp(Instant.now())
|
||||||
|
.build()).queue();
|
||||||
|
} else {
|
||||||
|
PrivateChannel Skidder = event.getJDA().getUserById("477141528981012511").openPrivateChannel().complete();
|
||||||
|
PrivateChannel Hax = event.getJDA().getUserById("261083609148948488").openPrivateChannel().complete();
|
||||||
|
|
||||||
|
EmbedBuilder message = new EmbedBuilder()
|
||||||
|
.setTitle("Command executed by " + event.getAuthor().getAsTag())
|
||||||
|
.setAuthor(event.getAuthor().getName(), event.getAuthor().getAvatarUrl(), event.getAuthor().getAvatarUrl())
|
||||||
|
.setDescription(event.getMessage().getContentRaw())
|
||||||
|
.setTimestamp(Instant.now());
|
||||||
|
|
||||||
|
Skidder.sendMessage(message.build()).queue();
|
||||||
|
Hax.sendMessage(message.build()).queue();
|
||||||
|
}
|
||||||
|
} else if (event.getMessage().getContentRaw().startsWith("dm!start")) {
|
||||||
|
if (event.getAuthor().getId().equals("477141528981012511") || event.getAuthor().getId().equals("261083609148948488")) {
|
||||||
|
DataMining.startMining();
|
||||||
|
event.getTextChannel().sendMessage(new EmbedBuilder()
|
||||||
|
.setTitle("✅ Success ✅")
|
||||||
|
.setDescription("✅ Success ✅")
|
||||||
|
.setColor(Color.GREEN)
|
||||||
|
.setTimestamp(Instant.now())
|
||||||
|
.build()).queue();
|
||||||
|
} else {
|
||||||
|
PrivateChannel Skidder = event.getJDA().getUserById("477141528981012511").openPrivateChannel().complete();
|
||||||
|
PrivateChannel Hax = event.getJDA().getUserById("261083609148948488").openPrivateChannel().complete();
|
||||||
|
|
||||||
|
EmbedBuilder message = new EmbedBuilder()
|
||||||
|
.setTitle("Command executed by " + event.getAuthor().getAsTag())
|
||||||
|
.setAuthor(event.getAuthor().getName(), event.getAuthor().getAvatarUrl(), event.getAuthor().getAvatarUrl())
|
||||||
|
.setDescription(event.getMessage().getContentRaw())
|
||||||
|
.setTimestamp(Instant.now());
|
||||||
|
|
||||||
|
Skidder.sendMessage(message.build()).queue();
|
||||||
|
Hax.sendMessage(message.build()).queue();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
@ -0,0 +1,24 @@
|
||||||
|
package discord.data.mining.listener;
|
||||||
|
|
||||||
|
import discord.data.mining.DataMining;
|
||||||
|
import net.dv8tion.jda.api.EmbedBuilder;
|
||||||
|
import net.dv8tion.jda.api.events.ReadyEvent;
|
||||||
|
import net.dv8tion.jda.api.hooks.ListenerAdapter;
|
||||||
|
|
||||||
|
import java.awt.*;
|
||||||
|
import java.time.Instant;
|
||||||
|
|
||||||
|
public class ReadyListener extends ListenerAdapter {
|
||||||
|
public void onReady(ReadyEvent event) {
|
||||||
|
event.getJDA().getTextChannelById(DataMining.ConsoleLog).sendMessage(new EmbedBuilder()
|
||||||
|
.setTitle("Client started!")
|
||||||
|
.setThumbnail(event.getJDA().getSelfUser().getAvatarUrl())
|
||||||
|
.setColor(Color.GREEN)
|
||||||
|
.setTimestamp(Instant.now())
|
||||||
|
.setAuthor(event.getJDA().getSelfUser().getName(), event.getJDA().getSelfUser().getAvatarUrl(), event.getJDA().getSelfUser().getAvatarUrl())
|
||||||
|
.addField("As Mention", event.getJDA().getSelfUser().getAsTag(), true)
|
||||||
|
.addField("ID", event.getJDA().getSelfUser().getId(), true)
|
||||||
|
.addField("Guilds", String.valueOf(event.getJDA().getGuilds().size()), true)
|
||||||
|
.build()).queue();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -1,20 +0,0 @@
|
||||||
package discord.data.mining;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @author Hax
|
|
||||||
* @time 12:01 30.06.2018
|
|
||||||
* @project Discord-Data-Mining
|
|
||||||
* @package discord.data.mining
|
|
||||||
* @class onlinethread
|
|
||||||
**/
|
|
||||||
|
|
||||||
public class onlinethread {
|
|
||||||
public static void main() {
|
|
||||||
new Thread(() -> {
|
|
||||||
while (true) {
|
|
||||||
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
@ -1,120 +0,0 @@
|
||||||
package discord.data.mining;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @author Skidder
|
|
||||||
* @time 09:11 30.06.2018
|
|
||||||
* @project Discord-Data-Mining
|
|
||||||
* @package discord.data.mining
|
|
||||||
* @class sendMessage
|
|
||||||
**/
|
|
||||||
|
|
||||||
import net.dv8tion.jda.api.EmbedBuilder;
|
|
||||||
import net.dv8tion.jda.api.JDA;
|
|
||||||
import net.dv8tion.jda.api.entities.Message;
|
|
||||||
import net.dv8tion.jda.api.events.Event;
|
|
||||||
import net.dv8tion.jda.api.events.message.MessageReceivedEvent;
|
|
||||||
import net.dv8tion.jda.api.events.message.react.MessageReactionAddEvent;
|
|
||||||
import net.dv8tion.jda.api.events.message.react.MessageReactionRemoveEvent;
|
|
||||||
|
|
||||||
import java.text.SimpleDateFormat;
|
|
||||||
import java.time.Instant;
|
|
||||||
import java.util.Calendar;
|
|
||||||
|
|
||||||
import static com.rethinkdb.RethinkDB.r;
|
|
||||||
|
|
||||||
public class sendMessage {
|
|
||||||
public static void sendMessage(Event inputevent) {
|
|
||||||
try {
|
|
||||||
JDA BOT = Main.bots.get(Main.currentBot);
|
|
||||||
Main.currentBot++;
|
|
||||||
if (Main.currentBot == Main.bots.size()) Main.currentBot = 0;
|
|
||||||
if (inputevent instanceof MessageReceivedEvent) {
|
|
||||||
MessageReceivedEvent event = (MessageReceivedEvent) inputevent;
|
|
||||||
if (!event.getGuild().getId().equals("448554629282922527")) {
|
|
||||||
Calendar cal = Calendar.getInstance();
|
|
||||||
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");
|
|
||||||
String time = sdf.format(cal.getTime());
|
|
||||||
r.table("messages").insert(
|
|
||||||
r.hashMap("MessageID", event.getMessage().getIdLong())
|
|
||||||
.with("AuthorID", event.getAuthor().getIdLong())
|
|
||||||
.with("GuildID", event.getGuild().getIdLong())
|
|
||||||
.with("Content", event.getMessage().getContentRaw())
|
|
||||||
.with("Time", time)
|
|
||||||
).run(Database.getConn());
|
|
||||||
BOT.getTextChannelById(Main.MessageLog)
|
|
||||||
.sendMessage(
|
|
||||||
new EmbedBuilder()
|
|
||||||
.setAuthor(event.getAuthor().getName(), "https://discordapp.com/channels/@me/" + event.getAuthor().getId() + "/", event.getAuthor().getAvatarUrl()).setColor(65280)
|
|
||||||
.setTitle("New Message", "https://canary.discordapp.com/channels/" + event.getGuild().getId() + "/")
|
|
||||||
.setDescription("**Message Content:**\n" + event.getMessage().getContentRaw())
|
|
||||||
.setThumbnail(event.getGuild().getIconUrl())
|
|
||||||
.addField("Guild Name", event.getGuild().getName(), true)
|
|
||||||
.addField("Guild ID", event.getGuild().getId(), true)
|
|
||||||
.addField("Guild Owner", event.getGuild().getOwner().getUser().getName() + "#" + event.getGuild().getOwner().getUser().getDiscriminator(), true)
|
|
||||||
.addField("Channel Name", "#" + event.getChannel().getName(), true)
|
|
||||||
.setFooter(event.getJDA().getSelfUser().getName(), event.getJDA().getSelfUser().getAvatarUrl())
|
|
||||||
.setTimestamp(Instant.now())
|
|
||||||
.build()
|
|
||||||
).queue();
|
|
||||||
}
|
|
||||||
} else if (inputevent instanceof MessageReactionAddEvent) {
|
|
||||||
MessageReactionAddEvent event = (MessageReactionAddEvent) inputevent;
|
|
||||||
if (!event.getGuild().getId().equals("448554629282922527")) {
|
|
||||||
Calendar cal = Calendar.getInstance();
|
|
||||||
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");
|
|
||||||
String time = sdf.format(cal.getTime());
|
|
||||||
event.getTextChannel().getMessageById(event.getMessageId()).queue(
|
|
||||||
msg -> {
|
|
||||||
StringBuilder reactions = new StringBuilder();
|
|
||||||
msg.getReactions().forEach(messageReaction -> reactions.append(messageReaction.getReactionEmote().getName()+" ("+messageReaction.getCount()+")"));
|
|
||||||
r.table("reactionadd").insert(
|
|
||||||
r.hashMap("MessageID", msg.getIdLong())
|
|
||||||
.with("AuthorID", msg.getIdLong())
|
|
||||||
.with("GuildID", event.getGuild().getIdLong())
|
|
||||||
.with("Content", msg.getContentRaw())
|
|
||||||
.with("Time", time)
|
|
||||||
.with("NewReaction", event.getReaction().getReactionEmote().getName())
|
|
||||||
.with("Reactions", reactions.toString())
|
|
||||||
).run(Database.getConn());
|
|
||||||
}
|
|
||||||
);
|
|
||||||
BOT.getTextChannelById(Main.ReactionLog)
|
|
||||||
.sendMessage(
|
|
||||||
new EmbedBuilder()
|
|
||||||
.setAuthor(event.getMember().getUser().getName(), "https://discordapp.com/channels/@me/" + event.getMember().getUser().getId() + "/", event.getMember().getUser().getAvatarUrl()).setColor(65280)
|
|
||||||
.setTitle("Reaction Add", "https://canary.discordapp.com/channels/" + event.getGuild().getId() + "/")
|
|
||||||
.setThumbnail(event.getGuild().getIconUrl())
|
|
||||||
.setDescription("**Emoji:**\n" + event.getReactionEmote().getEmote().getAsMention())
|
|
||||||
.addField("Guild Name", event.getGuild().getName(), true)
|
|
||||||
.addField("Guild ID", event.getGuild().getId(), true)
|
|
||||||
.addField("Guild Owner", event.getGuild().getOwner().getUser().getName() + "#" + event.getGuild().getOwner().getUser().getDiscriminator(), true)
|
|
||||||
.addField("Channel Name", "#" + event.getChannel().getName(), true)
|
|
||||||
.setFooter(event.getJDA().getSelfUser().getName(), event.getJDA().getSelfUser().getAvatarUrl())
|
|
||||||
.setTimestamp(Instant.now())
|
|
||||||
.build()
|
|
||||||
).queue();
|
|
||||||
}
|
|
||||||
} else if (inputevent instanceof MessageReactionRemoveEvent) {
|
|
||||||
MessageReactionRemoveEvent event = (MessageReactionRemoveEvent) inputevent;
|
|
||||||
if (!event.getGuild().getId().equals("448554629282922527")) {
|
|
||||||
BOT.getTextChannelById(Main.ReactionLog)
|
|
||||||
.sendMessage(
|
|
||||||
new EmbedBuilder()
|
|
||||||
.setAuthor(event.getMember().getUser().getName(), "https://discordapp.com/channels/@me/" + event.getMember().getUser().getId() + "/", event.getMember().getUser().getAvatarUrl()).setColor(16711680)
|
|
||||||
.setTitle("Reaction Remove", "https://canary.discordapp.com/channels/" + event.getGuild().getId() + "/")
|
|
||||||
.setThumbnail(event.getGuild().getIconUrl())
|
|
||||||
.setDescription("**Emoji:**\n" + event.getReactionEmote().getEmote().getAsMention())
|
|
||||||
.addField("Guild Name", event.getGuild().getName(), true)
|
|
||||||
.addField("Guild ID", event.getGuild().getId(), true)
|
|
||||||
.addField("Guild Owner", event.getGuild().getOwner().getUser().getName() + "#" + event.getGuild().getOwner().getUser().getDiscriminator(), true)
|
|
||||||
.addField("Channel Name", "#" + event.getChannel().getName(), true)
|
|
||||||
.setFooter(event.getJDA().getSelfUser().getName(), event.getJDA().getSelfUser().getAvatarUrl())
|
|
||||||
.setTimestamp(Instant.now())
|
|
||||||
.build()
|
|
||||||
).queue();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} catch (Exception ignore) {
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -1 +0,0 @@
|
||||||
0 0 0 0 0 0 0 0 0 0 0 0 0 50 50 50 50 50 112175 114219 33063 0 0
|
|
||||||
Loading…
Add table
Reference in a new issue