Steuerung unserer Wohnung
Zeig mal dein Script...
Darf's ein bisschen smarter sein? http://www.schlaue-huette.de !
Anrufer Liste ist jetzt auch implementiert.
Bei mir werden nur die Anrufe angezeigt, die nicht entgegen genommen wurden:
Bei Interesse kann ich auch da was anbieten
Gruß
Sebastian
Bei mir werden nur die Anrufe angezeigt, die nicht entgegen genommen wurden:
Bei Interesse kann ich auch da was anbieten
Gruß
Sebastian
Darf's ein bisschen smarter sein? http://www.schlaue-huette.de !
So sieht es jetzt aus.Sebi hat geschrieben:Zeig mal dein Script...
Code: Alles auswählen
<html>
<head>
<title>FB Anwesenheitserkennung</title>
</head>
<body>
<?php
// Love your Lightmanager Air!
$fritzbox_ip = "fritz.box";
$tr64_port = "49000";
$Host1 = 'S6';
$Host2 = 'bphone';
$Host3 = 'mphone';
// Getestet mit Fritz!OS 6.60
$client = new SoapClient(null,array( 'location' => "http://" . $fritzbox_ip . ":" . $tr64_port . "/upnp/control/hosts",
'uri' => "urn:dslforum-org:service:Hosts:1",
'soapaction' => "urn:dslforum-org:service:Hosts:1#GetSpecificHostEntry",
'noroot' => False
));
$NumberOfHosts = $client->GetHostNumberOfEntries();
echo '<table><tr><td>Hostname</td><td>Ist verbunden?</td></tr> ';
if (!(is_soap_fault($NumberOfHosts)))
{
for ($i=0;$i<$NumberOfHosts;$i++)
{
$Host = $client->GetGenericHostEntry(new SoapParam($i,'NewIndex'));
echo'<td>';
echo $Host['NewHostName'];
echo'</td><td align="center">';
echo $Host['NewActive'];
echo'</td></tr>';
if ($Host['NewHostName'] == $Host1)
{
if(($Host['NewActive'] == 1))
{
$Host1anwesend = 1;
}
else
{
$Host1anwesend = 0;
}
}
}
}
if (!(is_soap_fault($NumberOfHosts)))
{
for ($i=0;$i<$NumberOfHosts;$i++)
{
$Host = $client->GetGenericHostEntry(new SoapParam($i,'NewIndex'));
if ($Host['NewHostName'] == $Host2)
{
if(($Host['NewActive'] == 1))
{
$Host2anwesend = 1;
}
else
{
$Host2anwesend = 0;
}
}
}
}
if (!(is_soap_fault($NumberOfHosts)))
{
for ($i=0;$i<$NumberOfHosts;$i++)
{
$Host = $client->GetGenericHostEntry(new SoapParam($i,'NewIndex'));
if ($Host['NewHostName'] == $Host3)
{
if(($Host['NewActive'] == 1))
{
$Host3anwesend = 1;
}
else
{
$Host3anwesend = 0;
}
}
}
}
echo '</table>';
/* Ab hier Ausgabe oder Weiterverarbeitung in DB oder TXT File.
Es wird in diesem Beispiel eine 1 für online und eine 2 für offline geschrieben. Abschließend eine Prüfung ob wenigstens einer online ist.
Diese Rückgabe könnte dann - wenn das Feature beim Lightmanager kommen sollte, als Auslösung von Szenen, Marker, ... dienen
*/
if ($Host1anwesend == 1)
{
echo $Host1 . ' ist online<br>';
}
else
{
echo $Host1 . ' ist offline<br>';
}
if ($Host2anwesend == 1)
{
echo $Host2 . ' ist online<br>';
}
else
{
echo $Host2 . ' ist offline<br>';
}
if ($Host3anwesend == 1)
{
echo $Host3 . ' ist online<br>';
}
else
{
echo $Host3 . ' ist offline<br>';
}
if ($Host1anwesend == 1 OR $Host2anwesend == 1)
{
echo '<b>Jemand ist zu Hause</b><br><br>';
}
else
{
echo '<b>Keiner ist da</b><br><br>';
}
echo 'Anzahl der Hosts gesamt: ' . $NumberOfHosts . '<br><br>';
?>
</body>
</html>
Aber bitte, wirklich nicht als Kritik verstehen! Ich bin Dir wirklich sehr dankbar....
Ne Quatsch ist doch gut wenn andere mitdenken !
Habs nochmal mit deinem Script probiert. Geht auch ohne else einwandfrei. Ggf. hast du irgendwas in deiner PHP ini konfiguriert.
Weil generell muss das gehen. Heisst ja auch IF Schleife. Else ist lediglich eine Erweiterung.
Gruß
Sebastian
Habs nochmal mit deinem Script probiert. Geht auch ohne else einwandfrei. Ggf. hast du irgendwas in deiner PHP ini konfiguriert.
Weil generell muss das gehen. Heisst ja auch IF Schleife. Else ist lediglich eine Erweiterung.
Gruß
Sebastian
Darf's ein bisschen smarter sein? http://www.schlaue-huette.de !
Wie lange dauert es bei dir, bis er mitbekommt, dass du nicht mehr eingebucht bist?
Bei mir ca. 4-5 Minuten. Einbuchen innerhalb von 10sek.
Bei mir ca. 4-5 Minuten. Einbuchen innerhalb von 10sek.
Darf's ein bisschen smarter sein? http://www.schlaue-huette.de !
OK, komisch dass es bei mir beim ausloggen länger dauert.
Anbei übrigens das Anwesenheits-Script, dass eine Marker Aktion beim Lightmanager durchführt. Geht bestimmt noch eleganter, aber funzt so schonmal einwandfrei.
Könnt ja mal berichten.
Gruß
Sebastian
Anbei übrigens das Anwesenheits-Script, dass eine Marker Aktion beim Lightmanager durchführt. Geht bestimmt noch eleganter, aber funzt so schonmal einwandfrei.
Könnt ja mal berichten.
Gruß
Sebastian
- Dateianhänge
-
- fritz_anwesenheit_do_action.zip
- (918 Bytes) 443-mal heruntergeladen
Darf's ein bisschen smarter sein? http://www.schlaue-huette.de !
Hab grade nochmal ein bischen getestet. Das Marker Setzen Script funktioniert einwandfrei, wenn man es manuell aufruft. Möchte man es jedoch automatisiert per Cronjob laufen lassen, geht es nicht. (Da Javascript und HTML Bestandteile enthalten sind). Da müssen wir weiter gucken oder hat jemand eine Idee?
EDIT: Problem erkannt, Problem gebannt. Anbei das PHP Script, dass je nach Anwesenheitszustand der Marker Zustand per Cronjob ändern kann.
Have Fun
Gruß
Sebastian
EDIT: Problem erkannt, Problem gebannt. Anbei das PHP Script, dass je nach Anwesenheitszustand der Marker Zustand per Cronjob ändern kann.
Have Fun
Gruß
Sebastian
Zuletzt geändert von Sebi am Di 2. Aug 2016, 14:02, insgesamt 1-mal geändert.
Darf's ein bisschen smarter sein? http://www.schlaue-huette.de !
Habe es leider noch nicht testen können.
Aber mal ne frage, glaub so einfach wird das nicht Funktionieren, dafür schaltet die Fritzbox mir zu schnell auf Offline.
Stehe ich bei mir vor der Garage, habe ich schon WLAN, laufe ich anschließend ums Haus rum, verliere ich den Kontakt zum WLAN, erst wenn ich im Treppenhaus bin gibt es wieder WLAN, Also könnte er schon auf Offline schalten, wenn ich nur den Müll runterbringe. Die Sache ich nicht so einfach wie ich immer denke
Aber zu Visuellen Überwachung mittels IH und PHP wäre es nicht schlecht. Also so wie du es hast.
Vielleicht findet man ja noch ne Lösung.
Mal ne andere Frage: Zu dein Cronjobs, lässt du damit regelmäßig die PHP Seite aktualisieren?
Laufen die auf deiner NAS?
Aber mal ne frage, glaub so einfach wird das nicht Funktionieren, dafür schaltet die Fritzbox mir zu schnell auf Offline.
Stehe ich bei mir vor der Garage, habe ich schon WLAN, laufe ich anschließend ums Haus rum, verliere ich den Kontakt zum WLAN, erst wenn ich im Treppenhaus bin gibt es wieder WLAN, Also könnte er schon auf Offline schalten, wenn ich nur den Müll runterbringe. Die Sache ich nicht so einfach wie ich immer denke
Aber zu Visuellen Überwachung mittels IH und PHP wäre es nicht schlecht. Also so wie du es hast.
Vielleicht findet man ja noch ne Lösung.
Mal ne andere Frage: Zu dein Cronjobs, lässt du damit regelmäßig die PHP Seite aktualisieren?
Laufen die auf deiner NAS?