Fehler behoben, manager verteilt energie jetzt auch richtig, wenn einzelne verbraucher nicht 0 wollen
This commit is contained in:
@@ -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));
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
"compatibility": {
|
||||
"version": "7.1"
|
||||
},
|
||||
"version": "0.138",
|
||||
"version": "0.139",
|
||||
"build": 0,
|
||||
"date": 0
|
||||
}
|
||||
Reference in New Issue
Block a user