core/services/inbox/sse.py
2022-12-12 11:03:48 +03:00

15 lines
569 B
Python

from sse_starlette.sse import EventSourceResponse
from starlette.requests import Request
from resolvers.inbox.messages import message_generator
from base.exceptions import Unauthorized
async def sse_messages(request: Request):
print(f'[SSE] {request.scope}') # FIXME: DOES NOT HAPPEN TO BE CALLED
# https://github.com/enisdenjo/graphql-sse/blob/master/PROTOCOL.md
if request['user']:
event_generator = message_generator(None, request.scope)
return EventSourceResponse(event_generator)
else:
raise Unauthorized("Please login")