diff --git a/Manager/module.php b/Manager/module.php index 7f4364b..7730831 100644 --- a/Manager/module.php +++ b/Manager/module.php @@ -152,6 +152,26 @@ class Manager extends IPSModule } IPS_LogMessage("Manager", print_r($samePriorityUsers, true)); + // Verbraucher die nicht 0 Annhemen können, bekommen einfach den tiefsten wert + foreach ($samePriorityUsers as $entry) { + if (in_array(0, $entry['PowerSteps'])) { + $withZero[] = $entry; + } else { + $withoutZero[] = $entry; + } + } + // Methode für alle im withoutZero-Array aufrufen + foreach ($withoutZero as $entry) { + $instanceID = $entry['InstanceID']; + $minPowerStep = min($entry['PowerSteps']); + + // Simulierte Methode (Debug-Ausgabe) + IPS_RequestAction($instanceID, 'SetCurrentPower', $minPowerStep); + + // Hier kann der tatsächliche Funktionsaufruf eingebaut werden + // IPS_RequestAction($instanceID, 'SetCurrentPower', $minPowerStep); + } + $samePriorityUsers = $withZero; // Array für die verteilte Energie pro User erstellen $userEnergyProv = array_fill_keys(array_column($samePriorityUsers, 'InstanceID'), 0); // Initialisierung für jeden Benutzer auf 0 setzen IPS_LogMessage("Manager", print_r($userEnergyProv, true)); diff --git a/library.json b/library.json index 803c053..17f31a1 100644 --- a/library.json +++ b/library.json @@ -6,7 +6,7 @@ "compatibility": { "version": "7.1" }, - "version": "0.138", + "version": "0.139", "build": 0, "date": 0 } \ No newline at end of file