fix logic when there are no paired devices yet
This commit is contained in:
parent
3128860122
commit
9dcec7258d
@ -176,11 +176,14 @@ void AWSConnector::fetchPairings()
|
|||||||
|
|
||||||
void AWSConnector::onPairingsRetrieved(const QVariantList &pairings)
|
void AWSConnector::onPairingsRetrieved(const QVariantList &pairings)
|
||||||
{
|
{
|
||||||
QStringList topics;
|
qCDebug(dcAWS) << pairings.count() << "devices paired in cloud.";
|
||||||
foreach (const QVariant &pairing, pairings) {
|
if (pairings.count() > 0) {
|
||||||
topics << QString("%1/%2/#").arg(m_clientId).arg(pairing.toString());
|
QStringList topics;
|
||||||
|
foreach (const QVariant &pairing, pairings) {
|
||||||
|
topics << QString("%1/%2/#").arg(m_clientId).arg(pairing.toString());
|
||||||
|
}
|
||||||
|
subscribe(topics);
|
||||||
}
|
}
|
||||||
subscribe(topics);
|
|
||||||
|
|
||||||
if (readSyncedNameCache() != m_clientName) {
|
if (readSyncedNameCache() != m_clientName) {
|
||||||
setName();
|
setName();
|
||||||
@ -413,11 +416,6 @@ ResponseCode AWSConnector::onSubscriptionReceivedCallback(util::String topic_nam
|
|||||||
qCWarning(dcAWS()) << "Received a pairing response for a transaction we didn't start";
|
qCWarning(dcAWS()) << "Received a pairing response for a transaction we didn't start";
|
||||||
}
|
}
|
||||||
} else if (topic == QString("%1/device/users/response").arg(connector->m_clientId)) {
|
} else if (topic == QString("%1/device/users/response").arg(connector->m_clientId)) {
|
||||||
if (jsonDoc.toVariant().toMap().value("users").toList().isEmpty()) {
|
|
||||||
qCDebug(dcAWS()) << "No devices paired yet...";
|
|
||||||
return ResponseCode::SUCCESS;
|
|
||||||
}
|
|
||||||
qCDebug(dcAWS) << jsonDoc.toVariant().toMap().value("users").toList().count() << "devices paired in cloud.";
|
|
||||||
connector->staticMetaObject.invokeMethod(connector, "onPairingsRetrieved", Qt::QueuedConnection, Q_ARG(QVariantList, jsonDoc.toVariant().toMap().value("users").toList()));
|
connector->staticMetaObject.invokeMethod(connector, "onPairingsRetrieved", Qt::QueuedConnection, Q_ARG(QVariantList, jsonDoc.toVariant().toMap().value("users").toList()));
|
||||||
} else if (topic == QString("%1/device/name/response").arg(connector->m_clientId)) {
|
} else if (topic == QString("%1/device/name/response").arg(connector->m_clientId)) {
|
||||||
qCDebug(dcAWS) << "Set device name in cloud with status:" << jsonDoc.toVariant().toMap().value("status").toInt();
|
qCDebug(dcAWS) << "Set device name in cloud with status:" << jsonDoc.toVariant().toMap().value("status").toInt();
|
||||||
|
|||||||
Reference in New Issue
Block a user