Hmm, also...
Jetzt habe ich noch zwei "Zeitschleifen" dazu gebastelt, und hoffe, damit haben wir das Spielmaterial jetzt wirklich beieinander:
- Die Zeiten sollten einstellbar sein, das war die Absicht hinter dem %toCompare und dem Ergänzen dieses Hashes mit Parametern aus dem Funktionsaufruf (default sind 10 Minuten);
- bei den "stündlichen" habe ich das weiter dahingehend eingeschränkt, dass nur Events kommen, wenn es da Änderungen gab, die Kombination ist aber ein logisches UND, was für diese Art Readings ok ist, aber nicht einfach so für andere übernommen werden sollte;
- erstmals berücksichtigt sind absolute bzw. relative Vergleiche in der "voltage"-Schleife. Falls das aus eurer Sicht tauglich ist, müßte man das dann noch für die anderen Typen ergänzen bzw. ändern, indem man die Verweise auch in %toCompare ergänzt. Hier ist es ein logisches "oder", womit sich die Frage stellt, ob man das für den anderen Fall (Zeit ist abgelaufen) ganz oder in Teilen dann weiter mit einer "eocr"-Logik einschränken möchte oder nicht.
Sieht zwar recht abstrakt aus, aber ich hoffe, ihr könnt euch halbwegs in dem Code orientieren...?