@@ -30,6 +30,11 @@ const static int compressedCertSlot = 10;
30
30
const static int serialNumberAndAuthorityKeyIdentifierSlot = 11 ;
31
31
const static int thingIdSlot = 12 ;
32
32
33
+ constexpr static int CONNECT_FAILURE_SUBSCRIBE = -1 ;
34
+ constexpr static int CONNECT_FAILURE = 0 ;
35
+ constexpr static int CONNECT_SUCCESS = 1 ;
36
+
37
+
33
38
static ConnectionManager *getTimeConnection = NULL ;
34
39
35
40
static unsigned long getTime () {
@@ -185,16 +190,17 @@ int ArduinoIoTCloudClass::connect()
185
190
// Username: device id
186
191
// Password: empty
187
192
if (!_mqttClient->connect (_brokerAddress.c_str (), _brokerPort)) {
188
- return 0 ;
193
+ return CONNECT_FAILURE ;
189
194
}
190
- _mqttClient->subscribe (_stdinTopic);
191
- _mqttClient->subscribe (_dataTopicIn);
192
- _mqttClient->subscribe (_shadowTopicIn);
195
+
196
+ if (_mqttClient->subscribe (_stdinTopic ) == 0 ) return CONNECT_FAILURE_SUBSCRIBE;
197
+ if (_mqttClient->subscribe (_dataTopicIn ) == 0 ) return CONNECT_FAILURE_SUBSCRIBE;
198
+ if (_mqttClient->subscribe (_shadowTopicIn) == 0 ) return CONNECT_FAILURE_SUBSCRIBE;
193
199
194
200
_syncStatus = ArduinoIoTSynchronizationStatus::SYNC_STATUS_WAIT_FOR_CLOUD_VALUES;
195
201
_lastSyncRequestTickTime = 0 ;
196
202
197
- return 1 ;
203
+ return CONNECT_SUCCESS ;
198
204
}
199
205
200
206
bool ArduinoIoTCloudClass::disconnect ()
@@ -405,15 +411,18 @@ void ArduinoIoTCloudClass::connectionCheck()
405
411
}
406
412
break ;
407
413
case IOT_STATUS_CLOUD_CONNECTING:
408
- int arduinoIoTConnectionAttempt;
409
- arduinoIoTConnectionAttempt = connect ();
410
- sprintf (msgBuffer, " ArduinoCloud.connect(): %d" , arduinoIoTConnectionAttempt);
414
+ int const ret_code_connect = connect ();
415
+ sprintf (msgBuffer, " ArduinoCloud.connect(): %d" , ret_code_connect);
411
416
debugMessage (msgBuffer, 4 );
412
- if (arduinoIoTConnectionAttempt == 1 ) {
417
+ if (ret_code_connect == CONNECT_SUCCESS ) {
413
418
setIoTConnectionState (IOT_STATUS_CLOUD_CONNECTED);
414
419
CloudSerial.begin (9600 );
415
420
CloudSerial.println (" Hello from Cloud Serial!" );
416
421
}
422
+ else if (ret_code_connect == CONNECT_FAILURE_SUBSCRIBE) {
423
+ sprintf (msgBuffer, " ERROR - Please verify your THING ID" );
424
+ debugMessage (msgBuffer, 0 );
425
+ }
417
426
break ;
418
427
}
419
428
}
0 commit comments