Add a function to receive a message.

main
KKlochko 1 year ago
parent 3f086c9c80
commit d90b280d41

@ -32,12 +32,17 @@ class Client:
reader, writer = await asyncio.open_connection(self.__ip, self.__port) reader, writer = await asyncio.open_connection(self.__ip, self.__port)
await self.handle(reader, writer) await self.handle(reader, writer)
@staticmethod
async def receive_message(reader) -> str:
size, = struct.unpack('<L', await reader.readexactly(4))
message = await reader.readexactly(size)
return message.decode('utf-8')
async def handle(self, reader, writer): async def handle(self, reader, writer):
try: try:
while True: while True:
size, = struct.unpack('<L', await reader.readexactly(4)) title = await self.receive_message(reader)
message = await reader.readexactly(size) message = await self.receive_message(reader)
print(f"{message.decode('utf-8') =}")
except asyncio.CancelledError: except asyncio.CancelledError:
print('Something went wrong') print('Something went wrong')

@ -19,7 +19,7 @@
import asyncio import asyncio
from .client import Client from notification_client.client import Client
if __name__ == '__main__': if __name__ == '__main__':
client = Client('127.0.0.1', 5555) client = Client('127.0.0.1', 5555)

Loading…
Cancel
Save