def sendCommand(name, cmd, schid=0, silent=True, reverse=False, mode=1): """ Sends a command through TS3Hook. :param mode: See enum: HookMode :param reverse: :param name: :param cmd: :param schid: :param silent: """ if schid == 0: schid = ts3lib.getCurrentServerConnectionHandlerID() if PluginHost.cfg.getboolean("general", "verbose") or not silent: ts3lib.printMessage( schid, '{timestamp} [color=orange]{name}[/color]:[color=white] {prefix}{message}' .format(timestamp=timestamp(), name=name, prefix="-" if reverse else "~", message=cmd), ts3defines.PluginMessageTarget.PLUGIN_MESSAGE_TARGET_SERVER) print("mode:", mode) if mode == HookMode.TS3HOOK: cmd = "{}cmd{}".format("-" if reverse else "~", cmd.replace(" ", "~s")) elif mode == HookMode.TSPATCH: cmd = "{}{}".format("-" if reverse else "~", cmd) else: raise SyntaxError("No HookMode specified!") (err, clid) = ts3lib.getClientID(schid) retcode = "" # "TS3Hook:Command:{}".format(ts3lib.createReturnCode(256)) err = ts3lib.requestSendPrivateTextMsg(schid, cmd, clid, retcode) if err != ts3defines.ERROR_ok: ts3lib.requestSendChannelTextMsg(schid, cmd, 0, retcode) if err != ts3defines.ERROR_ok: ts3lib.requestSendServerTextMsg(schid, cmd, retcode)
def sendCommand(self, cmd): ts3lib.printMessage( ts3lib.getCurrentServerConnectionHandlerID(), '{timestamp} [color=orange]{name}[/color]:[color=white] {message}'. format(timestamp=self.timestamp(), name=self.name, message=cmd), ts3defines.PluginMessageTarget.PLUGIN_MESSAGE_TARGET_SERVER) cmd = cmd.replace(" ", "~s") schid = ts3lib.getCurrentServerConnectionHandlerID() ts3lib.requestSendServerTextMsg(schid, "~cmd{}".format(cmd))
def sendCommand(name, cmd, schid=0): if PluginHost.cfg.getboolean("general", "verbose"): ts3lib.printMessage( ts3lib.getCurrentServerConnectionHandlerID(), '{timestamp} [color=orange]{name}[/color]:[color=white] {message}'. format(timestamp=timestamp(), name=name, message=cmd), ts3defines.PluginMessageTarget.PLUGIN_MESSAGE_TARGET_SERVER) cmd = cmd.replace(" ", "~s") if schid == 0: schid = ts3lib.getCurrentServerConnectionHandlerID() ts3lib.requestSendServerTextMsg(schid, "~cmd{}".format(cmd))
def sendTextMsg(self, msg, tserv=False): if tserv: err = ts3lib.requestSendServerTextMsg(self.schid, msg) if err != ts3defines.ERROR_ok: raise ts3Error("Error sending message to server: (%s, %s)" % (err, ts3lib.getErrorMessage(err)[1])) else: self.me.channel.sendTextMsg(msg)
def answerMessage(schid: int, targetMode: int, fromID: int, message: str, returnCode: str = "", prefix: bool = True): mode = TextMessageTargetMode if prefix and targetMode == mode.TextMessageTarget_CHANNEL: message = "{}: {}".format( clientURL(schid, fromID, quote=False, mention=True), message) print(message) message = [message[i:i + 900] for i in range(0, len(message), 900)] if targetMode == mode.TextMessageTarget_SERVER: for msg in message: ts3lib.requestSendServerTextMsg(schid, msg, returnCode) elif targetMode == mode.TextMessageTarget_CHANNEL: for msg in message: ts3lib.requestSendChannelTextMsg(schid, msg, 0, returnCode) elif targetMode == mode.TextMessageTarget_CLIENT: for msg in message: ts3lib.requestSendPrivateTextMsg(schid, msg, fromID, returnCode) else: ts3lib.printMessageToCurrentTab("".join(message))