diff options
author | 2018-04-04 16:09:05 +0100 | |
---|---|---|
committer | 2018-04-04 16:09:05 +0100 | |
commit | 1d1e17f7f19203d449c8641794cd2c61705fdcd2 (patch) | |
tree | 63640306e93059a181b2af04952b0403c38ef8ee /pysite/views/ws/rst.py | |
parent | CSRF error route doesn't do shit, sadly (diff) |
Early wiki work including a WS test route for RST parsing
Diffstat (limited to 'pysite/views/ws/rst.py')
-rw-r--r-- | pysite/views/ws/rst.py | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/pysite/views/ws/rst.py b/pysite/views/ws/rst.py new file mode 100644 index 00000000..c85c10a0 --- /dev/null +++ b/pysite/views/ws/rst.py @@ -0,0 +1,27 @@ +# coding=utf-8 +import logging + +from docutils.core import publish_parts +from geventwebsocket.websocket import WebSocket + +from pysite.websockets import WS + + +class RSTWebsocket(WS): + path = "/rst" + name = "ws.rst" + + def __init__(self, socket: WebSocket): + super().__init__(socket) + self.log = logging.getLogger() + + def on_open(self): + self.log.debug("RST | WS opened.") + self.send("Hey, welcome!") + + def on_message(self, message): + self.log.debug(f"RST | Message: {message}") + self.send(publish_parts(source=message, writer_name="html5")["html_body"]) + + def on_close(self): + self.log.debug("RST | WS closed.") |