UDP/TCP client mode repaired (#766)

This commit is contained in:
Soef
2017-03-07 18:55:40 +01:00
committed by Henrik Ekblad
parent 7824e12823
commit e7ae5d144e
2 changed files with 21 additions and 18 deletions
+1
View File
@@ -8,3 +8,4 @@ Makefile.inc
build build
bin bin
*.sublime-workspace *.sublime-workspace
.idea
+8 -6
View File
@@ -137,9 +137,7 @@ bool gatewayTransportInit(void)
delay(1000); delay(1000);
#endif /* MY_GATEWAY_ESP8266 */ #endif /* MY_GATEWAY_ESP8266 */
#ifdef MY_USE_UDP #if defined(MY_GATEWAY_CLIENT_MODE)
_ethernetServer.begin(_ethernetGatewayPort);
#elif defined(MY_GATEWAY_CLIENT_MODE)
#if defined(MY_CONTROLLER_URL_ADDRESS) #if defined(MY_CONTROLLER_URL_ADDRESS)
if (client.connect(MY_CONTROLLER_URL_ADDRESS, MY_PORT)) { if (client.connect(MY_CONTROLLER_URL_ADDRESS, MY_PORT)) {
#else #else
@@ -150,10 +148,13 @@ bool gatewayTransportInit(void)
gatewayTransportSend(buildGw(_msgTmp, I_GATEWAY_READY).set(MSG_GW_STARTUP_COMPLETE)); gatewayTransportSend(buildGw(_msgTmp, I_GATEWAY_READY).set(MSG_GW_STARTUP_COMPLETE));
_w5100_spi_en(true); _w5100_spi_en(true);
presentNode(); presentNode();
} else { }
else {
client.stop(); client.stop();
debug(PSTR("Eth: Failed to connect\n")); debug(PSTR("Eth: Failed to connect\n"));
} }
#elif defined(MY_USE_UDP)
_ethernetServer.begin(_ethernetGatewayPort);
#else #else
#if defined(MY_GATEWAY_LINUX) && defined(MY_IP_ADDRESS) #if defined(MY_GATEWAY_LINUX) && defined(MY_IP_ADDRESS)
_ethernetServer.begin(_ethernetGatewayIP); _ethernetServer.begin(_ethernetGatewayIP);
@@ -162,6 +163,7 @@ bool gatewayTransportInit(void)
_ethernetServer.begin(); _ethernetServer.begin();
#endif #endif
#endif /* USE_UDP */ #endif /* USE_UDP */
_w5100_spi_en(false); _w5100_spi_en(false);
return true; return true;
} }
@@ -204,7 +206,7 @@ bool gatewayTransportSend(MyMessage &message)
return false; return false;
} }
} }
nbytes = client.write(_ethernetMsg, strlen(_ethernetMsg)); nbytes = client.write((const uint8_t*)_ethernetMsg, strlen(_ethernetMsg));
#endif #endif
#else #else
// Send message to connected clients // Send message to connected clients
@@ -298,7 +300,7 @@ bool gatewayTransportAvailable(void)
if (packet_size) { if (packet_size) {
//debug(PSTR("UDP packet available. Size:%d\n"), packet_size); //debug(PSTR("UDP packet available. Size:%d\n"), packet_size);
#if defined(MY_GATEWAY_ESP8266) #if defined(MY_GATEWAY_ESP8266) && !defined(MY_GATEWAY_CLIENT_MODE)
_ethernetServer.read(inputString[0].string, MY_GATEWAY_MAX_RECEIVE_LENGTH); _ethernetServer.read(inputString[0].string, MY_GATEWAY_MAX_RECEIVE_LENGTH);
inputString[0].string[packet_size] = 0; inputString[0].string[packet_size] = 0;
debug(PSTR("UDP packet received: %s\n"), inputString[0].string); debug(PSTR("UDP packet received: %s\n"), inputString[0].string);