From b8dfce9cefbc06db1cfc532d14abddcd0a45feed Mon Sep 17 00:00:00 2001 From: Griatch Date: Mon, 20 Oct 2014 22:38:06 +0200 Subject: [PATCH] Made also the prompt parsed for MXP tags and added html parsing for the prompt in the webclient. See #599. --- src/server/portal/telnet.py | 2 ++ src/server/portal/websocket_client.py | 4 ++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/server/portal/telnet.py b/src/server/portal/telnet.py index 436f34afa5..f02a0e3d7b 100644 --- a/src/server/portal/telnet.py +++ b/src/server/portal/telnet.py @@ -258,6 +258,8 @@ class TelnetProtocol(Telnet, StatefulTelnetProtocol, Session): if prompt: # Send prompt separately prompt = ansi.parse_ansi(_RE_N.sub("", prompt) + "{n", strip_ansi=nomarkup, xterm256=xterm256) + if mxp: + prompt = mxp_parse(prompt) prompt = prompt.replace(IAC, IAC + IAC).replace('\n', '\r\n') prompt += IAC + GA self.transport.write(mccp_compress(self, prompt)) diff --git a/src/server/portal/websocket_client.py b/src/server/portal/websocket_client.py index d17702f471..1b5fe8656b 100644 --- a/src/server/portal/websocket_client.py +++ b/src/server/portal/websocket_client.py @@ -122,10 +122,10 @@ class WebSocketClient(Protocol, Session): oobstruct = self.sessionhandler.oobstruct_parser(kwargs.pop("oob")) #print "oob data_out:", "OOB" + json.dumps(oobstruct) self.sendLine("OOB" + json.dumps(oobstruct)) - if "prompt" in kwargs: - self.sendLine("PROMPT" + kwargs["prompt"]) raw = kwargs.get("raw", False) nomarkup = kwargs.get("nomarkup", False) + if "prompt" in kwargs: + self.sendLine("PROMPT" + parse_html(kwargs["prompt"], strip_ansi=nomarkup)) if raw: self.sendLine(text) else: