1585
|
1 def patchCycloneSse():
|
|
2 import cyclone.sse
|
|
3 from cyclone import escape
|
|
4
|
|
5 def sendEvent(self, message, event=None, eid=None, retry=None):
|
|
6 if isinstance(message, dict):
|
|
7 message = escape.json_encode(message)
|
|
8 if isinstance(message, str):
|
|
9 message = message.encode("utf-8")
|
|
10 assert isinstance(message, bytes)
|
|
11
|
|
12 if eid:
|
|
13 self.transport.write(b"id: %s\n" % eid)
|
|
14 if event:
|
|
15 self.transport.write(b"event: %s\n" % event)
|
|
16 if retry:
|
|
17 self.transport.write(b"retry: %s\n" % retry)
|
|
18
|
|
19 self.transport.write(b"data: %s\n\n" % message)
|
|
20
|
|
21 cyclone.sse.SSEHandler.sendEvent = sendEvent
|