Fix climater detected when api status invalid

This commit is contained in:
andig 2020-11-19 13:30:38 +01:00
parent 852f2b28d7
commit 1df104e858

View file

@ -78,7 +78,9 @@ func (v *Implementation) Status() (api.ChargeStatus, error) {
func (v *Implementation) Climater() (active bool, outsideTemp float64, targetTemp float64, err error) {
res, err := v.climateG()
if res, ok := res.(ClimaterResponse); err == nil && ok {
active = "off" != strings.ToLower(res.Climater.Status.ClimatisationStatusData.ClimatisationState.Content)
state := strings.ToLower(res.Climater.Status.ClimatisationStatusData.ClimatisationState.Content)
active := state != "off" && state != "invalid"
outsideTemp = Temp2Float(res.Climater.Status.TemperatureStatusData.OutdoorTemperature.Content)
targetTemp = Temp2Float(res.Climater.Settings.TargetTemperature.Content)