no message
This commit is contained in:
@@ -11,9 +11,10 @@ Easee-Konto wird eine weitere Gateway-Instanz benötigt.
|
||||
Stromvorgaben werden von den Ladestationsinstanzen an das Gateway übergeben und
|
||||
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
|
||||
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
|
||||
automatisch erstellt und konfiguriert. Im WebSocket-Client muss keine URL
|
||||
|
||||
+26
-8
@@ -206,7 +206,8 @@ class EaseeGateway extends IPSModule
|
||||
$this->RegisterSubscription($serialNumber);
|
||||
return $this->CreateStateResponse($serialNumber);
|
||||
|
||||
case "SetCurrent":
|
||||
case "SetDynamicChargerCurrent":
|
||||
case "SetCurrent": // Kompatibilität mit Versionen bis 1.7
|
||||
return json_encode(
|
||||
$this->SetDynamicChargerCurrent(
|
||||
$serialNumber,
|
||||
@@ -557,19 +558,36 @@ class EaseeGateway extends IPSModule
|
||||
? (float)$lastCurrents[$serialNumber]
|
||||
: 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) {
|
||||
// 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(
|
||||
"POST",
|
||||
"/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;
|
||||
}
|
||||
|
||||
|
||||
@@ -571,7 +571,7 @@ class Ladestation_v2 extends IPSModule
|
||||
private function SendEaseeCurrentToGateway(float $value)
|
||||
{
|
||||
$response = $this->SendEaseeGatewayRequest([
|
||||
"action" => "SetCurrent",
|
||||
"action" => "SetDynamicChargerCurrent",
|
||||
"serialNumber" => strtoupper(trim($this->ReadPropertyString("Seriennummer"))),
|
||||
"amps" => $value,
|
||||
]);
|
||||
|
||||
Reference in New Issue
Block a user