Ich mache eine An- und Abwesenheiskontrolle mit Ping und den Smartphones.
Manchmal bekomme man per Ping keine Antwort und man wird als Abwesend gemeldet dadurch werden weiter Aktionen durchgeführt.
Deshalb würde ich gern erst bei zb 3 Ping versuchen ohne Antwort als Abesend gemeldet werden. Wie kann ich das Anstellen dass erst bei dem 3 Fehlversuch die Aktionen gestartet werden?
Anschließend kannst du die $zaehler-Variablen auswerten z.B.:
if ($zaehlererreichbar == 3)
{
Benutzer anwesend / Aktion in IP-Symcon schalten
}
else
{
Benutzer abwesend / Aktion in IP-Symcon schalten
}
Das ganze war jetzt auf die schnelle aus dem Internet und von mir angepasst, aber vielleicht bring es dich weiter.
Eigentlich müsstes du „Ping unsuccessful!“, gar nicht zählen, da du mit diesem Ergebniss nichts anfängst.
Da wenn der Ping 3 x nicht erfolgreich ist ja sowiso auf abwesend geschalten werden soll bzw. nichts passiert.
Um das Skript immer wieder aufzurfen kannst du das ganze mit einem Timer wiederaufrufen lassen oder per Trigger anstoßen lassen.
Das wird mir schon sehr weiterhelfen. Werde es heute Abend versuchen umzusetzen.
Ich muss unsuccessfull zählen damit nicht nach nur einem Fehlversuch zu Pingen ich als Abwsend gemeldet werde.
Es ist vieleicht verständlicher wenn ich den genauen ablauf erkläre
Wenn ich als Anwesend gemeldet werde wird ein Begüssungs Text per Sonos ausgegeben.
Das Problem ist wenn ein Ping nicht antwortet aber der darauf folgende wieder antwortet, werde ich kurz Abwesend gemeldet und dann wieder Anwesend und der Text wird wieder ausgegben.
Das würde ich gerne durch das zählen verhindern.
Noch eine Frage kann ich das alles in ein Script packen. Das Pingen + Zählen und das abwesend melden.
iergendwie klappt das mit deinem script nicht so ganz…
Habe den script ein wenig verändert dass er für mich passt… aber mir ist nicht klar wie es +1 kann addiert werden wenn das nächste mal wenn der script startet wieder auf 0 gesettzt wird:
Die Variablen des Skripts werden jedes mal beim Aufruf auf 0 gesetzt, das stimmt.
Aber das ist auch kein Problem, da wenn du das Skript z.B. mit einem Trigger alle 5 Minuten einmal anstößt läuft es einmal komplett durch, pingt 4 mal und wertet die Ergebnisse der Pings aus d.h. es erhöht je nachdem ob der Ping erfolgreich war oder nicht die $zaehlernichtereichbar oder die $zaehlerereichbar Variable.
Kann ich dir damit weiterhelfen?
Heute Abend kann ich das Skript selbst mal testen, bin gestern leider nicht mehr dazu gekommen.