MagicBot
2 years ago
2 changed files with 73 additions and 1 deletions
@ -0,0 +1,68 @@
@@ -0,0 +1,68 @@
|
||||
// • ▌ ▄ ·. ▄▄▄· ▄▄ • ▪ ▄▄· ▄▄▄▄· ▄▄▄· ▐▄▄▄ ▄▄▄ .
|
||||
// ·██ ▐███▪▐█ ▀█ ▐█ ▀ ▪██ ▐█ ▌▪▐█ ▀█▪▐█ ▀█ •█▌ ▐█▐▌·
|
||||
// ▐█ ▌▐▌▐█·▄█▀▀█ ▄█ ▀█▄▐█·██ ▄▄▐█▀▀█▄▄█▀▀█ ▐█▐ ▐▌▐▀▀▀
|
||||
// ██ ██▌▐█▌▐█ ▪▐▌▐█▄▪▐█▐█▌▐███▌██▄▪▐█▐█ ▪▐▌██▐ █▌▐█▄▄▌
|
||||
// ▀▀ █▪▀▀▀ ▀ ▀ ·▀▀▀▀ ▀▀▀·▀▀▀ ·▀▀▀▀ ▀ ▀ ▀▀ █▪ ▀▀▀
|
||||
// Magicbane Emulator Project © 2013 - 2022
|
||||
// www.magicbane.com
|
||||
|
||||
package discord.handlers; |
||||
|
||||
import discord.MagicBot; |
||||
import net.dv8tion.jda.api.events.message.MessageReceivedEvent; |
||||
import org.pmw.tinylog.Logger; |
||||
|
||||
import java.io.IOException; |
||||
|
||||
public class DevRequestHandler { |
||||
|
||||
public static void handleRequest(MessageReceivedEvent event, String[] args) { |
||||
|
||||
String serverCommand; |
||||
String buildTarget = ""; |
||||
String execString = ""; |
||||
|
||||
// Early exit if database unavailable or is not an admin
|
||||
|
||||
if (MagicBot.isAdminEvent(event) == false) |
||||
return; |
||||
|
||||
// No command supplied?
|
||||
|
||||
if (args.length != 1) |
||||
return; |
||||
|
||||
serverCommand = args[0].toLowerCase().trim(); |
||||
|
||||
if (args.length == 2) |
||||
buildTarget = args[1].toLowerCase().trim(); |
||||
|
||||
switch (serverCommand) { |
||||
|
||||
case "build" : |
||||
execString = "/bin/sh -c ./mbdevbuild.sh " + buildTarget; |
||||
break; |
||||
case "reboot": |
||||
execString = "/bin/sh -c ./mbdevrestart.sh"; |
||||
break; |
||||
case "debug": |
||||
execString = "/bin/sh -c ./mbdevdebug.sh"; |
||||
break; |
||||
case "shutdown": |
||||
execString = "/bin/sh -c ./mbdevkill.sh"; |
||||
break; |
||||
default: |
||||
break; |
||||
} |
||||
|
||||
if (execString.isEmpty() == false) { |
||||
try { |
||||
Runtime.getRuntime().exec(execString); |
||||
} catch (IOException e) { |
||||
e.printStackTrace(); |
||||
} |
||||
MagicBot.sendResponse(event, "Executed on dev: " + serverCommand + " " + buildTarget); |
||||
Logger.info(event.getAuthor().getName() + " told dev to " + serverCommand + " " + buildTarget); |
||||
} |
||||
} |
||||
} |
Loading…
Reference in new issue