Working development server (no encryption now)

This commit is contained in:
BarsTiger
2023-07-02 11:54:49 +03:00
parent 68f1990b7e
commit 2a4e40b41b
23 changed files with 486 additions and 9 deletions

View File

@@ -0,0 +1,36 @@
from attrs import define
from fastapi import WebSocket
from ..objects.webmessage import (
webmessages_union,
webmessage_error_message_literal,
WebErrorMessage,
WebUserMessage
)
@define
class Connection(object):
ws: WebSocket
username: str
public_key: str
async def send_webmessage(self, obj: webmessages_union):
await self.ws.send_text(obj.to_json())
async def send_error(
self,
error_message: webmessage_error_message_literal
):
await self.send_webmessage(
WebErrorMessage(
error_message=error_message
)
)
async def send_connect(self):
await self.send_webmessage(
WebUserMessage(
type="connect",
username=self.username
)
)