Update server to respond to status checking messages

The simulator responds to unknown valid datagrams by returning them to the
sender.
This commit is contained in:
Ada 2023-09-22 22:47:21 +02:00
parent dd860166fd
commit 6d5d7cf261

View File

@ -2,6 +2,7 @@
#include "settings.h" #include "settings.h"
#include <QUdpSocket> #include <QUdpSocket>
#include <QNetworkDatagram> #include <QNetworkDatagram>
#include <ostream>
#include "mainwindow.h" #include "mainwindow.h"
#define UDP_IMAGE_PORT 4242 #define UDP_IMAGE_PORT 4242
@ -49,6 +50,7 @@ void UdpLedServer ::readPendingDatagrams()
void UdpLedServer::processTheDatagram(QNetworkDatagram datagram) { void UdpLedServer::processTheDatagram(QNetworkDatagram datagram) {
if (datagram.isValid() && datagram.data().length() == PACKET_LENGTH) { if (datagram.isValid() && datagram.data().length() == PACKET_LENGTH) {
qInfo("Received regular datagram.");
uint8_t brightness = datagram.data().at(PACKET_INDEX_BRIGHTNESS); uint8_t brightness = datagram.data().at(PACKET_INDEX_BRIGHTNESS);
int currentIndex = PACKET_INDEX_PANEL0; int currentIndex = PACKET_INDEX_PANEL0;
@ -70,5 +72,13 @@ void UdpLedServer::processTheDatagram(QNetworkDatagram datagram) {
qDebug() << "Received datagram:" << brightness; qDebug() << "Received datagram:" << brightness;
} else if (datagram.isValid() && datagram.data().length() != PACKET_LENGTH) {
qDebug("Received status-check datagram.");
//socket = new QUdpSocket(this);
this->mUdpSocket->writeDatagram(datagram.data(), sizeof(datagram.data()), datagram.senderAddress(), datagram.senderPort());
//this->mUdpSocket->writeDatagram(datagram);
qDebug("Returned datagram");
} else {
qDebug("Received invalid datagram.");
} }
} }