"""
python3 /home/server/repositories/repositories/sri-project.demo-py/3rdparty/xclient/xtcp.py
"""
import asyncio
import struct

async def send_message(reader, writer, values):
    data = struct.pack('!hh', *values)
    writer.write(data)
    await writer.drain()
    print(f"Sent values: {values}")

    size = struct.calcsize('!hh')
    response = await reader.read(size)
    if response:
        received_values = struct.unpack('!hh', response)
        print(f"Received response: {received_values}")

async def start_client(host='127.0.0.1', port=20917, messages=[(100, 200)]):
    reader, writer = await asyncio.open_connection(host, port)

    try:
        for values in messages:
            await send_message(reader, writer, values)
    finally:
        writer.close()
        await writer.wait_closed()

if __name__ == "__main__":
    messages = [(100, 200), (300, 400), (500, 600)]  # 示例消息列表
    asyncio.run(start_client(messages=messages))