我有一个用 python 编写的代码,接收到的信息来自设备是 FMB920,这是我的代码:
import socket
from ast import literal_eval
from process import add_trama
localIP = "104.248.56.204"
localPort = 7777
bufferSize = 1024
msgFromServer = "1"
bytesToSend = str.encode(msgFromServer)
# Create a datagram socket
UDPServerSocket = socket.socket(family=socket.AF_INET, type=socket.SOCK_DGRAM)
# Bind to address and ip
UDPServerSocket.bind((localIP, localPort))
print("UDP server up and listening")
# Listen for incoming datagrams
while(True):
bytesAddressPair = UDPServerSocket.recvfrom(bufferSize)
message = bytesAddressPair[0]
address = bytesAddressPair[1]
clientMsg = "Message from Client:{}".format(message)
clientIP = "Client IP Address:{}".format(address)
mymessage=message.hex()
#add_trama(mymessage.upper())
# Sending a reply to client
UDPServerSocket.sendto(bytesToSend, address)
我的问题是如何正确地向设备发送正确接收到的消息并且它不会再次向我发送相同的信息,我使用以下代码:
# Sending a reply to client
UDPServerSocket.sendto(bytesToSend, address)
但它对我不起作用,感谢您的帮助。