no message

This commit is contained in:
dh
2026-08-06 10:37:22 +02:00
parent 43623376e4
commit d8d3e2c998
3 changed files with 30 additions and 11 deletions
+3 -2
View File
@@ -11,9 +11,10 @@ Easee-Konto wird eine weitere Gateway-Instanz benötigt.
Stromvorgaben werden von den Ladestationsinstanzen an das Gateway übergeben und Stromvorgaben werden von den Ladestationsinstanzen an das Gateway übergeben und
von dort über die Easee-REST-API gesendet. von dort über die Easee-REST-API gesendet.
Bei 0 A pausiert das Gateway die aktuelle Ladesitzung. Beim anschließenden Bei 0 A setzt das Gateway das dynamische Stromlimit auf 0. Beim anschließenden
Wechsel auf einen positiven Strom wird die Sitzung zuerst fortgesetzt und danach Wechsel auf einen positiven Strom wird die Sitzung zuerst fortgesetzt und danach
das neue dynamische Stromlimit gesetzt. das neue dynamische Stromlimit gesetzt. Positive Vorgaben unter 6 A werden auf
den technischen Mindestladestrom von 6 A angehoben.
Der benötigte WebSocket-Client wird nach dem Speichern der Easee-Zugangsdaten Der benötigte WebSocket-Client wird nach dem Speichern der Easee-Zugangsdaten
automatisch erstellt und konfiguriert. Im WebSocket-Client muss keine URL automatisch erstellt und konfiguriert. Im WebSocket-Client muss keine URL
+26 -8
View File
@@ -206,7 +206,8 @@ class EaseeGateway extends IPSModule
$this->RegisterSubscription($serialNumber); $this->RegisterSubscription($serialNumber);
return $this->CreateStateResponse($serialNumber); return $this->CreateStateResponse($serialNumber);
case "SetCurrent": case "SetDynamicChargerCurrent":
case "SetCurrent": // Kompatibilität mit Versionen bis 1.7
return json_encode( return json_encode(
$this->SetDynamicChargerCurrent( $this->SetDynamicChargerCurrent(
$serialNumber, $serialNumber,
@@ -557,19 +558,36 @@ class EaseeGateway extends IPSModule
? (float)$lastCurrents[$serialNumber] ? (float)$lastCurrents[$serialNumber]
: null; : null;
$requestedAmps = $amps;
if ($amps > 0 && $amps < 6) {
$amps = 6;
}
$this->SendDebug(
"DynamicCurrent",
json_encode([
"serialNumber" => $serialNumber,
"requestedAmps" => $requestedAmps,
"effectiveAmps" => $amps,
"previousAmps" => $previousAmps,
]),
0
);
if ($amps <= 0) { if ($amps <= 0) {
// Den angeforderten Zustand sofort merken. Damit wird beim nächsten
// positiven Sollwert immer ein Resume ausgelöst, auch wenn die
// HTTP-Antwort des 0-A-Befehls verloren geht.
$lastCurrents[$serialNumber] = 0;
$this->SetBuffer("LastCommandedCurrents", json_encode($lastCurrents));
$result = $this->AuthorizedApiRequest( $result = $this->AuthorizedApiRequest(
"POST", "POST",
"/api/chargers/" . rawurlencode($serialNumber) . "/api/chargers/" . rawurlencode($serialNumber) .
"/commands/pause_charging", "/commands/set_dynamic_charger_current",
"" json_encode(["amps" => 0, "minutes" => 0])
); );
if ($result["success"] ?? false) {
$lastCurrents[$serialNumber] = 0;
$this->SetBuffer("LastCommandedCurrents", json_encode($lastCurrents));
}
return $result; return $result;
} }
+1 -1
View File
@@ -571,7 +571,7 @@ class Ladestation_v2 extends IPSModule
private function SendEaseeCurrentToGateway(float $value) private function SendEaseeCurrentToGateway(float $value)
{ {
$response = $this->SendEaseeGatewayRequest([ $response = $this->SendEaseeGatewayRequest([
"action" => "SetCurrent", "action" => "SetDynamicChargerCurrent",
"serialNumber" => strtoupper(trim($this->ReadPropertyString("Seriennummer"))), "serialNumber" => strtoupper(trim($this->ReadPropertyString("Seriennummer"))),
"amps" => $value, "amps" => $value,
]); ]);