NEWS
Idee gesucht: Abwesenheitskontrolle mit Blocky
-
Hi
Mein Handy wird alle 5 Minuten angepingt und meine Wohnungstür einen Kontakt zur Öffnungserkennung. Das ganze ist ein Einpersonenhaushalt.
Die Logik die ich verwenden will ist:
Ping erkannt zu Hause
Ping nicht erkannt aber seit dem letzten Ping keine Tür geöffnet trotzdem zu Hause
Ping nicht erkannt, aber Tür die letzten 10 Minuten benützt abwesend.
Ideen der Umsetzung?
Danke
-
Hi,
Hast du dir mal Blockly vom Javascript adapter angeschaut ?
Damit kan man genau so eine routine wie du beschreibst programmieren.
Greetz,
Dutch
-
Danke. Hab schon einiges mit Blocky gemacht. Da fehlt mir aber irgendwie der Ansatz.
-
Nichts für ungut, aber Forum Suche Mal bemüht?
Sent from my iPhone using Tapatalk
-
Hi,
ich habe dem TR064 Adapter verwendet und frage unsere 4 Handys als Geräte abgefragt und dann weiter mit Blockly (bisher Proof-of-Concept);
Der Plan ist alle 15 Minuten alle 4 Handys mit Oder-Verknüpfung abzufragen. Wenn alle 4 Geräte nicht da sind kann ich davon ausgehen, es ist niemand zu hause. Später soll dann Anstatt dem Pushover eine Sprachnachricht erfolgen (als Warnung im Haus) und dann wird die Alarmanlage (über CCU2) aktivieren.
Ich sende mal den Code wenn ich damit fertig bin…
-
Darf ich einen Tip geben Werde45?
Die oder Blöcke werde so extrem lang, rechte Maustaste "extrahieren" Dan kommen sie untereinander ist übersichtlicher
Sent from my iPhone using Tapatalk
-
Aha…
finde ich leider nicht. Nur "falten" und das ist ja nicht untereinander....
lg
-
Aha…
finde ich leider nicht. Nur "falten" und das ist ja nicht untereinander....
lg `
Mache Mal bitte Rechtemaus auf das oder object und zeige einen Screenshot
Sent from my iPhone using Tapatalk
-
externe / interne Eingänge (rechte Maustaste auf den und/oder Baustein)
PS: das hat Dutchman sicher auch gemeint (nicht extrahieren)
![](</s><URL url=)<link_text text="https://uploads.tapatalk-cdn.com/201812 ... 14534f.jpg">https://uploads.tapatalk-cdn.com/20181226/e16987c3011c3d5a5ff5f4d42914534f.jpg</link_text>" /> -
Hi,
ich habe dem TR064 Adapter verwendet und frage unsere 4 Handys als Geräte abgefragt und dann weiter mit Blockly (bisher Proof-of-Concept);
Anwesenheit.png
Der Plan ist alle 15 Minuten alle 4 Handys mit Oder-Verknüpfung abzufragen. Wenn alle 4 Geräte nicht da sind kann ich davon ausgehen, es ist niemand zu hause. Später soll dann Anstatt dem Pushover eine Sprachnachricht erfolgen (als Warnung im Haus) und dann wird die Alarmanlage (über CCU2) aktivieren.
Ich sende mal den Code wenn ich damit fertig bin… `
Dein Plan ist nachvollziehbar, hat aber eben leider einen Haken der nun auch schon mehrmals in diesem oder anderen SmartHome Foren zu Problemen geführt hat.
Es passiert bei fast allen Handys das wenn sie im Standby sind, das WLAN austellen bzw das WLAN ins Standby setzen. Das hat leider beim TR64 Adapter zur Folge das irgendwann das Gerät als "Offline" angezeigt wird und dann hast du das Problem. Trotz das dass Handy zuhause ist, bzw die Person anwesend ist, wird dein Blockly Script auslösen obwohl du es nicht willst bzw es gar nicht der Wahrheit entspricht.
Benutzt nun einer das Handy mal nicht 15 Minuten kann es sein das er als Abwesend deklariert wird obwohl es nicht so ist.
Ich würde behaupten du bist auf der Sicheren Seite wenn du es über Geopositionen machst.
-
Erstmal danke für den Hinweis mit den externen Eingängen.. Ich hatte fast die Freigabe, mir einen breiteren (größeren) Bildschirm zu kaufen….Toll gemacht :lol:
Aber zurück zum Thema: Ich probiere das schon eine Weile (ohne echte Scharfschaltung) und habe auf den betroffenen Geräten das WLAN permanent aktiviert. Bisher funktioniert es gut....
Es wäre schon schlimm, wenn der Alarm nachts losgeht...
ich werde berichte....und mal mein System vorstellen...
-
Erstmal danke für den Hinweis mit den externen Eingängen.. Ich hatte fast die Freigabe, mir einen breiteren (größeren) Bildschirm zu kaufen….Toll gemacht :lol:
Aber zurück zum Thema: Ich probiere das schon eine Weile (ohne echte Scharfschaltung) und habe auf den betroffenen Geräten das WLAN permanent aktiviert. Bisher funktioniert es gut....
Es wäre schon schlimm, wenn der Alarm nachts losgeht...
ich werde berichte....und mal mein System vorstellen... `
Okay, dann hast du bisher Glück gehabt, ich würde da lieber nämlich erst auf Nummer Sicher gehen, bevor du da irgendwas Scharf stellst.
Du kannst es ja ein paar Tage testen indem du dir einfach, sobald das Handy "offline" ist, eine Telegram Nachricht zukommen lässt.
Somit kannst du erstmal ein paar Tage schauen ob es irgendwelche "Standby Zeit" vom Handy WLAN gibt.
-
Danke einmal.
Der Teil mit dem Handy ist soweit kein Problem, was mir generell Probleme macht ist das Konzept von JavaSkript das immer durchläuft und nicht wartet. Mit dem Konzept hatte ich schon vor 30 Jahren in der Schule mit SPS Probleme.
In "normalen" Programmiersprachen würde ich etwas so schreiben:
Wenn Tür von Offen auf Geschlossen wechselt setzte Flag warte 10 Minuten Wenn Flag noch gesetzt ist setze Abwesenheit
Wenn Ping positiv lösche Flag
Mein Problem ist das "warte 10 Minuten"
-
Ok. Ich wollte nicht das Thema "klauen".
-
Kein Problem, hole es mir schon zurück. :lol:
-
Danke einmal.
Der Teil mit dem Handy ist soweit kein Problem, was mir generell Probleme macht ist das Konzept von JavaSkript das immer durchläuft und nicht wartet. Mit dem Konzept hatte ich schon vor 30 Jahren in der Schule mit SPS Probleme.
In "normalen" Programmiersprachen würde ich etwas so schreiben:
Wenn Tür von Offen auf Geschlossen wechselt setzte Flag warte 10 Minuten Wenn Flag noch gesetzt ist setze Abwesenheit
Wenn Ping positiv lösche Flag
Mein Problem ist das "warte 10 Minuten" `
Das "warte 10 Minuten" machst ganz einfach in dem Du die Flagabfrage per falls Bedingung in ein timeout von 10 Minuten packst. Alls was da drin steht, wird erst nach 10 Minuten abgearbeitet und wenn dann das Flag noch gesetzt ist, hast auch Dein "setzte Abwesenheit"
-
Danke einmal.
Der Teil mit dem Handy ist soweit kein Problem, was mir generell Probleme macht ist das Konzept von JavaSkript das immer durchläuft und nicht wartet. Mit dem Konzept hatte ich schon vor 30 Jahren in der Schule mit SPS Probleme.
In "normalen" Programmiersprachen würde ich etwas so schreiben:
Wenn Tür von Offen auf Geschlossen wechselt setzte Flag warte 10 Minuten Wenn Flag noch gesetzt ist setze Abwesenheit
Wenn Ping positiv lösche Flag
Mein Problem ist das "warte 10 Minuten" `
Hi falls es dir etwas nützt ich habe es so gelöst.Grüße
var tuerkontakt = "hm-rpc.1.LEQ1086061.1.STATE"/*Türschloss Eingang.STATE*/; /*Hier die ID des Türkontakts eintragen*/ var anwesenheit = "javascript.0.Alarmanlage.in.auto"/*Alarmanlage.in.anwesenheit*/; /*Hier die ID der Anwesenheitsvariable eintragen*/ var min = 15; /*Hier die Zeitspanne der aktiven Abwesenheitserkennung nach Türschließung*/ var inrange = false; /*Falls kein Türkontakt vorhanden auf true setzen*/ on(tuerkontakt, function(obj) { if (obj.newState.val === false) { inrange = true; setTimeout(function() { inrange = false; }, min * 60 * 1000); } }); on("javascript.0.Anwesenheitssteuerung.Userlist.JemandDa"/*Anwesenheit alle User*/, function(obj) { if (obj.newState.val === false) { if (inrange === true) { setState(anwesenheit,false); } else { log("Anwesenheit Userliste 0 nach Zeit abgelaufen setze Anwesenheit auf 0", "warn"); } } if (obj.newState.val === true) { setState(anwesenheit,true); } });
-
Mache das auch ueber den tr64 Adapter… Löse das mit nem Javascript und nem timer der loslauft.. Wenn niemand da läuft Zeit... Wenn irgend ein handy wieder erreichbar wird der timer zurueckgesetzt... Wenn länger als 15 min der timer nicht zurueck gesetzt wird dann wird der state niemand zu hause erst gesetzt. Das verhindert fehlschaltungen zuverlässig. Wird irgend ein Handy erkannt wird der state wieder zurueck gesetzt.
Das funktioniert fehlerfrei mit meinem p20pro dem iPhone 6 und Samsung s5mini... Keine Fehler bei der abwesenheitserkennung..
Alarm deaktivieren tue ich damit aber nicht... Dauert mir zu lange bis die Handys wieder im netz sind... Und so lange verzoegere ich den alarm nicht...
Mache das deaktivieren ueber handsender oder vis.. Anzeige ob Anlage scharf mach ich mit ner LED an der Sirene und rgbw am Briefkasten... Die Bewohner wissen also immer beim heim kommen wie der Status ist.
Gesendet von meinem CLT-L09 mit Tapatalk
-
> Mache das auch ueber den tr64 Adapter… Löse das mit nem Javascript und nem timer der loslauft.. Wenn niemand da läuft Zeit... Wenn irgend ein handy wieder erreichbar wird der timer zurueckgesetzt... Wenn länger als 15 min der timer nicht zurueck gesetzt wird dann wird der state niemand zu hause erst gesetzt. Das verhindert fehlschaltungen zuverlässig. Wird irgend ein Handy erkannt wird der state wieder zurueck gesetzt.
@smartboart:genau dieses Szenario versuche ich gerade abzubilden. Könntest du bitte eventuell dieses Script zur Verfügung stellen?
Danke!
-
Hi,
ich habe dem TR064 Adapter verwendet und frage unsere 4 Handys als Geräte abgefragt und dann weiter mit Blockly (bisher Proof-of-Concept);
Anwesenheit.png
Der Plan ist alle 15 Minuten alle 4 Handys mit Oder-Verknüpfung abzufragen. Wenn alle 4 Geräte nicht da sind kann ich davon ausgehen, es ist niemand zu hause. Später soll dann Anstatt dem Pushover eine Sprachnachricht erfolgen (als Warnung im Haus) und dann wird die Alarmanlage (über CCU2) aktivieren.
Ich sende mal den Code wenn ich damit fertig bin… `
wieso alle 15 min? Prüfe doch einfach wenn einer "active" wird bzw. "inaktiv"…..Dann brauch es den Zeitintervall nicht und es spart Ressourcen