diff --git a/package.json b/package.json
index c84f91a..0a4ee94 100644
--- a/package.json
+++ b/package.json
@@ -11,8 +11,8 @@
"author": "Flummi & jkhsjdhjs",
"license": "WTFPL",
"dependencies": {
- "cuffeo": "^1.0.6",
- "flumm-fetch-cookies": "^1.3.5",
- "pg": "^7.14.0"
+ "cuffeo": "^1.0.6-1",
+ "flumm-fetch-cookies": "^1.4.0",
+ "pg": "^8.3.0"
}
}
diff --git a/src/inc/trigger/eso.mjs b/src/inc/trigger/eso.mjs
new file mode 100644
index 0000000..e7dcc0a
--- /dev/null
+++ b/src/inc/trigger/eso.mjs
@@ -0,0 +1,28 @@
+import fetch from "flumm-fetch-cookies";
+
+const link = "https://esoserverstatus.net/";
+const regex = {
+ main: /
(.*?)<\/div>/sg,
+ info: /
\[(?.*)\] (?.*)<\/b>.*(?.*)<\/b>/s
+};
+
+export default async bot => {
+
+ return [{
+ name: "eso",
+ call: /^(\.|\/)eso/i,
+ f: async e => {
+ switch(e.args[0]) {
+ default:
+ const res = await (await fetch(link)).text();
+ const matches = res.match(regex.main);
+ const info = matches.map(match => {
+ const tmp = match.match(regex.info).groups;
+ return `[${tmp.platform}] ${tmp.server} ${tmp.status}`;
+ });
+ e.reply(info);
+ break;
+ }
+ }
+ }];
+};
diff --git a/src/inc/trigger/sysinfo.mjs b/src/inc/trigger/sysinfo.mjs
index aa426a7..0983008 100644
--- a/src/inc/trigger/sysinfo.mjs
+++ b/src/inc/trigger/sysinfo.mjs
@@ -1,4 +1,4 @@
-import cp from "child_process";
+import { exec } from "child_process";
export default async bot => {
@@ -6,8 +6,8 @@ export default async bot => {
name: "sysinfo",
call: /^(\.|\/)sysinfo/i,
set: "uwe",
- f: e => {
- cp.exec("inxi", (err, stdout, stderr) => {
+ f: async e => {
+ exec(`inxi ${e.type !== "irc" ? "-c" : ""}`, (err, stdout, stderr) => {
e.reply(stdout);
});
}
diff --git a/src/inc/trigger/viecher.mjs b/src/inc/trigger/viecher.mjs
new file mode 100644
index 0000000..ece930e
--- /dev/null
+++ b/src/inc/trigger/viecher.mjs
@@ -0,0 +1,28 @@
+import fetch from "flumm-fetch-cookies";
+
+export default async bot => {
+ return [{
+ name: "randomcat",
+ call: /^(\.|\/)ka(tz|ds)(.*)$/i,
+ f: async e => {
+ const katz = await (await fetch("https://api.thecatapi.com/v1/images/search?size=full")).json();
+ return e.reply(katz[0]['url']);
+ }
+ }, {
+ name: "randomdoggo",
+ call: /^(\.|\/)dog(go)?(.*)$/i,
+ f: async e => {
+ const doggo = await (await fetch("https://api.thedogapi.com/v1/images/search?size=full")).json();
+ return e.reply(doggo[0]['url']);
+ }
+ }, {
+ name: "randommeme",
+ call: /^(\.|\/)meme(.*)$/i,
+ f: async e => {
+ const meme = await (await fetch("https://meme-api.herokuapp.com/gimme")).json();
+ if(meme.nsfw)
+ return e.reply("ups, dieses Meme wäre nsfw gewesen.");
+ return e.reply(meme.url);
+ }
+ }]
+};
\ No newline at end of file