Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Idee gesucht: Abwesenheitskontrolle mit Blocky

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Idee gesucht: Abwesenheitskontrolle mit Blocky

    This topic has been deleted. Only users with topic management privileges can see it.
    • G
      Georgius last edited by

      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

      1 Reply Last reply Reply Quote 0
      • Dutchman
        Dutchman Developer Most Active Administrators last edited by

        Hi,

        Hast du dir mal Blockly vom Javascript adapter angeschaut ?

        Damit kan man genau so eine routine wie du beschreibst programmieren.

        Greetz,

        Dutch

        1 Reply Last reply Reply Quote 0
        • G
          Georgius last edited by

          Danke. Hab schon einiges mit Blocky gemacht. Da fehlt mir aber irgendwie der Ansatz.

          1 Reply Last reply Reply Quote 0
          • Dutchman
            Dutchman Developer Most Active Administrators last edited by

            Nichts für ungut, aber Forum Suche Mal bemüht?

            Sent from my iPhone using Tapatalk

            1 Reply Last reply Reply Quote 0
            • Werde45
              Werde45 last edited by

              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);

              10720_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…

              1 Reply Last reply Reply Quote 0
              • Dutchman
                Dutchman Developer Most Active Administrators last edited by

                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

                1 Reply Last reply Reply Quote 0
                • Werde45
                  Werde45 last edited by

                  Aha…

                  finde ich leider nicht. Nur "falten" und das ist ja nicht untereinander....

                  lg

                  1 Reply Last reply Reply Quote 0
                  • Dutchman
                    Dutchman Developer Most Active Administrators last edited by

                    @Werde45:

                    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

                    1 Reply Last reply Reply Quote 0
                    • dslraser
                      dslraser Forum Testing Most Active last edited by

                      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>" />

                      1 Reply Last reply Reply Quote 0
                      • 4
                        4-Real last edited by

                        @Werde45:

                        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.

                        1 Reply Last reply Reply Quote 0
                        • Werde45
                          Werde45 last edited by

                          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...

                          1 Reply Last reply Reply Quote 0
                          • 4
                            4-Real last edited by

                            @Werde45:

                            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.

                            1 Reply Last reply Reply Quote 0
                            • G
                              Georgius last edited by

                              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"

                              1 Reply Last reply Reply Quote 0
                              • Werde45
                                Werde45 last edited by

                                Ok. Ich wollte nicht das Thema "klauen".

                                1 Reply Last reply Reply Quote 0
                                • G
                                  Georgius last edited by

                                  Kein Problem, hole es mir schon zurück. :lol:

                                  1 Reply Last reply Reply Quote 0
                                  • J
                                    Jan1 last edited by

                                    @Georgius:

                                    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" 😉

                                    1 Reply Last reply Reply Quote 0
                                    • Homer.J.
                                      Homer.J. last edited by

                                      @Georgius:

                                      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); }
                                      });
                                      
                                      
                                      1 Reply Last reply Reply Quote 0
                                      • smartboart
                                        smartboart last edited by

                                        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

                                        1 Reply Last reply Reply Quote 0
                                        • M
                                          mumurik last edited by

                                          > 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!

                                          1 Reply Last reply Reply Quote 0
                                          • M
                                            mikiline last edited by

                                            @Werde45:

                                            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

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            563
                                            Online

                                            31.8k
                                            Users

                                            79.9k
                                            Topics

                                            1.3m
                                            Posts

                                            13
                                            30
                                            2466
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo