You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/devices/plugins.mdx
+35Lines changed: 35 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -37,6 +37,7 @@ Zusätzlich können Plugins auch für die in [Messaging](/docs/reference/configu
37
37
-[Calc Plugin](#calc) - Meta-Plugin um Ausgaben von anderen Plugins arithmetisch zu verknüpfen.
38
38
-[Combined Plugin](#combined) - Meta-Plugin speziell für `charger` um die booleschen Status-Werte für den angeschlossenen (_plugged_) und ladenden (_charging_) Zustand zu einem einzigen Ladestatus zu kombinieren.
39
39
-[Const Plugin](#const) - Spezielles Plugin das einfach einen konstanten Wert zurückliefert.
40
+
-[Error Plugin](#error) - Spezielles Plugin das einen bekannten Fehlerwert zurückgibt.
40
41
-[Convert Plugin](#convert) - Meta-Plugin zur Datentyp-Konvertierung beim Schreiben (z. B. float zu int).
41
42
-[Delta Plugin](#delta) - Meta-Plugin zur Umwandlung von absoluten Werten in Änderungswerte (Deltas) beim Schreiben.
42
43
-[Ignore Plugin](#ignore) - Meta-Plugin zum Unterdrücken spezifischer Fehlermeldungen.
@@ -95,6 +96,19 @@ Mögliche Parameter für die Datenextraktion sind:
95
96
- `unpack`: Konvertiert Werte aus anderen Zahlenrepräsentationen, z. B. `hex`.
96
97
- `decode`: Dekodiert Binärformate wie `uint32`, `float32` etc.
97
98
99
+
##### Bekannte Fehlerwerte {#known-errors}
100
+
101
+
[HTTP](#http)-, [MQTT](#mqtt)- und [Websocket](#websocket)-Plugins können spezielle Fehlerwerte als String zurückgeben.
102
+
evcc erkennt diese und wandelt sie in interne Fehlercodes um, anstatt sie als Daten zu behandeln.
103
+
Das ist z. B. nützlich für eigene Fahrzeugintegrationen, bei denen die Datenquelle den Zustand des Fahrzeugs kennt.
104
+
105
+
- `ErrAsleep`— Fahrzeug schläft. evcc kann entscheiden, ob das Fahrzeug geweckt werden soll.
106
+
- `ErrMustRetry`— Vorgang soll erneut versucht werden (z. B. bei Rate-Limiting).
107
+
- `ErrNotAvailable`— Wert ist nicht verfügbar. evcc behandelt dies als permanenten Fehler bis zum nächsten Neustart.
108
+
109
+
Wenn ein Plugin z. B. den String `ErrAsleep` als Antwort liefert, erzeugt evcc intern den entsprechenden Fehler.
110
+
Das [Error Plugin](#error) nutzt denselben Mechanismus, um einen festen Fehlerwert als Konstante zurückzugeben.
111
+
98
112
#### Schreiben
99
113
100
114
Beim Schreiben können Parameter in der Konfiguration durch Platzhalter ersetzt werden.
@@ -780,6 +794,8 @@ Das `websocket`-Plugin bietet einen WebSocket-Listener.
780
794
Es beinhaltet auch die Fähigkeit, JSON-Datenstrukturen über jq-ähnliche Abfragen zu lesen oder zu parsen.
781
795
Dies kann z. B. verwendet werden, um Daten von Volkszählers Push Server zu empfangen.
782
796
797
+
Für die Datenextraktion stehen die unter [Lesen](#lesen) beschriebenen Pipeline-Parameter zur Verfügung (`regex`, `jq`, `quote`, etc.).
-`evcc/loadpoints/<id>/priority`: priority value (writable)
58
-
59
-
:::note
60
-
Um schreibbare Einstellungen durchzuführen, muss ein `/set` am Ende des Topics hinzugefügt werden an welches der neue Wert gesendet wird.
61
-
Beispiel: `mosquitto_pub -t "evcc/loadpoints/1/phasesConfigured/set" -m "3"` um die Anzahl der netzseitigen Phasen am 1. Ladepunkt auf `3` festzulegen.
62
-
:::
63
-
64
-
:::info
65
-
\*\* Zeitangabe efolgt in UTC im Format `yyyy-mm-ddThh:mm:ssZ`
66
-
67
-
Beispiele:
68
-
69
-
`2023-03-05T07:00:00Z` = 5. März 2023 um 8:00 Uhr MEZ
70
-
71
-
`2023-08-17T19:30:00Z` = 17. August 2023 um 21:30 Uhr MESZ
72
-
:::
73
-
74
-
:::note
75
-
\*\* Unterstützung leerer Werte:
76
-
Folgende Zeichenfolgen werden als leere Werte erkannt:
77
-
78
-
-`nil`
79
-
-`null`
80
-
-`none`
81
-
-`-`
82
-
83
-
Beispiele:
84
-
85
-
-`evcc/site/batteryGridChargeLimit/set`: 'none'
86
-
87
-
Um die Preisschwelle zum Laden der Batterie auf 'none' zu setzten, bzw. zu löschen.
88
-
:::
59
+
## Schreibbare Topics {#write}
60
+
61
+
Um schreibbare Topics zu ändern, hänge `/set` an das Topic an und sende den neuen Wert.
-`evcc/site/batteryMode`: externer Batteriemodus (`normal`, `hold`, `charge`) – steuert alle regelbaren Batterien direkt, überschreibt andere evcc-Modi, wird nach 60 s zurückgesetzt
85
+
-`evcc/site/smartCostLimit`: Smart-Cost-Limit für alle Ladepunkte
86
+
-`evcc/site/smartFeedInPriorityLimit`: Einspeise-Prioritäts-Limit für alle Ladepunkte
87
+
88
+
### Loadpoints {#loadpoint-write}
89
+
90
+
-`evcc/loadpoints/<id>/mode`: Lademodus
91
+
-`evcc/loadpoints/<id>/minSoc`: minimaler SoC
92
+
-`evcc/loadpoints/<id>/limitSoc`: Limit-SoC in % – nur für Online-Fahrzeuge
93
+
-`evcc/loadpoints/<id>/limitEnergy`: Limit-Energie in kWh – nur für Offline-Fahrzeuge
Copy file name to clipboardExpand all lines: i18n/en/docusaurus-plugin-content-docs/current/devices/plugins.mdx
+35Lines changed: 35 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -37,6 +37,7 @@ Additionally, plugins can also be used for the endpoints described in [Messaging
37
37
-[Calc Plugin](#calc) - Meta-plugin for arithmetically linking outputs from other plugins.
38
38
-[Combined Plugin](#combined) - Meta-plugin specifically for `charger` to combine the boolean status values for the connected (_plugged_) and charging (_charging_) state into a single charging status.
39
39
-[Const Plugin](#const) - Special plugin that simply returns a constant value.
40
+
-[Error Plugin](#error) - Special plugin that returns a known error value.
40
41
-[Convert Plugin](#convert) - Meta-plugin for data type conversion when writing (e.g., float to int).
41
42
-[Delta Plugin](#delta) - Meta-plugin for converting absolute values to delta/increment values when writing.
42
43
-[Ignore Plugin](#ignore) - Meta-plugin for suppressing specific error messages.
@@ -95,6 +96,19 @@ Possible parameters for data extraction are:
95
96
- `unpack`: Converts values from other number representations, e.g. `hex`.
96
97
- `decode`: Decodes binary formats like `uint32`, `float32` etc.
97
98
99
+
##### Known Error Values {#known-errors}
100
+
101
+
[HTTP](#http), [MQTT](#mqtt), and [Websocket](#websocket) plugins can return special error strings.
102
+
evcc recognises these and converts them into internal error codes instead of treating them as data.
103
+
This is useful e.g. for custom vehicle integrations where the data source knows the vehicle's state.
104
+
105
+
- `ErrAsleep`— Vehicle is asleep. evcc may choose to wake up the vehicle and retry.
106
+
- `ErrMustRetry`— Operation should be retried (e.g. due to rate limiting).
107
+
- `ErrNotAvailable`— Value is not available. evcc treats this as a permanent error until the next restart.
108
+
109
+
If a plugin returns the string `ErrAsleep` as its response, evcc generates the corresponding internal error.
110
+
The [Error Plugin](#error) uses the same mechanism to return a fixed error value as a constant.
111
+
98
112
#### Writing
99
113
100
114
When writing, parameters in the configuration can be replaced by placeholders.
@@ -780,6 +794,8 @@ The `websocket` plugin provides a WebSocket listener.
780
794
It also includes the ability to read or parse JSON data structures via jq-like queries.
781
795
This can be used, for example, to receive data from Volkszähler's push server.
782
796
797
+
For data extraction, the pipeline parameters described in [Reading](#reading) are available (`regex`, `jq`, `quote`, etc.).
0 commit comments