python - 如何回答 ACK teltonika
问题描述
我有一个用 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)
但它对我不起作用,感谢您的帮助。
解决方案
推荐阅读
- amazon-web-services - 如何以经济高效的方式管理 AWS Spot 实例?
- swift - 向分段上传添加自定义自定义参数
- python - 有没有办法可以将我的 REST API (Python-MongoDB) 连接到 PowerBI?
- fortran - 在 Fortran 中使用 MPI_AllReduce 和 MPI_IN_PLACE
- c - 无法在 VSCode 中运行 C
- python - 如何扩展预测值?
- c# - Moq 验证从未为 Entity Framework Core 调用更新
- kubernetes - 如何使用 skaffold buildpacks 部署特定图像?
- r - 如何在数据框列表中使用 log() 转换并执行 aov()?
- azure-pipelines - 在 Azure yaml 管道中的另一个任务中获取任务的失败消息