Skip to content

Commit

Permalink
Fix: wattpilot template escape (#711)
Browse files Browse the repository at this point in the history
  • Loading branch information
naltatis authored Jan 19, 2025
1 parent 9e6c3df commit c70a314
Show file tree
Hide file tree
Showing 10 changed files with 57 additions and 38 deletions.
6 changes: 4 additions & 2 deletions docs/devices/chargers.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -1559,6 +1559,10 @@ Das Gerät benötigt eine feste IP Adresse. Es ist wichtig, zuerst EEBus einzuri
<DeviceFeatures features="skiptest" />
Hinweis zur Konfiguration des Wattpilot mittels solar.wattpilot app: das Symbol neben dem
Beispiel-OCPP-Server `wss://<username>:<password>@ocpp.cloud.fronius.com/<UID>` dient zur Konfiguration.
Hier muss der evcc URL `ws://<evcc-address>:8887/` eingetragen sein und "Füge SN zur URL" aktiviert werden.
<DeviceConfig code={`chargers:
- name: my_charger
type: template
Expand Down Expand Up @@ -1607,9 +1611,7 @@ Der 'Modbus TCP Server für Energiemanagement-Systeme' muss aktiviert sein. 'Reg
<DeviceFeatures features="1p3p,rfid" />
Benötigt mindestens Firmware 052.1 oder neuer.
Für 1P/3P-Phasenumschaltung muss die HTTP API v2 im Charger aktiviert sein.
In der Go-E App (Menüpunkt "Auto") sollte die Option "Ausstecken simulieren" aktiviert sein.
<DeviceConfig code={`chargers:
Expand Down
2 changes: 2 additions & 0 deletions docs/devices/meters.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -8887,6 +8887,7 @@ Der Solax PV-Wechselrichter muss in der SolaxCloud angemeldet sein.
<DeviceFeatures features="battery-control" />
Für die aktive Batteriesteuerung muss über das Webinterface der sonnenBatterie (unter Software-Integration) das "JSON Write API" aktiviert und das dort generierte API-Token in der Batteriekonfiguration unter `token` eingetragen werden.
Als Betriebsart der sonnenBatterie werden die beiden Modi "Eigenverbrauch" (Standard) und "Time-of-use" unterstützt. Der Modus kann über den Parameter `defaultmode` an die Konfiguration der sonnenBatterie angepasst werden.
Die Leistung für das Netzladen kann an die Wechselrichterleistung der sonnenBatterie über den Parameter `chargepower` angepasst werden.
<Tabs>
Expand Down Expand Up @@ -8934,6 +8935,7 @@ Die Leistung für das Netzladen kann an die Wechselrichterleistung der sonnenBat
port: 8080 # Port (optional)
token: # API Token (benötigt für aktive Batteriesteuerung) (optional)
capacity: 50 # Akkukapazität in kWh (optional)
defaultmode: self-consumption # Standardmodus für die aktive Batteriesteuerung (self-consumption oder time-of-use) (optional)
chargepower: 3300 # Ladeleistung für Netzladen in W (optional)`} />
Expand Down
32 changes: 19 additions & 13 deletions docs/devices/vehicles.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -261,7 +261,7 @@ Benötigt `access` und `refresh` Tokens. Diese können über den Befehl `evcc to
vin: ZFAE... # Erforderlich, wenn mehrere Fahrzeuge des Herstellers vorhanden sind (optional)
title: # Wird in der Benutzeroberfläche angezeigt (optional)
capacity: 50 # Akkukapazität in kWh (optional)
pin: # Benötigt zur Aktualisierung des Ladestands während der Ladung. (optional)`} advanced={`vehicles:
pin: # Benötigt zur Aktualisierung des Ladestands während der Ladung. Bei Nutzung mit TWC3 kann der Ladevorgang mittels PIN gestartet und gestoppt werden. (optional)`} advanced={`vehicles:
- name: my_car
type: template
template: fiat
Expand All @@ -270,7 +270,7 @@ Benötigt `access` und `refresh` Tokens. Diese können über den Befehl `evcc to
vin: ZFAE... # Erforderlich, wenn mehrere Fahrzeuge des Herstellers vorhanden sind (optional)
title: # Wird in der Benutzeroberfläche angezeigt (optional)
capacity: 50 # Akkukapazität in kWh (optional)
pin: # Benötigt zur Aktualisierung des Ladestands während der Ladung. (optional)
pin: # Benötigt zur Aktualisierung des Ladestands während der Ladung. Bei Nutzung mit TWC3 kann der Ladevorgang mittels PIN gestartet und gestoppt werden. (optional)
icon: car # Icon in der Benutzeroberfläche (optional)
phases: 3 # Die maximale Anzahl der Phasen welche genutzt werden können (optional)
mode: # Möglich sind Off, Now, MinPV und PV, oder leer wenn keiner definiert werden soll (optional)
Expand Down Expand Up @@ -369,7 +369,7 @@ Manche Modelle (z.B. Kona) schalten bei geringen Ladeströmen (< 8A) intern auf
vin: ZFAE... # Erforderlich, wenn mehrere Fahrzeuge des Herstellers vorhanden sind (optional)
title: # Wird in der Benutzeroberfläche angezeigt (optional)
capacity: 50 # Akkukapazität in kWh (optional)
pin: # Benötigt zur Aktualisierung des Ladestands während der Ladung. (optional)`} advanced={`vehicles:
pin: # Benötigt zur Aktualisierung des Ladestands während der Ladung. Bei Nutzung mit TWC3 kann der Ladevorgang mittels PIN gestartet und gestoppt werden. (optional)`} advanced={`vehicles:
- name: my_car
type: template
template: fiat
Expand All @@ -378,7 +378,7 @@ Manche Modelle (z.B. Kona) schalten bei geringen Ladeströmen (< 8A) intern auf
vin: ZFAE... # Erforderlich, wenn mehrere Fahrzeuge des Herstellers vorhanden sind (optional)
title: # Wird in der Benutzeroberfläche angezeigt (optional)
capacity: 50 # Akkukapazität in kWh (optional)
pin: # Benötigt zur Aktualisierung des Ladestands während der Ladung. (optional)
pin: # Benötigt zur Aktualisierung des Ladestands während der Ladung. Bei Nutzung mit TWC3 kann der Ladevorgang mittels PIN gestartet und gestoppt werden. (optional)
icon: car # Icon in der Benutzeroberfläche (optional)
phases: 3 # Die maximale Anzahl der Phasen welche genutzt werden können (optional)
mode: # Möglich sind Off, Now, MinPV und PV, oder leer wenn keiner definiert werden soll (optional)
Expand Down Expand Up @@ -987,26 +987,31 @@ Benötigt `access` und `refresh` Tokens. Diese können über den Befehl `evcc to
## Tesla
Benötigt `access` und `refresh` Tokens. Diese können über [tesla.evcc.io](https://tesla.evcc.io) erstellt werden.
Die Steuerung von Fahrzeugen im Zusammenspiel mit einem Tesla Wall Connector erfolgt über einen evcc Proxy-Server und benötigt ein Sponsor Token. Der virtuelle evcc Schlüssel muss auf dem Fahrzeug installiert sein.
Siehe [tesla.evcc.io](https://tesla.evcc.io).
Tesla bietet eine offizielle, aber kostenpflichtige Fahrzeug-API an.
Für private Nutzung kannst du dir einen [Tesla Developer Account](https://developer.tesla.com/) erstellen und erhältst ein monatliches API-Guthaben von
0. Das ist für die gängigen evcc-Anwendungsfälle in der Regel ausreichend.
Die Anleitung von [myteslamate.com](https://www.myteslamate.com/tesla-api-application-registration/) erklärt den Prozess und generiert dir kostenfrei die für evcc benötigten Access- und Refresh-Token.
Mit diesem Tokenpaar und deiner im Tesla Developer Account erstellten Client ID kann evcc direkt mit der Tesla API kommunizieren. Dein verbrauchtes Guthaben kannst du bei Tesla einsehen.
Für die Nutzung des "Tesla Wall Connectors" benötigst du einen öffentlichen Command-Proxy-Server. [myteslamate.com](https://app.myteslamate.com/) stellt diesen Dienst für 12€/Jahr bereit. Konfiguriere dafür bei myteslamate.com die Command-Berechtigungen und trage das Proxy-Token hier ein. Start-, Stopp- und Stromstärken-Kommandos werden über diesen Proxy an Tesla geschickt.
<DeviceConfig code={`vehicles:
- name: my_car
type: template
template: tesla
title: # Wird in der Benutzeroberfläche angezeigt (optional)
capacity: 50 # Akkukapazität in kWh (optional)
accessToken:
refreshToken:
accessToken: # Von [myteslamate.com](https://app.myteslamate.com/).
refreshToken: # Von [myteslamate.com](https://app.myteslamate.com/).
vin: W... # Erforderlich, wenn mehrere Fahrzeuge des Herstellers vorhanden sind (optional)`} advanced={`vehicles:
- name: my_car
type: template
template: tesla
title: # Wird in der Benutzeroberfläche angezeigt (optional)
capacity: 50 # Akkukapazität in kWh (optional)
accessToken:
refreshToken:
accessToken: # Von [myteslamate.com](https://app.myteslamate.com/).
refreshToken: # Von [myteslamate.com](https://app.myteslamate.com/).
vin: W... # Erforderlich, wenn mehrere Fahrzeuge des Herstellers vorhanden sind (optional)
icon: car # Icon in der Benutzeroberfläche (optional)
phases: 3 # Die maximale Anzahl der Phasen welche genutzt werden können (optional)
Expand All @@ -1015,8 +1020,9 @@ Siehe [tesla.evcc.io](https://tesla.evcc.io).
maxCurrent: 16 # Definiert die maximale Stromstärke pro angeschlossener Phase mit welcher das Fahrzeug geladen werden soll (optional)
identifiers: # Kann meist erst später eingetragen werden, siehe: https://docs.evcc.io/docs/features/vehicle (optional)
priority: # Priorität des Ladepunktes oder Fahrzeugs in Relation zu anderen Ladepunkten oder Fahrzeugen für die Zuweisung von PV-Energie (optional)
clientId: # optional
commandProxy: https://tesla.evcc.io/ # Bei Verwendung eines TWC3 (oder eines anderen 'dummen' Ladegeräts, das nicht steuerbar ist) kann evcc die Ladung direkt verwalten, indem es über einen Command Proxy mit dem Fahrzeug kommuniziert. Standardmäßig wird der von evcc bereitgestellte Proxy verwendet. Dieses parameter setzt die Basis-URL eines benutzerdefinierten Command Proxy, der anstelle des standardmäßigen evcc-Proxy verwendet werden soll. Siehe zum Beispiel https://github.com/wimaha/TeslaBleHttpProxy für einen Proxy, der Kommandos über Bluetooth sendet. (optional)
clientId: # Kunden ID deiner [Tesla Developer App](https://developer.tesla.com/dashboard).
commandProxy: https://api.myteslamate.com # Bei Verwendung eines TWC3 (oder eines anderen 'dummen' Ladegeräts, das nicht steuerbar ist) kann evcc die Ladung direkt verwalten, indem es über einen Command Proxy mit dem Fahrzeug kommuniziert. Standardmäßig wird der [myteslamate.com](https://app.myteslamate.com/) Proxy verwendet. Mit diesem Parameter kannst du die Basis-URL ändern. Siehe zum Beispiel [TeslaBleHttpProxy](https://github.com/wimaha/TeslaBleHttpProxy) für einen Proxy, der Kommandos über Bluetooth sendet. (optional)
proxyToken: # Token für den Command Proxy von [myteslamate.com](https://app.myteslamate.com/) (12€/Jahr). Stelle sicher, dass du den Virtual Key installiert hast und die Berechtigungen 'Ladung starten', 'Ladung stoppen' und 'Ladestrom setzen' erteilt hast. (optional)
cache: 15m # Zeitintervall nach dem Daten erneut vom Fahrzeug abgefragt werden (optional)`} />
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1560,6 +1560,10 @@ The device requires a fixed IP addres. It's important to set up EEBus first. Aft
<DeviceFeatures features="skiptest" />
Note on configuring the Wattpilot using the solar.wattpilot app: The symbol next to the
example OCPP server "wss://<username>:<password>@ocpp.cloud.fronius.com/<UID>" is used for configuration.
The evcc URL "ws://<IP-of-the-evcc-host>:8887/" must be entered here and "Add SN to URL" must be activated.
<DeviceConfig code={`chargers:
- name: my_charger
type: template
Expand Down Expand Up @@ -1608,9 +1612,7 @@ The 'Modbus TCP Server' must be enabled. The setting 'Register Address Set' must
<DeviceFeatures features="1p3p,rfid" />
Requires firmware 052.1 or later.
For 1P/3P-Phase switching the HTTP API v2 in the charger setup needs to be activated.
The “simulate unplugging” option should be activated in the Go-E app ("Car" menu item).
<DeviceConfig code={`chargers:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8888,6 +8888,7 @@ The Solax inverter has to be registered in the SolaxCloud.
<DeviceFeatures features="battery-control" />
For active battery control, the "JSON Write API" must be activated via the sonnenBatterie web interface (under Software-Integration) and the API token generated there must be entered in the battery configuration under `token`.
The two operating modes supported for the sonnenBatterie are “self-consumption” (default) and “time-of-use”. The mode can be adapted to the configuration of the sonnenBatterie via the 'defaultmode' parameter.
The power for grid charging can be adapted to the inverter power of the sonnenBatterie via the `chargepower` parameter.
<Tabs>
Expand Down Expand Up @@ -8935,6 +8936,7 @@ The power for grid charging can be adapted to the inverter power of the sonnenBa
port: 8080 # Port (optional)
token: # API Token (required for active battery control) (optional)
capacity: 50 # Battery capacity in kWh (optional)
defaultmode: self-consumption # Default mode for active battery control (self-consumption or time-of-use) (optional)
chargepower: 3300 # Charging power for grid charging in W (optional)`} />
Expand Down
31 changes: 18 additions & 13 deletions i18n/en/docusaurus-plugin-content-docs/current/devices/vehicles.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -264,7 +264,7 @@ Requires `access` and `refresh` tokens. These can be generated with command `evc
vin: ZFAE... # Required if you own multiple vehicles of the same brand (optional)
title: # Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity in kWh (optional)
pin: # Required for evcc to refresh the SoC while charging. (optional)`} advanced={`vehicles:
pin: # Required for evcc to refresh the SoC while charging. When connected to TWC3, used to start/stop charging. (optional)`} advanced={`vehicles:
- name: my_car
type: template
template: fiat
Expand All @@ -273,7 +273,7 @@ Requires `access` and `refresh` tokens. These can be generated with command `evc
vin: ZFAE... # Required if you own multiple vehicles of the same brand (optional)
title: # Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity in kWh (optional)
pin: # Required for evcc to refresh the SoC while charging. (optional)
pin: # Required for evcc to refresh the SoC while charging. When connected to TWC3, used to start/stop charging. (optional)
icon: car # Icon as shown in user interface (optional)
phases: 3 # The maximum number of phases which can be used (optional)
mode: # Possible values are Off, Now, MinPV and PV, or empty if none should be set (optional)
Expand Down Expand Up @@ -372,7 +372,7 @@ Some models (e.g. Kona) switch internally to 2 phases at low charging currents (
vin: ZFAE... # Required if you own multiple vehicles of the same brand (optional)
title: # Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity in kWh (optional)
pin: # Required for evcc to refresh the SoC while charging. (optional)`} advanced={`vehicles:
pin: # Required for evcc to refresh the SoC while charging. When connected to TWC3, used to start/stop charging. (optional)`} advanced={`vehicles:
- name: my_car
type: template
template: fiat
Expand All @@ -381,7 +381,7 @@ Some models (e.g. Kona) switch internally to 2 phases at low charging currents (
vin: ZFAE... # Required if you own multiple vehicles of the same brand (optional)
title: # Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity in kWh (optional)
pin: # Required for evcc to refresh the SoC while charging. (optional)
pin: # Required for evcc to refresh the SoC while charging. When connected to TWC3, used to start/stop charging. (optional)
icon: car # Icon as shown in user interface (optional)
phases: 3 # The maximum number of phases which can be used (optional)
mode: # Possible values are Off, Now, MinPV and PV, or empty if none should be set (optional)
Expand Down Expand Up @@ -990,26 +990,30 @@ Requires `access` and `refresh` tokens. These can be generated with command `evc
## Tesla
Tesla `access` and `refresh` tokens are required. These can be generated through [tesla.evcc.io](https://tesla.evcc.io).
Controlling vehicles in conjunction with a Tesla Wall Connector is done via an evcc proxy server and requires a sponsor token. The evcc virtual key must be installed on the vehicle.
See [tesla.evcc.io](https://tesla.evcc.io).
Tesla offers an official, but paid vehicle API.
For private use, you can create a [Tesla Developer Account](https://developer.tesla.com/) and receive a monthly API credit of
0. This is usually sufficient for the common evcc use cases.
The [myteslamate.com](https://www.myteslamate.com/tesla-api-application-registration/) guide explains the process and generates a free Access and Refresh Token. With this token pair and your Client ID created in the Tesla Developer Account, evcc can directly communicate with the Tesla API. You can see your used credit at Tesla.
To use a Tesla Wall Connector, you need a public Command Proxy Server. [myteslamate.com](https://app.myteslamate.com/) provides this service for 12€/year. Configure the Command permissions at myteslamate.com and enter the Proxy Token here. Start, stopp and current commands are sent to Tesla via this proxy.
<DeviceConfig code={`vehicles:
- name: my_car
type: template
template: tesla
title: # Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity in kWh (optional)
accessToken:
refreshToken:
accessToken: # From [myteslamate.com](https://app.myteslamate.com/).
refreshToken: # From [myteslamate.com](https://app.myteslamate.com/).
vin: W... # Required if you own multiple vehicles of the same brand (optional)`} advanced={`vehicles:
- name: my_car
type: template
template: tesla
title: # Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity in kWh (optional)
accessToken:
refreshToken:
accessToken: # From [myteslamate.com](https://app.myteslamate.com/).
refreshToken: # From [myteslamate.com](https://app.myteslamate.com/).
vin: W... # Required if you own multiple vehicles of the same brand (optional)
icon: car # Icon as shown in user interface (optional)
phases: 3 # The maximum number of phases which can be used (optional)
Expand All @@ -1018,8 +1022,9 @@ See [tesla.evcc.io](https://tesla.evcc.io).
maxCurrent: 16 # The maximum amperage per connected phase with which the car shuold be charged (optional)
identifiers: # Mostly this can be added later, see: https://docs.evcc.io/en/docs/features/vehicle (optional)
priority: # Priority of the loadpoint or vehicle in relation to other loadpoints or vehicles for allocating pv energy (optional)
clientId: # optional
commandProxy: https://tesla.evcc.io/ # When using a TWC3 (or other 'dumb' charger not capable of control), evcc can manage the charge directly by communicating with the vehicle through a Command Proxy. By default, the proxy provided by evcc is used. With this parameter, you set the base URL of a custom Command Proxy to use instead of the default evcc one. See for example https://github.com/wimaha/TeslaBleHttpProxy for a proxy sending commands via bluetooth. (optional)
clientId: # Client ID of your [Tesla Developer App](https://developer.tesla.com/dashboard).
commandProxy: https://api.myteslamate.com # When using a TWC3 (or other 'dumb' charger not capable of control), evcc can manage the charge directly by communicating with the vehicle through a Command Proxy. By default the [myteslamate.com](https://app.myteslamate.com/) proxy is used. With this parameter, you set the base URL of a custom Command Proxy. See for example [TeslaBleHttpProxy](https://github.com/wimaha/TeslaBleHttpProxy) for a proxy sending commands via bluetooth. (optional)
proxyToken: # Token for the [myteslamate.com](https://app.myteslamate.com/) command proxy (12€/year fee). Ensure, that you've installed their Virtual Key and granted 'Charge Start', 'Charge Stop' and 'Set Charging Amps' permissions. (optional)
cache: 15m # Time interval with when data should be reloaded from the vehicle (optional)`} />
Expand Down
4 changes: 2 additions & 2 deletions templates/nightly/de/charger/ocpp-fronius-wattpilot_0.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@ product:
requirements: ["sponsorship", "skiptest"]
description: |
Hinweis zur Konfiguration des Wattpilot mittels solar.wattpilot app: das Symbol neben dem
Beispiel-OCPP-Server "wss://<username>:<password>@ocpp.cloud.fronius.com/<UID>" dient zur Konfiguration.
Hier muss der evcc URL "ws://<IP-vom-evcc-host>:8887/ eingetragen sein und "Füge SN zur URL" aktiviert werden.
Beispiel-OCPP-Server `wss://<username>:<password>@ocpp.cloud.fronius.com/<UID>` dient zur Konfiguration.
Hier muss der evcc URL `ws://<evcc-address>:8887/` eingetragen sein und "Füge SN zur URL" aktiviert werden.
render:
- default: |
Expand Down
Loading

0 comments on commit c70a314

Please sign in to comment.