From 4fa8a2b82c157755ec84ec0288239ce988f8fd47 Mon Sep 17 00:00:00 2001 From: andig Date: Mon, 20 Mar 2023 21:22:13 +0100 Subject: [PATCH] Mqtt: add smart cost limit (#6971) --- server/mqtt.go | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/server/mqtt.go b/server/mqtt.go index 3ad3b475b..9fc8c1850 100644 --- a/server/mqtt.go +++ b/server/mqtt.go @@ -186,20 +186,26 @@ func (m *MQTT) Run(site site.API, in <-chan util.Param) { // site setters m.Handler.ListenSetter(fmt.Sprintf("%s/site/prioritySoc/set", m.root), func(payload string) { - if soc, err := strconv.Atoi(payload); err == nil { - _ = site.SetPrioritySoc(float64(soc)) + if val, err := strconv.ParseFloat(payload, 64); err == nil { + _ = site.SetPrioritySoc(val) } }) m.Handler.ListenSetter(fmt.Sprintf("%s/site/bufferSoc/set", m.root), func(payload string) { - if soc, err := strconv.Atoi(payload); err == nil { - _ = site.SetBufferSoc(float64(soc)) + if val, err := strconv.ParseFloat(payload, 64); err == nil { + _ = site.SetBufferSoc(val) } }) m.Handler.ListenSetter(fmt.Sprintf("%s/site/residualPower/set", m.root), func(payload string) { - if soc, err := strconv.Atoi(payload); err == nil { - _ = site.SetResidualPower(float64(soc)) + if val, err := strconv.ParseFloat(payload, 64); err == nil { + _ = site.SetResidualPower(val) + } + }) + + m.Handler.ListenSetter(fmt.Sprintf("%s/site/smartcostlimit/set", m.root), func(payload string) { + if val, err := strconv.ParseFloat(payload, 64); err == nil { + _ = site.SetSmartCostLimit(val) } })