package jk_5.nailed.server.teamspeak; import com.typesafe.config.Config; import jk_5.nailed.server.NailedPlatform; import jk_5.nailed.server.teamspeak.api.JTS3ServerQuery; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import java.util.HashMap; public class TeamspeakManager { private static final Config config = NailedPlatform.instance().getConfig().getConfig("teamspeak"); private static final boolean enabled = config.getBoolean("enabled"); private static final String host = config.getString("host"); private static final int port = config.getInt("port"); private static final String username = config.getString("username"); private static final String password = config.getString("password"); private static boolean connected = false; private static final Logger logger = LogManager.getLogger(); private static final JTS3ServerQuery server = new JTS3ServerQuery(); public static void start(){ if(!enabled){ logger.info("Teamspeak integration is disabled in the config"); return; } logger.info("Starting teamspeak integration"); if(!server.connectTS3Query(host, port)){ displayError(); } } private static void displayError(){ String error = server.getLastError(); if(error != null){ //TODO: proper logging System.out.println("Teamspeak error:"); System.out.println(error); if(server.getLastErrorPermissionID() != -1) { HashMap<String, String> permInfo = server.getPermissionInfo(server.getLastErrorPermissionID()); if(permInfo != null){ System.out.println("Missing Permission: " + permInfo.get("permname")); } } } } }