@@ -188,28 +188,6 @@ void ArduinoIoTCloudClass::update()
188188 update (MAX_RETRIES, RECONNECTION_TIMEOUT);
189189}
190190
191- bool ArduinoIoTCloudClass::mqttReconnect (int const maxRetries, int const timeout)
192- {
193- // Counter for reconnection retries
194- int retries = 0 ;
195- unsigned long start = millis ();
196-
197- // Check for MQTT broker connection, of if maxReties limit is reached
198- // if MQTTClient is connected , simply do nothing and retun true
199- while (!_mqttClient->connected () && (retries++ < maxRetries) && (millis () - start < timeout)) {
200- // int connectError = _mqttClient->connectError();
201-
202- // try establish the MQTT broker connection
203- connect ();
204- }
205-
206- // It was impossible to establish a connection, return
207- if ((retries == maxRetries) || (millis () - start >= timeout))
208- return false ;
209-
210- return true ;
211- }
212-
213191void ArduinoIoTCloudClass::update (int const reconnectionMaxRetries, int const reconnectionTimeoutMs)
214192{
215193 connectionCheck ();
@@ -317,7 +295,7 @@ void ArduinoIoTCloudClass::connectionCheck()
317295
318296
319297 switch (iotStatus) {
320- case IOT_STATUS_IDLE :
298+ case IOT_STATUS_CLOUD_IDLE :
321299 setIoTConnectionState (IOT_STATUS_CLOUD_CONNECTING);
322300 break ;
323301 case IOT_STATUS_CLOUD_ERROR:
@@ -326,6 +304,9 @@ void ArduinoIoTCloudClass::connectionCheck()
326304 break ;
327305 case IOT_STATUS_CLOUD_CONNECTED:
328306 debugMessage (" ." , 4 , false , true );
307+ if (!_mqttClient->connected ()){
308+ setIoTConnectionState (IOT_STATUS_CLOUD_DISCONNECTED);
309+ }
329310 break ;
330311 case IOT_STATUS_CLOUD_DISCONNECTED:
331312 setIoTConnectionState (IOT_STATUS_CLOUD_RECONNECTING);
0 commit comments