AKM: Schalten nach 10min abwesend

Hallo,

ich habe seit kurzem das AKM-Modul und bin auch sehr zufrieden damit.
Leider stoße ich an das Ende meiner geringen Programmierkenntnisse.
Da ich gerne kurze Übertragungsfehler ausklammern möchte, würde ich gerne ein Skript erst ausführen lassen wenn ich 10min abwesend bin (Und sich der Zustand in der Zeit nicht geändert hat).
Hat evtl. jemand einen Codeschnipsel für mich mit dem ich das realisieren könnte?

Besten Dank im Voraus
Stefan

P.S. Sorry falls es ein alter Hut ist, aber bei der Suche bin ich wohl auf Grund falscher Suchwörter nicht fündig geworden.

Hallo Stefan,

so z.B. ID anpassen!

<?
// trigger alle 1 Minute. Ist die Variable länger als 10 Minuten auf false, etwas ausführen.

$status = GetValue(10909); // Statusvariable anwesend oder abwesend
$abwesend = IPS_GetVariable(10909); // Statusvariable anwesend oder abwesend
$lastUpdate = $abwesend['VariableUpdated']; // Zeit letztes Update der Variable

if (!$status && (time() - $lastUpdate) >= 600) // 10 minuten
{
    echo "Abwesend";
    // mach was z.B. IPS_RunScript();
}
?>

Super es klappt.

Vielen Dank!


if (!$status && (time() - $lastUpdate) >= 600) // 10 minuten

Das sind dann aber ca. 15min…

Werden keine ‚Ping‘ Signale über eine Dauer von mehr als 5 Minuten (fest, nicht änderbar) empfangen, wird 'Available’auf FALSE gesetzt.

Wie kommst Du darauf. Die Variable wird jede Minute geprüft.

Nunja, die Variable wird ja erst nach 5min Abwesenheit false + die 600s = 15min oder?

als Gesamtzeit, ja. Das soll er einstellen wir er will, kann ja auch 300 einsetzten wenn er ingesamt 10min haben will. Ich denke, so flexibel wird er sein. :slight_smile:

Klar.:slight_smile:
Ich war da nur auch drüber gestolpert, beim proggen für die Alarmanlage.
Wenn ein kleineres Zeitfenster benötigt wird kann man die Update Variable nehmen, die wird so aller 20-30s aktualisiert.