====== simpleAPI **für MQTT** ======
Dieser Dienst ist dafür gedacht, komplexe MQTT-Topic-Strukturen in eine vereinfachte API umzuwandeln. Der Dienst greift ''openWB/*'' Topics auf und republiziert diese unter ''openWB/simpleAPI/*'' mit aufgeteilten JSON/Tuple-Werten und ID-Vereinfachung.
===== Features =====
* **Wert-Änderungserkennung**: Publiziert nur wenn sich Werte tatsächlich ändern
* **JSON/Tuple-Aufspaltung**: Zerlegt komplexe Datenstrukturen in einzelne Topics
* **ID-Vereinfachung**: Niedrigste IDs werden auch ohne ID-Suffix verfügbar gemacht
* **Retained Messages**: Alle Nachrichten werden mit retain=true publiziert
* **TLS/SSL Support**: Optional verschlüsselte Verbindungen
* **Schreiboperationen**: Vereinfachte Steuerung von Ladeparametern
===== Installation =====
Ist Teil der standard openWB Installation ab 2.1.9
===== Topic-Transformation (Lesezugriff) =====
==== Basis-Transformation ====
Originale Topics werden von ''openWB/'' zu ''openWB/simpleAPI/'' transformiert.
**Wichtig**: Der ''/get/'' Teil wird aus den Topics entfernt:
Original: openWB/chargepoint/0/get/power
Wird zu: openWB/simpleAPI/chargepoint/0/power
==== JSON-Aufspaltung ====
Original: openWB/chargepoint/0/config/template {"id": 0, "name": "Test", "max_current": 32}
Wird zu:
- openWB/simpleAPI/chargepoint/0/config/template/id → 0
- openWB/simpleAPI/chargepoint/0/config/template/name → Test
- openWB/simpleAPI/chargepoint/0/config/template/max_current → 32
==== Tuple/Array-Aufspaltung (1-basiert) ====
Original: openWB/counter/3/get/voltages [232.4, 0.0, 0.0]
Wird zu:
- openWB/simpleAPI/counter/3/voltages/1 → 232.4
- openWB/simpleAPI/counter/3/voltages/2 → 0.0
- openWB/simpleAPI/counter/3/voltages/3 → 0.0
==== Lademodus auslesen ====
openWB/simpleAPI/chargepoint/3/chargemode
oder (niedrigste ID):
openWB/simpleAPI/chargepoint/chargemode
Der Lademodus wird aus ''openWB/chargepoint/3/get/connected_vehicle/config/chargemode'' transformiert und vereinfacht zu ''chargemode'' am Ladepunkt.
==== ID-Vereinfachung ====
Die ID eines Ladepunktes als auch von Komponenten ist im Webinterface unter status einsehbar.
Die niedrigste ID jeder Komponente wird auch ohne ID verfügbar gemacht:
Original: openWB/counter/0/get/power 1042.4
Wenn 0 die niedrigste counter-ID ist:
- openWB/simpleAPI/counter/0/power → 1042.4
- openWB/simpleAPI/counter/power → 1042.4
==== SoC-Werte (Ladezustand) ====
Es gibt verschiedene SoC-Werte die verfügbar gemacht werden:
# Aktueller EV-SoC (aus connected_vehicle JSON)
Original: openWB/chargepoint/0/get/connected_vehicle/soc
JSON: {"soc": 82.8, "fault_state": 0, "range": null, ...}
Wird zu: openWB/simpleAPI/chargepoint/0/soc/soc → 82.8
Die übrigen Werte sind unter soc/* zu finden.
# Direkter Pro-SoC Wert
Original: openWB/chargepoint/0/get/soc
Wird zu: openWB/simpleAPI/chargepoint/0/pro_soc → 75
# Pro-SoC Zeitstempel
Original: openWB/chargepoint/0/get/soc_timestamp
Wird zu: openWB/simpleAPI/chargepoint/0/pro_soc_timestamp → 1762777573
**Erklärung**:
- **soc**: Der aktuelle Ladezustand des verbundenen Elektrofahrzeugs (extrahiert aus connected_vehicle JSON)
- **pro_soc**: Direkter SoC-Wert vom Ladepunkt
- **pro_soc_timestamp**: Zeitstempel der letzten SoC-Aktualisierung
Beispielausgabe eines Ladepunktes:
openWB/simpleAPI/chargepoint/13/manual_lock False
openWB/simpleAPI/chargepoint/13/evse_current 0
openWB/simpleAPI/chargepoint/13/vehicle_name Kona (Daniel)
openWB/simpleAPI/chargepoint/13/chargemode scheduled_charging
openWB/simpleAPI/chargepoint/13/state_str "Keine Ladung, da kein Auto angesteckt ist."
openWB/simpleAPI/chargepoint/13/charge_state False
openWB/simpleAPI/chargepoint/13/phases_in_use 1
openWB/simpleAPI/chargepoint/13/plug_state False
openWB/simpleAPI/chargepoint/13/power 0
openWB/simpleAPI/chargepoint/13/currents/1 0.0
openWB/simpleAPI/chargepoint/13/currents/2 0.0
openWB/simpleAPI/chargepoint/13/currents/3 0.0
openWB/simpleAPI/chargepoint/13/voltages/1 233.83
openWB/simpleAPI/chargepoint/13/voltages/2 235.37
openWB/simpleAPI/chargepoint/13/voltages/3 235.27
openWB/simpleAPI/chargepoint/13/fault_str "Kein Fehler."
openWB/simpleAPI/chargepoint/13/fault_state 0
openWB/simpleAPI/chargepoint/13/daily_imported 0.0
openWB/simpleAPI/chargepoint/13/daily_exported 0.0
openWB/simpleAPI/chargepoint/13/rfid null
openWB/simpleAPI/chargepoint/13/rfid_timestamp null
openWB/simpleAPI/chargepoint/13/imported 5367626.95
openWB/simpleAPI/chargepoint/13/exported 0
openWB/simpleAPI/chargepoint/13/powers/1 0.0
openWB/simpleAPI/chargepoint/13/powers/2 0.0
openWB/simpleAPI/chargepoint/13/powers/3 0.0
openWB/simpleAPI/chargepoint/13/frequency 49.93
openWB/simpleAPI/chargepoint/13/power_factors/1 1.0
openWB/simpleAPI/chargepoint/13/power_factors/2 1.0
openWB/simpleAPI/chargepoint/13/power_factors/3 1.0
openWB/simpleAPI/chargepoint/13/serial_number "21207688"
openWB/simpleAPI/chargepoint/13/soc null
openWB/simpleAPI/chargepoint/13/soc_timestamp null
openWB/simpleAPI/chargepoint/13/vehicle_id null
openWB/simpleAPI/chargepoint/13/error_timestamp null
openWB/simpleAPI/chargepoint/13/charging_current 0
openWB/simpleAPI/chargepoint/13/charging_power 0
openWB/simpleAPI/chargepoint/13/charging_voltage 0
openWB/simpleAPI/chargepoint/13/version "2.1.9-Alpha.3"
openWB/simpleAPI/chargepoint/13/evse_signaling null
openWB/simpleAPI/chargepoint/13/max_discharge_power null
openWB/simpleAPI/chargepoint/13/max_charge_power null
openWB/simpleAPI/revision 2
ab revsion 2
# Minimaler Permanentstrom für PV-Laden
openWB/simpleAPI/chargepoint/0/minimal_permanent_current → 6
# Minimaler EV-SoC für PV-Laden
openWB/simpleAPI/chargepoint/0/minimal_pv_soc → 20
# Maximaler Preis für ECO-Laden
openWB/simpleAPI/chargepoint/0/max_price_eco → 0.25
# Instant-Charging Limit-Typ
openWB/simpleAPI/chargepoint/0/instant_charging_limit → soc
# Instant-Charging SoC-Grenze (in %)
openWB/simpleAPI/chargepoint/0/instant_charging_limit_soc → 80
# Instant-Charging Energiegrenze (in kWh)
openWB/simpleAPI/chargepoint/0/instant_charging_limit_amount → 25
===== Schreiboperationen (Set-Topics) =====
==== 1. Lademodus setzen ====
**Beschreibung**: Lademodus am Ladepunkt ändern
**Topic**: ''openWB/simpleAPI/set/chargepoint/3/chargemode'' oder ''openWB/simpleAPI/set/chargepoint/chargemode'' (niedrigste ID)
**Gültige Werte**: ''instant'', ''pv'', ''eco'', ''stop'', ''target''
**Beispiel**:
mosquitto_pub -t "openWB/simpleAPI/set/chargepoint/3/chargemode" -m "pv"
==== 2. Ladestrom für Sofortladen ====
**Beschreibung**: Ladestrom für das Sofort laden
**Topic**: ''openWB/simpleAPI/set/chargepoint/3/chargecurrent''
**Wert**: Stromstärke in Ampere (z.B. "16")
**Beispiel**:
mosquitto_pub -t "openWB/simpleAPI/set/chargepoint/3/chargecurrent" -m "16"
==== 3. Minimaler EV SoC im PV Laden ====
**Beschreibung**: Minimaler EV SoC im PV Laden
**Topic**: ''openWB/simpleAPI/set/chargepoint/3/minimal_pv_soc''
**Wert**: SoC in Prozent (z.B. "20")
**Beispiel**:
mosquitto_pub -t "openWB/simpleAPI/set/chargepoint/3/minimal_pv_soc" -m "20"
==== 4. Minimaler Dauerstrom für PV Laden ====
**Beschreibung**: Minimaler Dauerstrom für das PV Laden
**Topic**: ''openWB/simpleAPI/set/chargepoint/3/minimal_permanent_current''
**Wert**: Stromstärke in Ampere (z.B. "6")
**Beispiel**:
mosquitto_pub -t "openWB/simpleAPI/set/chargepoint/3/minimal_permanent_current" -m "6"
==== 5. Maximaler Preis für ECO Laden ====
**Beschreibung**: Maximaler Preis für das ECO Laden
**Topic**: ''openWB/simpleAPI/set/chargepoint/3/max_price_eco''
**Wert**: Preis als Dezimalzahl (z.B. "0.25")
**Beispiel**:
mosquitto_pub -t "openWB/simpleAPI/set/chargepoint/3/max_price_eco" -m "0.25"
==== 6. Ladepunkt sperren ====
**Beschreibung**: Sperrt den Ladepunkt
**Topic**: ''openWB/simpleAPI/set/chargepoint/3/chargepoint_lock''
**Werte**: ''true''/''false''
**Beispiel**:
mosquitto_pub -t "openWB/simpleAPI/set/chargepoint/3/chargepoint_lock" -m "true"
==== 7. Speicherbeachtung konfigurieren ====
**Beschreibung**: Konfiguriert die Speicherbeachtung
**Topic**: ''openWB/simpleAPI/set/bat_mode''
**Gültige Werte**: ''min_soc_bat_mode'', ''ev_mode'', ''bat_mode''
**Beispiel**:
mosquitto_pub -t "openWB/simpleAPI/set/bat_mode" -m "ev_mode"
==== 8. Instant Charging Limit-Typ ====
**Beschreibung**: Setzt den Typ der Ladebegrenzung für das Sofortladen
**Topic**: ''openWB/simpleAPI/set/instant_charging_limit''
**Gültige Werte**: ''none'', ''soc'', ''amount''
**Beispiel**:
mosquitto_pub -t "openWB/simpleAPI/set/instant_charging_limit" -m "soc"
==== 9. Instant Charging SoC-Grenze ====
**Beschreibung**: Setzt die SoC-Grenze für das Sofortladen (aktiv wenn Limit-Typ "soc" ist)
**Topic**: ''openWB/simpleAPI/set/instant_charging_limit_soc''
**Wert**: Integer 0-100 (Prozent)
**Beispiel**:
mosquitto_pub -t "openWB/simpleAPI/set/instant_charging_limit_soc" -m "80"
==== 10. Instant Charging Energiegrenze ====
**Beschreibung**: Setzt die Energiegrenze für das Sofortladen (aktiv wenn Limit-Typ "amount" ist)
**Topic**: ''openWB/simpleAPI/set/instant_charging_limit_amount''
**Wert**: Integer 1-50 (kWh)
**Hinweis**: Wird intern automatisch in Wh umgerechnet (Eingabewert × 1000)
**Beispiel**:
mosquitto_pub -t "openWB/simpleAPI/set/instant_charging_limit_amount" -m "25"
===== Intelligente Features =====
* **Automatisches ID-Management**: Wenn keine ID angegeben wird, wird die niedrigste verfügbare ID verwendet
* **JSON-Template-Caching**: Charge-Templates werden automatisch zwischengespeichert
* **Werte-Mapping**: Einfache Werte werden zu internen openWB-Werten gemappt
* **Fehlerbehandlung**: Ungültige Werte werden abgefangen und geloggt
* **Logging**: Alle Schreiboperationen werden ausführlich geloggt
===== Überwachte Komponenten =====
Der Daemon überwacht folgende openWB-Komponenten:
* **bat**: Batteriespeicher (Leistung, SoC, Import/Export)
* **pv**: Photovoltaik-Anlagen (Leistung, Ertrag)
* **chargepoint**: Ladepunkte (Status, Konfiguration, Messwerte)
* **counter**: Energiezähler (Leistung, Verbrauch, Netzwerte)
====== openWB simpleAPI **HTTP** ======
===== Features =====
* **65+ Parameter** - Umfassende Unterstützung für Chargepoint, Counter, Battery und PV
* **Auto-ID Feature** - Automatische Auswahl der niedrigsten verfügbaren ID
* **Template-basierte Settings** - Erweiterte openWB-Template-Manipulation
* **Raw & JSON Output** - Flexible Ausgabeformate
* **GET & POST Support** - Beide HTTP-Methoden unterstützt
* **Instant Charging Control** - Vollständige Sofortladen-Konfiguration
* **Vehicle Management** - Fahrzeugzuordnung und SoC-Management
===== Verwendung =====
==== Lesende Anfragen ====
**Alle Daten eines Ladepunkts:**
curl "http://IPADRESSE/openWB/simpleAPI/simpleapi.php?get_chargepoint_all=3"
**Auto-ID Feature - niedrigste verfügbare ID:**
curl "http://IPADRESSE/openWB/simpleAPI/simpleapi.php?get_chargepoint_all=auto"
# oder ohne Angabe einer ID:
curl "http://IPADRESSE/openWB/simpleAPI/simpleapi.php?get_chargepoint_all="
**Spannung Phase 1 (Raw-Ausgabe):**
curl "http://IPADRESSE/openWB/simpleAPI/simpleapi.php?get_chargepoint_voltage_p1=3&raw=true"
**Batterie-Daten:**
curl "http://IPADRESSE/openWB/simpleAPI/simpleapi.php?battery=2"
**Kombination mehrerer Werte:**
curl "http://IPADRESSE/openWB/simpleAPI/simpleapi.php?get_chargepoint_all=3&battery=2"
**Neue Parameter abrufen:**
# Tägliche Energie und Frequenz
curl "http://IPADRESSE/openWB/simpleAPI/simpleapi.php?get_chargepoint_daily_imported=3&get_chargepoint_frequency=3"
# RFID und Konfigurationsdaten
curl "http://IPADRESSE/openWB/simpleAPI/simpleapi.php?get_chargepoint_rfid=3&get_chargepoint_config_name=3"
# Template-Daten (Instant Charging & PV)
curl "http://IPADRESSE/openWB/simpleAPI/simpleapi.php?get_chargepoint_instant_charging_current=3&get_chargepoint_pv_charging_min_current=3"
# Leistungsfaktoren
curl "http://IPADRESSE/openWB/simpleAPI/simpleapi.php?get_chargepoint_power_factors=3&raw=false"
curl "http://IPADRESSE/openWB/simpleAPI/simpleapi.php?get_chargepoint_power_factor_p1=3&raw=true"
==== Schreibende Anfragen ====
**Lademodus ändern:**
curl -X POST -d "set_chargemode=pv&chargepoint_nr=3" \
"http://IPADRESSE/openWB/simpleAPI/simpleapi.php"
**Auto-ID Feature beim Schreiben:**
# Schreibt an den Ladepunkt mit der niedrigsten ID
curl -X POST -d "set_chargemode=pv" \
"http://IPADRESSE/openWB/simpleAPI/simpleapi.php"
**Ladestrom setzen:**
curl -X POST -d "chargecurrent=8.23&chargepoint_nr=3" \
"http://IPADRESSE/openWB/simpleAPI/simpleapi.php"
**Batterie-Modus setzen:**
curl -X POST -d "bat_mode=min_soc_bat_mode" \
"http://IPADRESSE/openWB/simpleAPI/simpleapi.php"
**Instant Charging konfigurieren:**
# Energielimit setzen
curl -X POST -d "instant_charging_limit=amount&chargepoint_nr=3" \
"http://IPADRESSE/openWB/simpleAPI/simpleapi.php"
# Energiemenge setzen (25.5 kWh)
curl -X POST -d "instant_charging_amount=25.5&chargepoint_nr=3" \
"http://IPADRESSE/openWB/simpleAPI/simpleapi.php"
# SoC-Limit setzen (80%)
curl -X POST -d "instant_charging_soc=80&chargepoint_nr=3" \
"http://IPADRESSE/openWB/simpleAPI/simpleapi.php"
**Fahrzeug-Management:**
# Fahrzeug 1 zu Ladepunkt 3 zuordnen
curl -X POST -d "vehicle=1&chargepoint_nr=3" \
"http://IPADRESSE/openWB/simpleAPI/simpleapi.php"
# Manuellen SoC auf 75% setzen
curl -X POST -d "manual_soc=75&chargepoint_nr=3" \
"http://IPADRESSE/openWB/simpleAPI/simpleapi.php"
===== Alle verfügbaren Parameter =====
==== Chargepoint (Ladepunkt) Parameter ====
^ Parameter ^ Beschreibung ^ Beispiel ^
| ''get_chargepoint_all'' | Alle Daten | ''?get_chargepoint_all=2'' |
| ''get_chargepoint_voltages'' | Alle Spannungen | ''?get_chargepoint_voltages=2'' |
| ''get_chargepoint_voltage_p1/p2/p3'' | Spannung einzelne Phase | ''?get_chargepoint_voltage_p1=2'' |
| ''get_chargepoint_currents'' | Alle Ströme | ''?get_chargepoint_currents=2'' |
| ''get_chargepoint_current_p1/p2/p3'' | Strom einzelne Phase | ''?get_chargepoint_current_p1=2'' |
| ''get_chargepoint_powers'' | Alle Leistungen | ''?get_chargepoint_powers=2'' |
| ''get_chargepoint_power'' | Gesamtleistung | ''?get_chargepoint_power=2'' |
| ''get_chargepoint_imported'' | Gesamtenergie geladen | ''?get_chargepoint_imported=2'' |
| ''get_chargepoint_exported'' | Gesamtenergie zurückgespeist | ''?get_chargepoint_exported=2'' |
| ''get_chargepoint_daily_imported'' | Täglicher Import | ''?get_chargepoint_daily_imported=2'' |
| ''get_chargepoint_daily_exported'' | Täglicher Export | ''?get_chargepoint_daily_exported=2'' |
| ''get_chargepoint_frequency'' | Netzfrequenz | ''?get_chargepoint_frequency=2'' |
| ''get_chargepoint_rfid'' | RFID-Tag | ''?get_chargepoint_rfid=2'' |
| ''get_chargepoint_rfid_timestamp'' | RFID-Zeitstempel | ''?get_chargepoint_rfid_timestamp=2'' |
| ''get_chargepoint_evse_current'' | EVSE-Strom | ''?get_chargepoint_evse_current=2'' |
| ''get_chargepoint_power_factors'' | Alle Leistungsfaktoren | ''?get_chargepoint_power_factors=2'' |
| ''get_chargepoint_power_factor_p1/p2/p3'' | Leistungsfaktor einzelne Phase | ''?get_chargepoint_power_factor_p1=2'' |
| ''get_chargepoint_config_name'' | Ladepunkt-Name | ''?get_chargepoint_config_name=2'' |
| ''get_chargepoint_connected_vehicle_name'' | Fahrzeug-Name | ''?get_chargepoint_connected_vehicle_name=2'' |
| ''get_chargepoint_charge_template_name'' | Lade-Profil Name | ''?get_chargepoint_charge_template_name=2'' |
| ''get_chargepoint_instant_charging_current'' | Instant Charging Strom | ''?get_chargepoint_instant_charging_current=2'' |
| ''get_chargepoint_pv_charging_min_current'' | PV Min-Strom | ''?get_chargepoint_pv_charging_min_current=2'' |
| ''get_chargepoint_soc'' | Batteriestand (%) | ''?get_chargepoint_soc=2'' |
| ''get_chargepoint_state_str'' | Status-Text | ''?get_chargepoint_state_str=2'' |
| ''get_chargepoint_fault_str'' | Fehler-Text | ''?get_chargepoint_fault_str=2'' |
| ''get_chargepoint_fault_state'' | Fehler-Code | ''?get_chargepoint_fault_state=2'' |
| ''get_chargepoint_phases_in_use'' | Verwendete Phasen | ''?get_chargepoint_phases_in_use=2'' |
| ''get_chargepoint_plug_state'' | Stecker angeschlossen | ''?get_chargepoint_plug_state=2'' |
| ''get_chargepoint_charge_state'' | Ladevorgang aktiv | ''?get_chargepoint_charge_state=2'' |
| ''get_chargepoint_chargemode'' | Lademodus | ''?get_chargepoint_chargemode=2'' |
==== Counter (Zähler) Parameter ====
^ Parameter ^ Beschreibung ^ Beispiel ^
| ''get_counter'' | Alle Zähler-Daten | ''?get_counter=0'' |
| ''get_counter_voltages'' | Alle Spannungen | ''?get_counter_voltages=0'' |
| ''get_counter_voltage_p1/p2/p3'' | Spannung einzelne Phase | ''?get_counter_voltage_p1=0'' |
| ''get_counter_currents'' | Alle Ströme | ''?get_counter_currents=0'' |
| ''get_counter_current_p1/p2/p3'' | Strom einzelne Phase | ''?get_counter_current_p1=0'' |
| ''get_counter_powers'' | Alle Leistungen | ''?get_counter_powers=0'' |
| ''get_counter_power'' | Gesamtleistung | ''?get_counter_power=0'' |
| ''get_counter_power_factors'' | Leistungsfaktoren | ''?get_counter_power_factors=0'' |
| ''get_counter_imported'' | Gesamtenergie bezogen | ''?get_counter_imported=0'' |
| ''get_counter_exported'' | Gesamtenergie eingespeist | ''?get_counter_exported=0'' |
| ''get_counter_daily_imported'' | Tagesenergie bezogen | ''?get_counter_daily_imported=0'' |
| ''get_counter_daily_exported'' | Tagesenergie eingespeist | ''?get_counter_daily_exported=0'' |
| ''get_counter_frequency'' | Netzfrequenz | ''?get_counter_frequency=0'' |
| ''get_counter_fault_str'' | Fehler-Text | ''?get_counter_fault_str=0'' |
| ''get_counter_fault_state'' | Fehler-Code | ''?get_counter_fault_state=0'' |
==== Battery (Batterie) Parameter ====
^ Parameter ^ Beschreibung ^ Beispiel ^
| ''battery'' | Alle Batterie-Daten | ''?battery=2'' |
| ''get_battery_power'' | Batterie-Leistung | ''?get_battery_power=2'' |
| ''get_battery_soc'' | Batterie-Ladestand | ''?get_battery_soc=2'' |
| ''get_battery_currents'' | Batterie-Ströme | ''?get_battery_currents=2'' |
| ''get_battery_imported'' | Batterie geladen | ''?get_battery_imported=2'' |
| ''get_battery_exported'' | Batterie entladen | ''?get_battery_exported=2'' |
| ''get_battery_daily_imported'' | Tagesenergie geladen | ''?get_battery_daily_imported=2'' |
| ''get_battery_daily_exported'' | Tagesenergie entladen | ''?get_battery_daily_exported=2'' |
| ''get_battery_fault_str'' | Fehler-Text | ''?get_battery_fault_str=2'' |
| ''get_battery_fault_state'' | Fehler-Code | ''?get_battery_fault_state=2'' |
==== PV (Photovoltaik) Parameter ====
^ Parameter ^ Beschreibung ^ Beispiel ^
| ''pv'' | Alle PV-Daten | ''?pv=5'' |
| ''get_pv_power'' | PV-Leistung | ''?get_pv_power=5'' |
| ''get_pv_currents'' | PV-Ströme | ''?get_pv_currents=5'' |
| ''get_pv_exported'' | PV-Gesamtertrag | ''?get_pv_exported=5'' |
| ''get_pv_daily_exported'' | PV-Tagesertrag | ''?get_pv_daily_exported=5'' |
| ''get_pv_monthly_exported'' | PV-Monatsertrag | ''?get_pv_monthly_exported=5'' |
| ''get_pv_yearly_exported'' | PV-Jahresertrag | ''?get_pv_yearly_exported=5'' |
| ''get_pv_fault_str'' | Fehler-Text | ''?get_pv_fault_str=5'' |
| ''get_pv_fault_state'' | Fehler-Code | ''?get_pv_fault_state=5'' |
===== Schreibbare Parameter =====
^ Parameter ^ Werte ^ Beschreibung ^
| ''set_chargemode'' | instant, pv, eco, stop, target | Lademodus setzen |
| ''chargecurrent'' | 0, 6-32 | Ladestrom in Ampere |
| ''minimal_pv_soc'' | 0-100 | Min. SoC für PV-Laden |
| ''minimal_permanent_current'' | 0, 6-32 | Min. Dauerstrom für PV |
| ''max_price_eco'' | -100 bis 200 | Max. Preis für ECO-Laden |
| ''chargepoint_lock'' | 0, 1 | Ladepunkt sperren |
| ''bat_mode'' | min_soc_bat_mode, ev_mode, bat_mode | Batterie-Modus |
| ''instant_charging_limit'' | none, amount, soc | Instant Charging Limittyp |
| ''instant_charging_amount'' | ≥ 0 (kWh) | Instant Charging Energielimit |
| ''instant_charging_soc'' | 0-100 (%) | Instant Charging SoC-Limit |
| ''vehicle'' | ≥ 0 (Vehicle ID) | Fahrzeug zuordnen |
| ''manual_soc'' | 0-100 (%) | Manueller SoC setzen |
===== Auto-ID Feature =====
Das Auto-ID Feature ist eine Erweiterung der openWB SimpleAPI. Wenn keine ID angegeben wird oder ''auto'' verwendet wird, wird automatisch die niedrigste verfügbare ID verwendet:
# Diese Aufrufe sind equivalent:
curl "http://IPADRESSE/openWB/simpleAPI/simpleapi.php?get_chargepoint_all="
curl "http://IPADRESSE/openWB/simpleAPI/simpleapi.php?get_chargepoint_all=auto"
# Findet automatisch den Ladepunkt mit der niedrigsten ID
curl -X POST -d "chargemode=pv" "http://IPADRESSE/openWB/simpleAPI/simpleapi.php"
===== Authentifizierung =====
==== Mit Bearer Token ====
curl -H "Authorization: Bearer your-token" \
-X POST -d "chargemode=pv&chargepoint_nr=3" \
"https://IPADRESSE/openWB/simpleAPI/simpleapi.php"
==== Mit Username/Passwort ====
curl -X POST \
-d "username=admin" \
-d "password=admin123" \
-d "chargemode=pv" \
-d "chargepoint_nr=3" \
"https://IPADRESSE/openWB/simpleAPI/simpleapi.php"
===== Ausgabeformate =====
==== JSON-Format (Standard) ====
{
"chargepoint_3": {
"power": 0,
"voltages": [237.79, 0, 0],
"currents": [0, 0, 0],
"state_str": "Nicht bereit"
}
}
==== Raw-Format ====
Für Kompatibilität mit der originalen SimpleAPI kann das Raw-Format verwendet werden:
curl "http://IPADRESSE/openWB/simpleAPI/simpleapi.php?get_chargepoint_power=3&raw=true"
# Ausgabe: 0
===== Beispiele =====
==== Vollständiges Monitoring-Dashboard ====
# Alle wichtigen Werte in einem Aufruf
curl "http://IPADRESSE/openWB/simpleAPI/simpleapi.php?get_chargepoint_all=auto&battery=auto&pv=auto&get_counter=0"
==== Ladevorgang steuern ====
# PV-Laden aktivieren
curl -X POST -d "set_chargemode=pv&chargepoint_nr=auto" \
"http://IPADRESSE/openWB/simpleAPI/simpleapi.php"
# Ladestrom auf 16A setzen
curl -X POST -d "chargecurrent=16&chargepoint_nr=auto" \
"http://IPADRESSE/openWB/simpleAPI/simpleapi.php"
# Batterie-Modus auf EV-Mode setzen
curl -X POST -d "bat_mode=ev_mode" \
"http://IPADRESSE/openWB/simpleAPI/simpleapi.php"
==== Instant Charging komplett konfigurieren ====
# Sofortladen mit 20 kWh Limit einrichten
curl -X POST -d "instant_charging_limit=amount&chargepoint_nr=3" \
"http://IPADRESSE/openWB/simpleAPI/simpleapi.php"
curl -X POST -d "instant_charging_amount=20&chargepoint_nr=3" \
"http://IPADRESSE/openWB/simpleAPI/simpleapi.php"
curl -X POST -d "set_chargemode=instant&chargepoint_nr=3" \
"http://IPADRESSE/openWB/simpleAPI/simpleapi.php"
# Sofortladen mit SoC-Limit (80%) einrichten
curl -X POST -d "instant_charging_limit=soc&chargepoint_nr=3" \
"http://IPADRESSE/openWB/simpleAPI/simpleapi.php"
curl -X POST -d "instant_charging_soc=80&chargepoint_nr=3" \
"http://IPADRESSE/openWB/simpleAPI/simpleapi.php"
curl -X POST -d "set_chargemode=instant&chargepoint_nr=3" \
"http://IPADRESSE/openWB/simpleAPI/simpleapi.php"
==== Fahrzeug-Management ====
# Fahrzeug zuweisen und SoC setzen
curl -X POST -d "vehicle=1&chargepoint_nr=3" \
"http://IPADRESSE/openWB/simpleAPI/simpleapi.php"
curl -X POST -d "manual_soc=65&chargepoint_nr=3" \
"http://IPADRESSE/openWB/simpleAPI/simpleapi.php"
# Automatisches Fahrzeug für Auto-ID Ladepunkt
curl -X POST -d "vehicle=2" \
"http://IPADRESSE/openWB/simpleAPI/simpleapi.php"
curl -X POST -d "manual_soc=50" \
"http://IPADRESSE/openWB/simpleAPI/simpleapi.php"
==== Template-basierte Überwachung ====
# Alle Template-Daten in einem Aufruf
curl "http://IPADRESSE/openWB/simpleAPI/simpleapi.php?get_chargepoint_charge_template_name=3&get_chargepoint_instant_charging_current=3&get_chargepoint_pv_charging_min_current=3"
# Konfiguration und Status kombiniert
curl "http://IPADRESSE/openWB/simpleAPI/simpleapi.php?get_chargepoint_config_name=3&get_chargepoint_connected_vehicle_name=3&get_chargepoint_rfid=3"
===== Neue Features in dieser Version =====
==== Template-basierte Parameter ====
* **''get_chargepoint_instant_charging_current''** - Liest Sofortlade-Stromstärke aus Template
* **''get_chargepoint_pv_charging_min_current''** - Liest PV-Mindestrom aus Template
* **''get_chargepoint_charge_template_name''** - Template-Name
==== Erweiterte Chargepoint-Daten ====
* **''get_chargepoint_daily_imported/exported''** - Tägliche Energiebilanz
* **''get_chargepoint_frequency''** - Netzfrequenz-Überwachung
* **''get_chargepoint_rfid/rfid_timestamp''** - RFID-Event-Tracking
* **''get_chargepoint_power_factors''** - Leistungsfaktor-Monitoring
* **''get_chargepoint_evse_current''** - EVSE-Hardware-Status
==== Instant Charging Control ====
* **''instant_charging_limit''** - Limittyp konfigurieren (none/amount/soc)
* **''instant_charging_amount''** - Energielimit in kWh setzen
* **''instant_charging_soc''** - SoC-Limit in Prozent setzen
==== Vehicle Management ====
* **''vehicle''** - Fahrzeug-ID einem Ladepunkt zuordnen
* **''manual_soc''** - Manuellen Batteriestand setzen
==== Konfigurationszugriff ====
* **''get_chargepoint_config_name''** - Ladepunkt-Name aus Konfiguration
* **''get_chargepoint_connected_vehicle_name''** - Fahrzeug-Name aus Status