1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
"""
file: pi_rcv.py
Copyright (C) 2025 Private Island Networks Inc.
"""
import sys
import argparse
import asyncio
import asyncio_dgram
VERSION = '0.1'
async def udp_rcv(args):
""" controller response """
stream = await asyncio_dgram.bind((args.ipaddr, 0x8000))
print(f"Serving on {stream.sockname}")
while(True):
data, remote_addr = await stream.recv()
if args.verbose:
print(f"received: {data[0], data[1], data[2], data[3], data[4], data[5], data[6], data[7]}")
if __name__ == "__main__":
parser = argparse.ArgumentParser(description='UDP (datagram) test receiver', epilog='Version: ' + str(VERSION))
parser.add_argument('-i','--ipaddr',default="192.168.5.40", help='receive IP address',action='store', required=False)
parser.add_argument('-p','--port',default="0x8020", help='receive port',action='store', required=False)
parser.add_argument('-v','--verbose',action='store_true', help='be verbose')
args = parser.parse_args()
asyncio.run(udp_rcv(args))
stream.close()
print('exit')
|