#include "socket.h" #include UdpSocket::UdpSocket(QObject* parent, quint16 port) : QObject(parent), _port(port) { _socket = new QUdpSocket(this); _socket->bind(QHostAddress::LocalHost, port); connect(_socket, SIGNAL(readyRead()), this, SLOT(readyRead())); } UdpSocket::~UdpSocket() { delete _socket; } void UdpSocket::sayHello() { sayMsg("Connected :))"); } void UdpSocket::sayMsg(QString Msg) { QByteArray Data; Data.append(Msg); _socket->writeDatagram(Data, QHostAddress::LocalHost, _port); } QString UdpSocket::getTime() { QDateTime current_time_object = QDateTime::currentDateTime(); QString formatted_time = current_time_object.toString("yyyy/MM/dd - hh:mm:ss"); return formatted_time; } void UdpSocket::readyRead() { QByteArray Buffer; Buffer.resize(_socket->pendingDatagramSize()); QHostAddress sender_addr{}; quint16 sender_port{}; _socket->readDatagram(Buffer.data(), Buffer.size(), &sender_addr, &sender_port); qDebug() << "New Message arrived at" << getTime(); qDebug() << "Address :" << sender_addr.toString(); qDebug() << "Port : " << sender_port; qDebug() << "Content : " << Buffer << '\n'; }