Fix tado windowOpenDetected state

master
Michael Zanetti 2023-03-20 09:37:45 +01:00
parent 3744ce040b
commit e3acb067b9
3 changed files with 5 additions and 3 deletions

View File

@ -432,7 +432,7 @@ void IntegrationPluginTado::onZoneStateReceived(const QString &homeId, const QSt
thing->setStateValue(zoneTargetTemperatureStateTypeId, state.settingTemperature);
thing->setStateValue(zoneTemperatureStateTypeId, state.temperature);
thing->setStateValue(zoneHumidityStateTypeId, state.humidity);
thing->setStateValue(zoneWindowOpenDetectedStateTypeId, state.windowOpen);
thing->setStateValue(zoneWindowOpenDetectedStateTypeId, state.windowOpenDetected);
thing->setStateValue(zoneTadoModeStateTypeId, state.tadoMode);
}

View File

@ -356,6 +356,7 @@ void Tado::getZoneState(const QString &homeId, const QString &zoneId)
return;
}
setConnectionStatus(true);
setAuthenticationStatus(true);
@ -365,10 +366,11 @@ void Tado::getZoneState(const QString &homeId, const QString &zoneId)
qDebug(dcTado()) << "Get Token: Recieved invalid JSON object";
return;
}
qCDebug(dcTado()) << "Zone status received:" << qUtf8Printable(data.toJson(QJsonDocument::Indented));
ZoneState state;
QVariantMap map = data.toVariant().toMap();
state.tadoMode = map["tadoMode"].toString();
state.windowOpen = map["openWindow"].toBool();
state.windowOpenDetected = map["openWindowDetected"].toBool();
QVariantMap settingsMap = map["setting"].toMap();
state.settingType = settingsMap["type"].toString();

View File

@ -75,7 +75,7 @@ public:
bool settingPower = false;
double temperature = false;
double humidity = false;
bool windowOpen = false;
bool windowOpenDetected = false;
double heatingPowerPercentage = false;
QString heatingPowerType;
bool overlayIsSet = false;