Um zu erfahren, ob ein Gerät über das LAN zu erreichen bzw. eingeschaltet ist, kann man den Sys_Ping Befehl verwenden.
Die jeweiligen Zustände können im Dashboard oder WebFront visualisiert werden oder man kann eine Art „Anwesenheit-Erkennung“ (iPod) realisieren.
Für das u.g. Skript muss jedem Gerät, wie Kamera, Audi, Video, iPod usw. eine Variable vom Typ Boolean vergeben werden.
Diese muss im Baumdiagramm unter dem Skript stehen (IPS_GetChildrenIDs / siehe Bild 1).
Im Feld Beschreibung (ObjectInfo) wird die entsprechende IP-Adresse eingetragen (siehe Bild 2).
Getriggert wird das Skript z.B. alle 5 Minuten.
MST
// (C) by IP-Symcon 2009
// Trigger: z.B. alle 5 Minuten
foreach(IPS_GetChildrenIDs($IPS_SELF) as $item){ // alle Unterobjekte
$id_info = IPS_GetObject($item);
$id_typ = $id_info['ObjectType'];
if ($id_typ == 2){ // nur bei Variablen
$id_adr = $id_info['ObjectInfo'];
$ping = Sys_Ping($id_adr, 1000); // Ping max. 2 Sek. warten
if($IPS_SENDER == "Execute") { // zum Testen
echo "IP: $id_adr
";
echo "Ping: " .(int)$ping. "
";
}
SetValue($item, $ping); // Ping-Ergnis speichern
}
}