将消息发送到广播地址后侦听UDP响应

时间:2020-06-16 15:00:28

标签: python-3.x loops while-loop udp broadcast

我正在向广播地址发送一条消息,以发现网络上的特定设备。我可以发送消息并成功获取响应,但是我正在while True循环内处理响应。

但是,我不认为这是最好的方法,因为循环不会退出。

任何人都可以建议什么是处理响应的最佳方法。下面是我的代码(我正在处理超时)

def broadcast_message():
cs = socket(AF_INET, SOCK_DGRAM)
cs.setsockopt(SOL_SOCKET, SO_REUSEADDR, 1)
cs.setsockopt(SOL_SOCKET, SO_BROADCAST, 1)
cs.settimeout(10)
cs.sendto("Message".encode(), ('<broadcast-ip>', <port>))
while True:
    bytes_recieved = cs.recvfrom(1024)
    print(bytes_recieved)

0 个答案:

没有答案