Added "addMessage" method

This commit is contained in:
Markus Bauer 2021-05-16 23:17:07 +02:00
parent a6dfc299b8
commit 8d3284f261
1 changed files with 22 additions and 1 deletions

View File

@ -55,10 +55,31 @@ class SseStream():
""" Method which is called regular to send out the event """ """ Method which is called regular to send out the event """
while True: while True:
msg = self.queue.get(block=True, timeout=None) msg = self.queue.get(block=True, timeout=None)
if isinstance( msg, sse ): if isinstance( msg, sse.Sse ):
for data in msg: for data in msg:
yield data yield data
def addMessage(self, event_name, data, id = 0):
"""
Adds a event to the queue so it can be sent out
---
Parameters:
------
event_name: str
Name of the event
data: string or list of strings
Datat to be send
id: int
id of the event, if set to 0 no ID will be sent """
event = sse.Sse()
if id > 0:
event.set_event_id(id)
else:
event.reset_event_id()
event.add_message( event_name, data )
self._queue.put(event)