Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. [Vorlage] Anwesenheitssimulation - Script

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.2k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.9k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.2k

[Vorlage] Anwesenheitssimulation - Script

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
271 Beiträge 40 Kommentatoren 64.8k Aufrufe 36 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • L Offline
    L Offline
    looxer01
    schrieb am zuletzt editiert von
    #33

    Danke Pix fuer dein Feedback- - das freut mich wirklich….
    @pix:

    dLeider habe ich den WAF der AWS nicht berücksichtigt. Pix `

    na ja, wenn es dann mal zum worst case kommt waere das sicher anders.

    Ich kann ja mal eine Einbruchssimulation schreiben :lol:

    @pix:

    Ist es richtig, dass ich als Anwender, die Zahl der Geräte ind er Gruppe zählen muss und zB in Grp2ZufAnz = 2 eintragen muss? `
    nein, so ist es nicht gemeint aber vielleicht der Normalfall. Man kann durchaus GrpZufAnz hoeher setzen als die Anzahl der Gruppenmitglieder.

    Dann wird es weniger Einschaltaktionen geben was so gewuenscht sein kann. Das Zufallsprinzip entscheidet. Je höher die Zahl desto weniger wird geschaltet.

    Auf Arrays habe ich bewusst verzichtet, da der Code dann nicht leichter lesbar wird und auch sonst keine Vorteile bringen wuerde. Auch die Einstellungen wuerden dann noch etwas komplizierter werden.

    vG Looxer

    1 Antwort Letzte Antwort
    0
    • S Offline
      S Offline
      starfish
      schrieb am zuletzt editiert von
      #34

      hallo Ralf, Du erinnerst dich sicher an meine Frage mit der Synchronizität. Ich hab jetzt rausgefunden, weshalb (zumindest bei mir) dieser Eindruck entsteht:

      ! iobroker log
      ! hm-rpc-0 2016-01-04 05:19:01 info setValue ["IEQ0074994:1","STATE",false] BOOL
      ! hm-rpc-0 2016-01-04 05:05:59 info setValue ["IEQ0074994:1","STATE",true] BOOL
      ! hm-rpc-0 2016-01-04 05:00:00 info setValue ["IEQ0074994:1","STATE",true] BOOL
      ! javascript-0 2016-01-04 05:00:00 info script.js.aws: EVENT IDGruppe11; hm-rpc.0.IEQ0074994.1.STATE; undefined; 359; 1141; 05:05:59; 05:25:00;
      ! AWSLog:
      ! 04.01.2016 ;05:00:00 ;IDGruppe11;hm-rpc.0.IEQ0074994.1.STATE;undefined;359;1141;05:05:59;05:25:00;
      es werden reproduzierbar 2 Einschaltbefehle abgesetzt: einer sofort, der 2. mit der Zufallsverzögerung. Bei der Ausschaltzeit wird die Zufallsverzögerung nicht hinzugezählt.

      1 Antwort Letzte Antwort
      0
      • L Offline
        L Offline
        looxer01
        schrieb am zuletzt editiert von
        #35

        @starfish:

        es werden reproduzierbar 2 Einschaltbefehle abgesetzt: einer sofort, der 2. mit der Zufallsverzögerung. Bei der Ausschaltzeit wird die Zufallsverzögerung nicht hinzugezählt. `

        ich habe den Fehler gefunden und jetzt auch die Einschaltverzoegerung zur geplanten Ausschaltzeit hinzugefuert.

        Vielen Dank fuer das Feedback, echt super.

        Version 0.44

        Koenntest du beides mit deinen Einstellungen nochmals testen und mir Bescheid geben ?

        EDIT 09:33: es gibt noch ein Problem bei der Addition der Einschaltverzoegerung zur geplanten Ausschaltzeit.

        Ich lade gleich nochmal eine neue Version hoch

        EDIT 09:41: getestet und jetzt funktioniert es - Version 0.45

        vG Looxer

        1 Antwort Letzte Antwort
        0
        • S Offline
          S Offline
          starfish
          schrieb am zuletzt editiert von
          #36

          hab erst v. 0.44 - die scheint bez. Einschaltdelay richtig zu laufen, ausser vielleicht die Ausschaltzeit ist 1-2 Min zu früh - genaueres kann ich erst heute Nachmittag sagen bzw. die v. 0.45 laden.

          1 Antwort Letzte Antwort
          0
          • L Offline
            L Offline
            looxer01
            schrieb am zuletzt editiert von
            #37

            warte noch auf eine neue Version. 0.46 lade ich ich in den nächsten 1 - 2 Stunden hoch
            5278_neues_textdokument.txt

            1 Antwort Letzte Antwort
            0
            • L Offline
              L Offline
              looxer01
              schrieb am zuletzt editiert von
              #38

              Hi,

              so, habe jetzt die Version 0.50 geladen.

              Diese Version sollte bezueglich ein-ausschaltverzoegerung in sync laufen mit den realen Schaltungen.

              Es kann mal eine Sekunde Differenz geben -

              Ausserdem funktioniert jetzt der Check ob ein Geraet exisitiert. Das hat bisher zu einer uncaught exception gefuehrt, was

              dann wiederum den javascript adapter veranlasst hat neu zu starten. Passiert jetzt nicht mehr z.B. wenn eine ID falsch eingegeben wurde.

              Dafuer kommt jetzt ein interner Log-Eintrag hoch. Das Programm läuft weiter

              Daher auch der Versionssprung.

              vG Looxer

              1 Antwort Letzte Antwort
              0
              • S Offline
                S Offline
                starfish
                schrieb am zuletzt editiert von
                #39

                jetzt habe ich 2 Zyklen durch, die Zufalls- Ein- und Auszeiten scheinen jetzt zu stimmen. Super - Danke. Jetzt müsste Flot nur auch noch STATE Signale darstellen können. :x

                1 Antwort Letzte Antwort
                0
                • L Offline
                  L Offline
                  looxer01
                  schrieb am zuletzt editiert von
                  #40

                  Hi,

                  nun ist Version 0.60 verfuegbar.

                  • fix Astrozeit

                  • Neue Funktion Astro1zeit bis - damit kann bis zur Morgendaemmerung geschaltet werden - analog der Astrozeit von

                  • Das Ausschalten aller teilnehmenden Geraete bei Deaktivierung der AWS ist jetzt optional und laesst sich in den Einstellungen ein-ausschalten

                  • Stabilitaetsverbesserungen

                  Damit sind zunaechst alle geplanten Funktionen implementiert (und etwas mehr).

                  Waere schoen, wenn noch etwas getestet wuerde. Diese Woche kann ich noch schnell reagieren auf Anfragen:)

                  vG Looxer

                  1 Antwort Letzte Antwort
                  0
                  • L Offline
                    L Offline
                    looxer01
                    schrieb am zuletzt editiert von
                    #41

                    Hi,

                    Version 0.61

                    • Bei der zufaelligen Bestimmung der Geraete wurde immer von cer Gruppe 1 Definition GrpZufAnz ausgegangen. Ist jetzt gefixt

                    • Bei der Ausschaltung aller Teilnehmer wird jetzt zwischen zwei Ausschaltvorgängen 300 Millisekunden Zeit gelassen (Vermeidung von Funkchaos)

                    • Codeoptimierungen

                    vG Looxer

                    1 Antwort Letzte Antwort
                    0
                    • S Offline
                      S Offline
                      starfish
                      schrieb am zuletzt editiert von
                      #42

                      vonAstro und bisAstro funktioniert hier jetzt. Nun gehts ans Optimieren. Ich denke, dass das Skript flexibel genug ist, um die meisten Wünsche zu befriedigen. Vielen Dank an looxer01.

                      Gruss

                      starfish

                      1 Antwort Letzte Antwort
                      0
                      • L Offline
                        L Offline
                        looxer01
                        schrieb am zuletzt editiert von
                        #43

                        Hi,

                        Version 0.65 ist jetzt online.

                        • Die Reaktion auf bereits eingeschaltete Geraete ist jetzt durch eine Variable einstellbar gemacht - entweder keine Aktion oder uebesteuerung -

                        Allerdings ist diese Variable noch nicht in den Einstellungen zu finden, sondern im Bereich darunter. u.U kann diese Einstellung auch ungewünschte

                        Nebeneffekte haben - ist also zu testen

                        • weitere Codeoptimierungen

                        • Das AWS-Aktiv Flag ist jetzt ebenfalls variabel gemacht. Damit kann leichter eine andere Variable verwendet werden, z.B eine Variable aus der CCU

                        Insgesamt ist das Script jetzt stabil. Weitere Fehler habe ich nicht gefunden.

                        vG Looxer

                        1 Antwort Letzte Antwort
                        0
                        • S Offline
                          S Offline
                          starfish
                          schrieb am zuletzt editiert von
                          #44

                          Sooo - ein Punkt weniger auf der Todo - Liste. Es ging um den Ersatz des CUxD Zufalls-timers bzw. meiner darauf basierenden Anwesenheits-Simulation im CCU-Nachfolger (iobroker und homegear mit CC1101 Chip von Pollin).

                          Mein Ansatz war eine rein Astro-zeit gesteuerte Zufallsschaltung von Leuchten die ganze Nacht über. Die looxer-AWS schien mir aufgrund der vielfältigen Konfigurationsmöglichkeiten dafür gut geeignet. Bis jetzt habe ich auf dem Testrechner nur 1 Aktor zur Verfügung, aber das Resultat lässt sich sehen.
                          291_aws1d.png
                          meine aktuellen Einstellungen

                          var vonAstro1 = true ; // die zeit1von wird ersetzt durch die Astrozeit - setting ist optional true = Verwendung der Astrozeit - IDGruppe1

                          var bisAstro1 = true ; // die zeit1von wird ersetzt durch die Astrozeit - setting ist optional true = Verwendung der Astrozeit - IDGruppe1

                          var ein1von = 10; // Minuten IDGruppe1 von

                          var ein1bis = 45; // Minuten IDGruppe1 bis

                          var StartDelay1 = 45; // Maximale Startverzoegerung Gruppe1

                          var cron1 = 59; // checks alle x Minuten für IDGruppe1

                          var IDGruppe11 = "hm-rpc.0.IEQ0074994.1.STATE"; // Licht Wohnzimmer Esstisch Deckenlampe

                          Je nach Einstellung kann es zu Überschneidungen kommen, d.h. Leuchten können noch "on" sein, wenn die nächste Einschaltzeit kommt. Das scheint hier aber nicht zu stören.

                          Sicher lässt sich bei den Einstellungen noch einiges optimieren. Das fällt dann eher in die Kategorie "Abschreckungstaktik". z.B. feste Schaltzeiten abends und Zufallszeiten in der 2. Nachthälfte, längere "aus"-Zeiten usw. aber das ist ja alles möglich mit diesem Skript.

                          1 Antwort Letzte Antwort
                          0
                          • L Offline
                            L Offline
                            looxer01
                            schrieb am zuletzt editiert von
                            #45

                            Mit der Javascript version 1.1.2 wurde das Loeschen von Ein/Auschaltverzoegerungen fuer SetStateDelayed gefixt.

                            Zusätzlich wurde die Möglichkeit geschaffen, die schedules mit clearStateDelayed zu loeschen.

                            Beides ist jetzt eingebaut und sollte funktionieren.

                            Version 0.70 ist hochgeladen

                            vG Looxer

                            1 Antwort Letzte Antwort
                            0
                            • L Offline
                              L Offline
                              looxer01
                              schrieb am zuletzt editiert von
                              #46

                              Hi,

                              ich habe festgestellt, dass in bestimmten Situationen die Astrofunktion nicht richtig funktionierte.

                              Das ist jetzt korrigiert. Das Script ist im ersten Post korrigiert.

                              vG Looxer

                              1 Antwort Letzte Antwort
                              0
                              • M Offline
                                M Offline
                                mathoo
                                schrieb am zuletzt editiert von
                                #47

                                Hallo,

                                ich habe das Script schon seit einiger Zeit am laufen.

                                Leider bekomme ich es nicht wieder zum rennen.

                                Es wird noch nicht einmal eine Logdatei erzeugt.

                                Geändert hat sich nur die CCU, ich bin auf eine CCU2 umgestiegen.

                                Kann mir jemand einen Tipp geben, wie ich das tolle Script wieder aktivieren kann.

                                1 Antwort Letzte Antwort
                                0
                                • L Offline
                                  L Offline
                                  looxer01
                                  schrieb am zuletzt editiert von
                                  #48

                                  Hallo Mathoo,

                                  bist du denn sicher, dass das script überhaupt anläuft ?

                                  Könntest du ja mal testen. Einfach folgende Zeile (z.B. direkt hinter den Einstellungen) einfügen:

                                  log("Script läuft an,"info");

                                  Die Lauffähigkeit des Scripts ist unabhängig von der CCU.

                                  Wenn keine Logausgabe erfolgt, dann hast du ggf mit dem scriptadapter ein Problem.

                                  vG Looxer

                                  1 Antwort Letzte Antwort
                                  0
                                  • M Offline
                                    M Offline
                                    michihorn
                                    schrieb am zuletzt editiert von
                                    #49

                                    Hallo,

                                    vielleicht habe ich ja was überlesen.

                                    Die Szenarien laufen auch wenn ein Familienmitglied im Haus ist, oder?

                                    Wie wäre es wenn zu AW Kontrolle die Handys angepingt werden und das ganze erst läuft wenn wirklich keiner im Haus ist.

                                    Gruß Micha

                                    1 Antwort Letzte Antwort
                                    0
                                    • L Offline
                                      L Offline
                                      looxer01
                                      schrieb am zuletzt editiert von
                                      #50

                                      @michihorn:

                                      Hallo,

                                      vielleicht habe ich ja was überlesen.

                                      Die Szenarien laufen auch wenn ein Familienmitglied im Haus ist, oder?

                                      Wie wäre es wenn zu AW Kontrolle die Handys angepingt werden und das ganze erst läuft wenn wirklich keiner im Haus ist.

                                      Gruß Micha `
                                      Hi micha

                                      Ich habe eine anwesenheitsfunktion bei mir aktiv und mit der aws verknüpft. Das geht einfach durch setzen des aws-aktiv flags.

                                      Bin zur Zeit unterwegs und kann gerne mehr Details am Freitag geben.

                                      VG looxer

                                      Gesendet von meinem SM-G935F mit Tapatalk

                                      1 Antwort Letzte Antwort
                                      0
                                      • L Offline
                                        L Offline
                                        looxer01
                                        schrieb am zuletzt editiert von
                                        #51

                                        Hi,
                                        @michihorn:

                                        Wie wäre es wenn zu AW Kontrolle die Handys angepingt werden und das ganze erst läuft wenn wirklich keiner im Haus ist.

                                        Gruß Micha

                                        Hi micha

                                        Ich habe eine Anwesenheitsfunktion bei mir aktiv und mit der AWS verknüpft. Das geht einfach durch setzen des aws-aktiv flags.

                                        Bin zur Zeit unterwegs und kann gerne mehr Details am Freitag geben.

                                        VG looxer `

                                        Wenn die AWS zum ersten mal läuft, dann wird folgender State angelegt:

                                        javascript.0.Anwesenheitssteuerung.AWSAktiv

                                        Wenn AWSAktiv true ist, dann läuft die AWS. Bei false wird sie ausgeschaltet.

                                        Eine Anwesenheitsermittlung (davon gibt es ja einige, z.B. das Fritzbox basierte von Jens_maus oder das pinging von phones oder Geofencing basierte etc) erzeugt ja ebenfalls states mit entsprechenden flags.

                                        Ich selber nutze nun das CCU Programm von Jens_Maus. Die Systemvariablen werden dort in der CCU gesetzt und an ioBroker übertragen.

                                        Beispiel:

                                        var IDAnwesenheit = "hm-rega.0.950"; // ID Anwesenheitsflag

                                        on({id: IDAnwesenheit, val: false}, function(obj) ´{ // Event: niemand da

                                        setState(IDAWSAktiv,true); // Schalte AWS ein

                                        });

                                        Wenn also Abwesenheit festgestellt wurde, dann setzte ich mit einem kleinen Programm das Flag "AWSAktiv" auf "true". Damit beginnt die Simulation.

                                        Da es so viele verschiedene Ansatzpunkte für die Anwesenheitsermittlung gibt, ist das nicht in der Simulation integriert.

                                        Durch das Flag laesst sich aber einfach eine Integration von Anwesenheitsermittlung und Anwesenheitssimulation realisieren:

                                        vG Looxer

                                        1 Antwort Letzte Antwort
                                        0
                                        • L Offline
                                          L Offline
                                          looxer01
                                          schrieb am zuletzt editiert von
                                          #52

                                          @michihorn:

                                          Hallo,

                                          vielleicht habe ich ja was überlesen.

                                          Die Szenarien laufen auch wenn ein Familienmitglied im Haus ist, oder?

                                          Wie wäre es wenn zu AW Kontrolle die Handys angepingt werden und das ganze erst läuft wenn wirklich keiner im Haus ist.

                                          Gruß Micha `

                                          Hi Micha,

                                          zumindest für die Fritzbox ist es jetzt da. Der TR64 Adapter liefert die Anwesenheiten.

                                          Das Programm: http://forum.iobroker.net/viewtopic.php?f=21&t=4905

                                          wertet diese aus. Die AWS kann dann automatisch ein- oder ausgeschaltet werden

                                          vG Looxer

                                          1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          388

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe