sse-endpoint

This commit is contained in:
tonyrewin 2022-12-12 11:03:48 +03:00
parent 95cefd5643
commit d117493ff5
3 changed files with 7 additions and 6 deletions

View File

@ -21,7 +21,7 @@ from services.zine.gittask import GitTask
from settings import DEV_SERVER_STATUS_FILE_NAME, SENTRY_DSN
# from sse.transport import GraphQLSSEHandler
# from services.inbox.presence import on_connect, on_disconnect
# from services.inbox.sse import sse_messages
from services.inbox.sse import sse_messages
import_module("resolvers")
@ -68,7 +68,7 @@ routes = [
Route("/oauth/{provider}", endpoint=oauth_login),
Route("/oauth-authorize", endpoint=oauth_authorize),
Route("/confirm/{token}", endpoint=confirm_email_handler),
# Route("/messages", endpoint=sse_messages)
Route("/messages", endpoint=sse_messages)
]
app = Starlette(

View File

@ -85,7 +85,7 @@ if __name__ == "__main__":
headers=local_headers,
# log_config=log_settings,
log_level=None,
access_log=False,
access_log=True,
reload=want_reload
) # , ssl_keyfile="discours.key", ssl_certfile="discours.crt")
elif x == "migrate":

View File

@ -1,13 +1,14 @@
from sse_starlette.sse import EventSourceResponse
from starlette.requests import Request
from resolvers.inbox.messages import messages_generator_by_user
from resolvers.inbox.messages import message_generator
from base.exceptions import Unauthorized
async def sse_messages(request: Request):
print(f'[SSE] {request.scope}')
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']:
return EventSourceResponse(messages_generator_by_user(request['user'].user_id))
event_generator = message_generator(None, request.scope)
return EventSourceResponse(event_generator)
else:
raise Unauthorized("Please login")