Homeassisstant Switch: require power entity (#21537)
This commit is contained in:
parent
a4a6c6bb9f
commit
11fc9ebc99
2 changed files with 10 additions and 6 deletions
|
|
@ -1,6 +1,7 @@
|
|||
package charger
|
||||
|
||||
import (
|
||||
"errors"
|
||||
"fmt"
|
||||
"net/http"
|
||||
|
||||
|
|
@ -49,6 +50,13 @@ func NewHomeAssistantSwitch(embed embed, baseURL, token, switchEntity, powerEnti
|
|||
Helper: request.NewHelper(util.NewLogger("ha-switch")),
|
||||
}
|
||||
|
||||
if switchEntity == "" {
|
||||
return nil, errors.New("missing switch entity")
|
||||
}
|
||||
if powerEntity == "" {
|
||||
return nil, errors.New("missing power entity")
|
||||
}
|
||||
|
||||
c.switchSocket = NewSwitchSocket(&embed, c.Enabled, c.currentPower, standbypower)
|
||||
c.Helper.Client.Transport = &transport.Decorator{
|
||||
Decorator: transport.DecorateHeaders(map[string]string{
|
||||
|
|
@ -58,12 +66,7 @@ func NewHomeAssistantSwitch(embed embed, baseURL, token, switchEntity, powerEnti
|
|||
Base: c.Helper.Client.Transport,
|
||||
}
|
||||
|
||||
var currentPower func() (float64, error)
|
||||
if powerEntity != "" {
|
||||
currentPower = c.currentPower
|
||||
}
|
||||
|
||||
return decorateHomeAssistantSwitch(c, currentPower), nil
|
||||
return decorateHomeAssistantSwitch(c, c.currentPower), nil
|
||||
}
|
||||
|
||||
// Enabled implements the api.Charger interface
|
||||
|
|
|
|||
|
|
@ -21,6 +21,7 @@ params:
|
|||
de: Entity ID des schaltbaren Geräts (z.B. switch.smartsocket)
|
||||
en: Entity ID of the switch device (e.g. switch.smartsocket)
|
||||
- name: powerentity
|
||||
required: true
|
||||
description:
|
||||
de: Entity ID für Leistungsmessung (optional, z.B. sensor.smartsocket_power)
|
||||
en: Entity ID for power measurement (optional, e.g. sensor.smartsocket_power)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue