Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. *GELÖST* Probleme mit An-&Abwesenheit mit zwei Handy-Erkennungen

    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

    *GELÖST* Probleme mit An-&Abwesenheit mit zwei Handy-Erkennungen

    This topic has been deleted. Only users with topic management privileges can see it.
    • C
      Cool-runner1990 last edited by

      Hallo zusammen,

      ich habe ein (wahrscheinlich) kleines Problemchen, von welchem ich hoffe, dass ihr mir weiter helfen könnt.

      Ich möchte einstellen, dass, wenn weder meine Freundin noch ich zu Hause im Wlan angemeldet sind, alle Lichter ausgehen.

      Dieses Script funktioniert soweit auch.
      8398_abwesenheit.png

      Dann möchte ich einstellen, dass, sobald einer von uns nach Hause kommt, sprich sein Smartphone sich mit dem Wlan verbindet, ein paar Lichter angehen(Alexa Routine mit Begrüssung)

      Auch das funktioniert soweit eigentlich ganz gut.
      8398_anwesenheit.png

      Jetzt zu meinem Problem:

      Wenn meine Freundin das Haus verlässt, ich aber auf der Couch sitze, startet die Alexa Routine "es wird dunkel" und die definierten Lichter werden eingeschaltet.

      Das heisst es erkennt in dem Moment mein Handy als "heimkommend".

      Was kann, bzw. muss ich hier ändern?

      Vielen Dank und LG

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

        Das ist recht simpel, Du brauchst ne Variable "Anwesend" die Du setzt und diese dann als Trigger verwendest. Im Moment triggerst Du mit beiden Handys und Blockly ist es egal welches gerade da ist oder geht, sobald eins den Status ändert, läuft Dein Script los und das funktioniert ja schon mal 😄

        OB Du das mit einer internen Variable löst oder nen DP dazu anlegst ist auch egal. Der DP hat den Vorteil, dass Du es direkt siehst was gesetzt ist.

        Ich würde die Falls Bedingung auch nicht vor den Trigger stellen sondern in den Trigger, sollte zwar beides funktionieren, aber anderes rum ist es eben eleganter.

        5076_2018_08_19_16_49_00_window.png

        1 Reply Last reply Reply Quote 0
        • C
          Cool-runner1990 last edited by

          Ok danke, das werde ich sofort mal probieren.

          Blöde frage, was bedeutet DP in dem Fall? 🙂

          Und wie weiß er jetzt dass er Lichter einschalten, bzw alle ausschalten soll?

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

            DP = Datenpunkt.

            Du erstellst dir einfach irgendwo den Datenpunkt als switch und der wird je nachdem ob beide Handys zuhause (wahr) oder beide Handys außer Haus (unwahr) sind ausgewertet.

            Gesendet von meinem SM-G960F mit Tapatalk

            1 Reply Last reply Reply Quote 0
            • C
              Cool-runner1990 last edited by

              Okay, tut mir wirklich leid, aber wie mache ich das? Bin noch am Anfang 😞

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

                Du gehst in deinen ioBroker auf Objekte,

                dort habe ich mir z.B. einen Ordner angelegt "#Variablen.0"

                Dort kommen sämtliche manuel erstellte Variablen rein.

                So auch dein "Anwesenheit"

                Dieser wird durch das Blockly auf wahr und false gesetzt, je nachdem ob eure Handys zuhause sind oder nicht.

                7882_dp.jpg

                1 Reply Last reply Reply Quote 0
                • C
                  Cool-runner1990 last edited by

                  Okay, aber woher weiss dieser Datenpunkt, was er steuern soll?

                  Muss ich dafür ein eigenes Skript schreiben?

                  und funktioniert dein Script so? muss bei dem "falls" nicht noch irgendein Wert stehen?

                  Da steht ja jetzt nur, falls dein Handy oder das der Freundin, aber kein "wahr" oder "falsch" oder so

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

                    Also erst einmal machst du ein Script der dir den Datenpunkt setzt.

                    Siehe Screenshot

                    7882_dp.jpg

                    Diesen steuerst du durch folgendes Script:

                    7882_script.jpg

                     <xml xmlns="http://www.w3.org/1999/xhtml"><block type="on_ext" id="NUagg%u4Uu1{rA8C[o%z" x="-112" y="-212"><mutation items="2"></mutation>
                        <field name="CONDITION">any</field>
                    
                        <value name="OID0"><shadow type="field_oid" id="}0*NU#x2*`;WIrjSY6Oj"><field name="oid">ping.0.ioBroker-RasPi.192_168_178_2</field></shadow></value> 
                        <value name="OID1"><shadow type="field_oid" id="D;PquOeFI2SG/KKOh5Bf"><field name="oid">ping.0.ioBroker-RasPi.192_168_178_80</field></shadow></value> 
                        <statement name="STATEMENT"><block type="controls_if" id=",3[C%N-Ir!U6GDaBcl=S"><mutation else="1"></mutation>
                            <value name="IF0"><block type="logic_operation" id="F8(y|}Whh}d-iPr~)+|O"><field name="OP">OR</field>
                                <value name="A"><block type="get_value" id="g8ikX7=Zh^/:nIw^o4L-"><field name="ATTR">val</field>
                                    <field name="OID">ping.0.ioBroker-RasPi.192_168_178_2</field></block></value> 
                                <value name="B"><block type="get_value" id="@I_T[bv*=[Mhe4P)HU.F"><field name="ATTR">val</field>
                                    <field name="OID">ping.0.ioBroker-RasPi.192_168_178_80</field></block></value></block></value> 
                            <statement name="DO0"><block type="control" id=")M^jLcZ!hCpj,X={-`nV"><mutation delay_input="false"></mutation>
                                <field name="OID">#Variablen.0.Anwesenheit</field>
                                <field name="WITH_DELAY">FALSE</field>
                                <value name="VALUE"><block type="logic_boolean" id="lQ/IXnXc:CKFHri7;uy^"><field name="BOOL">TRUE</field></block></value></block></statement> 
                            <statement name="ELSE"><block type="control" id="2/qvb8EtL0vYu!C9S%cC"><mutation delay_input="false"></mutation>
                                <field name="OID">#Variablen.0.Anwesenheit</field>
                                <field name="WITH_DELAY">FALSE</field>
                                <value name="VALUE"><block type="logic_boolean" id="0fCFabP7XJrIntp6P#K2"><field name="BOOL">FALSE</field></block></value></block></statement></block></statement></block></xml> 
                    

                    Mit diesem Datenpunkt arbeitest du dann in deinem Script weiter, welches du als ersten Beitrag gepostet hast.

                    Anstelle der Handys von dir und deiner Freundin nimmst du einfach die Variable.

                    Also z.B. so:

                    7882_script2.jpg

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

                      Nachtrag:

                      du kannst natürlich auch alles in ein Script nehmen.

                      Habe ich gerade getestet und funktioniert:

                      7882_dp.jpg

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

                        Das "wahr" kannst bei der Falls Bedingung weg lassen, da er eh auf wahr prüft. Nur wenn eben auf was anderes geprüft werden soll, dann muss das auch rein.

                        Mein Script im Bild ist nur die Auswertung ob jemand zu Hause ist und setzt den DP "Anwesenheit". Das hat mit dem Steuern der Lichter erst mal nichts zu tun. Nur sollst Du eben den DP "Anwesenheit" auch bei Dir erstellen und den als Trigger für Dein Blockly verwenden. Dann läuft Dein Blockly schon so wie es soll.

                        Mein Blockly kommt nur noch dazu 😉

                        Wie ich auch schon geschrieben habe, kann man den DP auch durch ne Variable ersetzten oder so wie MagicSven geschrieben hat manuell anlegen. Das ist Dir überlassen und für die Funktion völlig wurscht.

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

                          Ach so - kleiner Nachtrag noch:

                          Bei Android Geräten funktioniert eine Pingabfrage nicht, wenn diese im Tiefschlaf-Modus sind.

                          Sprich wenn der Bildschirm aus aus ist, geht das Gerät nach wenigen Sekunden in diesen Modus.

                          Bei IOS Geräten scheint es noch zu funktionieren.

                          Hier wird gerade über dieses Thema debattiert.

                          viewtopic.php?t=3185

                          1 Reply Last reply Reply Quote 0
                          • C
                            Cool-runner1990 last edited by

                            okay, super, vielen vielen Dank für eure Hilfe.

                            ich kann es jetzt gerade leider nicht testen, aber mit der Variante würde ich dann das Problem umgehen, dass er einfach die Lichter einschaltet, weil meine Freundin geht, und er mein Handy als "kommt" erkennt? 🙂

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

                              @MagicSven:

                              Ach so - kleiner Nachtrag noch:

                              Bei Android Geräten funktioniert eine Pingabfrage nicht, wenn diese im Tiefschlaf-Modus sind.

                              Sprich wenn der Bildschirm aus aus ist, geht das Gerät nach wenigen Sekunden in diesen Modus.

                              Bei IOS Geräten scheint es noch zu funktionieren.

                              Hier wird gerade über dieses Thema debattiert.

                              viewtopic.php?t=3185 `

                              Das ist nicht ganz richtig, kommt auf den Adapter an und mit dem TR064 läuft das. Der Ping Adapter hat exakt das von Dir beschrieben Problem.

                              Ich habe nur Android Geräte (wer hat denn auch schon die Apfel Dinger?), deshalb kenne ich das Problemchen 😉

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

                                @Cool-runner1990:

                                okay, super, vielen vielen Dank für eure Hilfe.

                                ich kann es jetzt gerade leider nicht testen, aber mit der Variante würde ich dann das Problem umgehen, dass er einfach die Lichter einschaltet, weil meine Freundin geht, und er mein Handy als "kommt" erkennt? 🙂 `

                                Das ist keine Variante, das ist die Lösung Deines Problem (Fehler Deines Blockly) :lol:

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

                                  @Jan1:

                                  @MagicSven:

                                  Ach so - kleiner Nachtrag noch:

                                  Bei Android Geräten funktioniert eine Pingabfrage nicht, wenn diese im Tiefschlaf-Modus sind.

                                  Sprich wenn der Bildschirm aus aus ist, geht das Gerät nach wenigen Sekunden in diesen Modus.

                                  Bei IOS Geräten scheint es noch zu funktionieren.

                                  Hier wird gerade über dieses Thema debattiert.

                                  viewtopic.php?t=3185 `

                                  Das ist nicht ganz richtig, kommt auf den Adapter an und mit dem TR064 läuft das. Der Ping Adapter hat exakt das von Dir beschrieben Problem.

                                  Ich habe nur Android Geräte (wer hat denn auch schon die Apfel Dinger?), deshalb kenne ich das Problemchen 😉 ` Jan, dann muss ich den Adapter mal testen, danke für den Tipp

                                  Gesendet von meinem SM-G960F mit Tapatalk

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

                                    Da hatte ich auch lange geflucht. Das alte S4 von der Frau läuft auch mit dem Ping Adapter, nur mein S6 eben nicht und was ich da an den Einstellungen gesucht hatte. Den TR064 Adapter hatte ich eh am Laufen und irgendwann ist mir aufgefallen, dass ich da auch immer schön "true" bin, wenn ich im WLAN und somit zu Hause bin. Liegt wohl daran, dass man hier MDNS verwenden kann und das eben immer funktioniert.

                                    1 Reply Last reply Reply Quote 0
                                    • C
                                      Cool-runner1990 last edited by

                                      Es funktioniert, danke an alle 🙂

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

                                      Support us

                                      ioBroker
                                      Community Adapters
                                      Donate

                                      556
                                      Online

                                      31.9k
                                      Users

                                      80.2k
                                      Topics

                                      1.3m
                                      Posts

                                      3
                                      17
                                      2740
                                      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