Пример #1
0
async def process(reader: StreamReader, writer: StreamWriter):
    host, port = writer.transport.get_extra_info('peername')
    logging.info(f'Connected to: {host}:{port}')

    factory = CommandFactory(reader, writer)

    while not writer.is_closing():
        line = (await reader.readline()).decode().strip()
        command = factory.get_command(line)
        await command.execute()

    logging.info(f'Disconnected from {host}:{port}')
Пример #2
0
async def state_handler(writer: StreamWriter):
    while not writer.is_closing():
        await asyncio.wait(
            [update_state(),
             send_state(writer),
             asyncio.sleep(step_seconds)])