# -*- coding: utf-8 -*- import time import socket # 组播组IP和端口 mcast_group_ip = '224.0.0.1' mcast_group_port = 50030 def sender(): # 建立发送socket,和正常UDP数据包没区别 name = 'sender' send_sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM, socket.IPPROTO_UDP) # 每十秒发送一遍消息 while True: msg = '2c0a00006b000000ffffffffffff148f21304377148f21304377148f21304377148f21304377148f21304377148f21304377148f21304377148f21304377148f21304377148f21304377148f21304377148f21304377148f21304377148f21304377148f21304377148f21304377474d4e3100' msg_hex = bytes.fromhex(msg) try: send_sock.sendto(msg_hex, (mcast_group_ip, mcast_group_port)) print(f'{time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())}: awaken_gls10 message send finish') except Exception as e: print(f'Other error occur [{name}]:[{mcast_group_ip}]:[{mcast_group_port}]:{e}') # data, server = send_sock.recvfrom(4096) # print(data.decode()) time.sleep(10) if __name__ == "__main__": sender()