Skip to content

Commit 2326c64

Browse files
committed
[CM-474] Notify user if thing id is wrong / thing does not exist
1 parent 15881a0 commit 2326c64

File tree

1 file changed

+17
-9
lines changed

1 file changed

+17
-9
lines changed

src/ArduinoIoTCloud.cpp

Lines changed: 17 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,10 @@ const static int compressedCertSlot = 10;
3030
const static int serialNumberAndAuthorityKeyIdentifierSlot = 11;
3131
const static int thingIdSlot = 12;
3232

33+
const static int CONNECT_SUCCESS = 1;
34+
const static int CONNECT_FAILURE = 0;
35+
const static int CONNECT_FAILURE_SUBSCRIBE = -1;
36+
3337
static ConnectionManager *getTimeConnection = NULL;
3438

3539
static unsigned long getTime() {
@@ -185,16 +189,17 @@ int ArduinoIoTCloudClass::connect()
185189
// Username: device id
186190
// Password: empty
187191
if (!_mqttClient->connect(_brokerAddress.c_str(), _brokerPort)) {
188-
return 0;
192+
return CONNECT_FAILURE;
189193
}
190-
_mqttClient->subscribe(_stdinTopic);
191-
_mqttClient->subscribe(_dataTopicIn);
192-
_mqttClient->subscribe(_shadowTopicIn);
194+
195+
if(_mqttClient->subscribe(_stdinTopic ) == 0) return CONNECT_FAILURE_SUBSCRIBE;
196+
if(_mqttClient->subscribe(_dataTopicIn ) == 0) return CONNECT_FAILURE_SUBSCRIBE;
197+
if(_mqttClient->subscribe(_shadowTopicIn) == 0) return CONNECT_FAILURE_SUBSCRIBE;
193198

194199
_syncStatus = ArduinoIoTSynchronizationStatus::SYNC_STATUS_WAIT_FOR_CLOUD_VALUES;
195200
_lastSyncRequestTickTime = 0;
196201

197-
return 1;
202+
return CONNECT_SUCCESS;
198203
}
199204

200205
bool ArduinoIoTCloudClass::disconnect()
@@ -405,15 +410,18 @@ void ArduinoIoTCloudClass::connectionCheck()
405410
}
406411
break;
407412
case IOT_STATUS_CLOUD_CONNECTING:
408-
int arduinoIoTConnectionAttempt;
409-
arduinoIoTConnectionAttempt = connect();
410-
sprintf(msgBuffer, "ArduinoCloud.connect(): %d", arduinoIoTConnectionAttempt);
413+
int const ret_code_connect = connect();
414+
sprintf(msgBuffer, "ArduinoCloud.connect(): %d", ret_code_connect);
411415
debugMessage(msgBuffer, 4);
412-
if (arduinoIoTConnectionAttempt == 1) {
416+
if (ret_code_connect == CONNECT_SUCCESS) {
413417
setIoTConnectionState(IOT_STATUS_CLOUD_CONNECTED);
414418
CloudSerial.begin(9600);
415419
CloudSerial.println("Hello from Cloud Serial!");
416420
}
421+
else if (ret_code_connect == CONNECT_FAILURE_SUBSCRIBE) {
422+
sprintf(msgBuffer, "ERROR - Please verify your THING ID");
423+
debugMessage(msgBuffer, 0);
424+
}
417425
break;
418426
}
419427
}

0 commit comments

Comments
 (0)