Hallo,
ich möchte inspiriert von dem Smart Home Blog von Jon Scott, den Link hatte mal ein Forumsmitglied gepostet, mit den vorhandenen Bordmitteln eine Keyless In Lösung basteln.
Die Boardmittel:
misterhouse
mmh
Wlan am Eingang
Mobotix M12 an Eingang
iphone oder wlan-fähiges Handy
Misterhouse pingt das iphone alle 5 s an ob im Netzwerk verfügbar und schreibt den Status ins Log.
Sobald man mit seinem iphone das Haus und damit den Wlan-Bereich verlässt meldet Misterhouse Netzwerkgerät iphone abgemeldet.
Besteht der Status abgemeldet für länger als 5 Minuten wartet Misterhouse auf die Aktion Tür öffnen für iphone mit IP/Mac Adresse X/Y.
Komme ich nun zurück meldet sich mein iphone im Wlan mit wpa2 Schlüssel an. Misterhouse vergleicht IP-Adresse und Mac Adresse und meldet Iphone erfolgreich angemeldet ins Log.
Die Mobotix löst bei Betreten der Eingangstreppe durch Bewegungsmelder oder PIR einen Event aus und schickt eine Netzwerkmeldung an Misterhouse. Vom Anmelden des iphones im Wlan und des Auslösens des Events soll ein Zeitfenster vorgegeben werden. Betritt man während dieses Zeitfensters die Treppe öffnet Misterhouse die Tür.
Status:
Das An und Abmelden des iphones funktioniert ziemlich schnell und zuverlässig. Hab das auch mit einem Blackberry ausprobiert der deutlich länger braucht um die Wlan Verbindung wieder herzustellen.
Code:
use Network_Item;
$network_phone1 = new Network_Item('xxx.xxx.xxx.xxx', 5);
$network_phone2 = new Network_Item('xxx.xxx.xxx.xxx', 5);
print_log "phone1 ist $state" if $state = state_changed $network_phone1;
print_log "phone1 ist $state" if new_second 60 and $state = state $network_phone1;
print_log "phone2 ist $state" if $state = state_changed $network_network_phone2;
print_log "phone2 ist $state" if new_second 60 and $state = state $network_phone2;
Wie kann ich denn die Mac Adresse des iphones als zusätzlichen Parameter abfragen?
Bei Misterhouse habe ich eine Dummy Adresse erstellt für die Mobotix Kamera.
EIB1, 9/1/0, Mobotix,
Die wird beim Auslösen des Events Betreten der Trepppe von der Mobotix auf ON gesetzt.
Die Mobotix verschickt foldenden http Request an Misterhouse:http:// misterhouse:8080/bin/SET;&html_list(EIB1_Item)?$Mobotix=on
Code:
if (time_idle $network_phone1 ("5 m aus")) {
if (state_changed $network_phone1 eq 'an' and state_changed $Mobotix eq ON innerhalb von Zeitfenster X) {
set $Tuer ON;
print_log "Haus offen";
}
}
Den Status der Mobotix würde ich mit set_with_timer nach gewünschter Zeit wieder auf off setzen. Ab wie sieht der Code für den Zustand aus der sich in einem zukünftigen Zeitfenster erfüllen soll?
Klaus
ich möchte inspiriert von dem Smart Home Blog von Jon Scott, den Link hatte mal ein Forumsmitglied gepostet, mit den vorhandenen Bordmitteln eine Keyless In Lösung basteln.
Die Boardmittel:
misterhouse
mmh
Wlan am Eingang
Mobotix M12 an Eingang
iphone oder wlan-fähiges Handy
Misterhouse pingt das iphone alle 5 s an ob im Netzwerk verfügbar und schreibt den Status ins Log.
Sobald man mit seinem iphone das Haus und damit den Wlan-Bereich verlässt meldet Misterhouse Netzwerkgerät iphone abgemeldet.
Besteht der Status abgemeldet für länger als 5 Minuten wartet Misterhouse auf die Aktion Tür öffnen für iphone mit IP/Mac Adresse X/Y.
Komme ich nun zurück meldet sich mein iphone im Wlan mit wpa2 Schlüssel an. Misterhouse vergleicht IP-Adresse und Mac Adresse und meldet Iphone erfolgreich angemeldet ins Log.
Die Mobotix löst bei Betreten der Eingangstreppe durch Bewegungsmelder oder PIR einen Event aus und schickt eine Netzwerkmeldung an Misterhouse. Vom Anmelden des iphones im Wlan und des Auslösens des Events soll ein Zeitfenster vorgegeben werden. Betritt man während dieses Zeitfensters die Treppe öffnet Misterhouse die Tür.
Status:
Das An und Abmelden des iphones funktioniert ziemlich schnell und zuverlässig. Hab das auch mit einem Blackberry ausprobiert der deutlich länger braucht um die Wlan Verbindung wieder herzustellen.
Code:
use Network_Item;
$network_phone1 = new Network_Item('xxx.xxx.xxx.xxx', 5);
$network_phone2 = new Network_Item('xxx.xxx.xxx.xxx', 5);
print_log "phone1 ist $state" if $state = state_changed $network_phone1;
print_log "phone1 ist $state" if new_second 60 and $state = state $network_phone1;
print_log "phone2 ist $state" if $state = state_changed $network_network_phone2;
print_log "phone2 ist $state" if new_second 60 and $state = state $network_phone2;
Wie kann ich denn die Mac Adresse des iphones als zusätzlichen Parameter abfragen?
Bei Misterhouse habe ich eine Dummy Adresse erstellt für die Mobotix Kamera.
EIB1, 9/1/0, Mobotix,
Die wird beim Auslösen des Events Betreten der Trepppe von der Mobotix auf ON gesetzt.
Die Mobotix verschickt foldenden http Request an Misterhouse:http:// misterhouse:8080/bin/SET;&html_list(EIB1_Item)?$Mobotix=on
Code:
if (time_idle $network_phone1 ("5 m aus")) {
if (state_changed $network_phone1 eq 'an' and state_changed $Mobotix eq ON innerhalb von Zeitfenster X) {
set $Tuer ON;
print_log "Haus offen";
}
}
Den Status der Mobotix würde ich mit set_with_timer nach gewünschter Zeit wieder auf off setzen. Ab wie sieht der Code für den Zustand aus der sich in einem zukünftigen Zeitfenster erfüllen soll?
Klaus
Kommentar