Skip to content

Commit 2ae47cb

Browse files
committed
Fixed UDP
1 parent 802e0dc commit 2ae47cb

File tree

2 files changed

+21
-3
lines changed

2 files changed

+21
-3
lines changed

src/SinricPro.h

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -140,6 +140,7 @@ void SinricProClass::begin(String socketAuthToken, String signingKey, String ser
140140
this->signingKey = signingKey;
141141
this->serverURL = serverURL;
142142
_begin = true;
143+
_udpListener.begin(&receiveQueue);
143144
}
144145

145146
template <typename DeviceType>
@@ -305,8 +306,8 @@ void SinricProClass::handleSendQueue() {
305306
#endif
306307

307308
switch (rawMessage->getInterface()) {
308-
case IF_WEBSOCKET: _websocketListener.sendMessage(messageStr); break;
309-
case IF_UDP: _udpListener.sendMessage(messageStr); break;
309+
case IF_WEBSOCKET: DEBUG_SINRIC("[SinricPro:handleSendQueue]: Sending to websocket\r\n"); _websocketListener.sendMessage(messageStr); break;
310+
case IF_UDP: DEBUG_SINRIC("[SinricPro:handleSendQueue]: Sending to UDP\r\n");_udpListener.sendMessage(messageStr); break;
310311
default: break;
311312
}
312313
delete rawMessage;
@@ -387,6 +388,7 @@ void SinricProClass::extractTimestamp(JsonDocument &message) {
387388
// extract timestamp from request message
388389
tempTimestamp = message["payload"]["createdAt"] | 0;
389390
if (tempTimestamp) {
391+
DEBUG_SINRIC("[SinricPro:extractTimestamp(): Got Timestamp %lu\r\n", tempTimestamp);
390392
baseTimestamp = tempTimestamp - (millis() / 1000);
391393
return;
392394
}

src/SinricProUDP.h

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ void udpListener::handle() {
4343
if (!_udp.available()) return;
4444
int len = _udp.parsePacket();
4545
if (len) {
46-
46+
4747
char buffer[1024];
4848
int n = _udp.read(buffer, 1024);
4949
buffer[n] = 0;
@@ -57,7 +57,23 @@ void udpListener::sendMessage(String &message) {
5757
_udp.beginPacket(_udp.remoteIP(), _udp.remotePort());
5858
_udp.print(message);
5959
_udp.endPacket();
60+
// restart UDP??
61+
#if defined ESP8266
62+
_udp.beginMulticast(WiFi.localIP(), UDP_MULTICAST_IP, UDP_MULTICAST_PORT);
63+
#endif
64+
#if defined ESP32
65+
_udp.beginMulticast(UDP_MULTICAST_IP, UDP_MULTICAST_PORT);
66+
#endif
67+
}
68+
69+
/*
70+
void udpListener::sendMessage(String &message) {
71+
WiFiUDP UDPsender;
72+
UDPsender.beginPacket(_udp.remoteIP(), _udp.remotePort());
73+
UDPsender.print(message);
74+
UDPsender.endPacket();
6075
}
76+
*/
6177

6278
void udpListener::stop() {
6379
_udp.stop();

0 commit comments

Comments
 (0)