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
    #146

    Habs jetzt mal eingebaut - ist aber ungetestet

    ! //----------------------------------------------------------------------------------------------------- // Funktion isTimeInAstroRange - // Ermittlung ob die aktuelle Zeit in der vorgegebenen Schaltzeit liegt (inkl Astro) //----------------------------------------------------------------------------------------------------- ! function isTimeInAstroRange (zeitvon, zeitbis, astrovon, astrobis) { var now = new Date(); var sunriseEnd = getAstroDate("sunriseEnd"); // Ende der Nacht nach Astro var sunsetStart = getAstroDate("sunsetStart"); // Ende des Tages nach Astro var lower = addTime(zeitvon); // switch on time im berechenbaren Format var upper = addTime(zeitbis); // switch off time im berechenbaren Format ! if (astrovon === true) { // Astrozeit gesetzt lower = sunsetStart; } if (astrobis === true) { // Astrozeit gesetzt upper = sunriseEnd; } if (upper < lower) { // Die von Zeit ist groesser als die bis Zeit if(astrovon) { // im Falle von Astrovon kann es sein, dass die bis Zeit in den nächsten Tag geht if( (zeitbis.slice(0, 1) ) === "0" ) { // Uewberpruefen ob die BisZeit mit 0 beginng - dann annehmen, dass das Morgen ist upper.setDate(upper.getDate() + 1); // 1 Tag (24 Stunden ) addieren da der bis Wert wahrscheinlich am nächsten Tag liegen muss if (debug) { log("Routine isTimeInAstroRange - bei Astrovon die zeitbis started Morgen","info");} } } if(astrobis) { upper.setDate(upper.getDate() + 1); if (debug) { log("Routine isTimeInAstroRange - AstroBis started Morgen","info");} } if (!astrovon && !astrobis) { // wenn keine Astrozeit gesetzt ist und die bis Zeit kleiner ist --> nächster Tag für die BisZeit upper.setDate(upper.getDate() + 1); // 1 Tag (24 Stunden ) addieren da der bis Wert wahrscheinlich am nächsten Tag liegen muss } ! } if (debug) { log("Routine isTimeInAstroRange lower " + lower,"info");} if (debug) { log("Routine isTimeInAstroRange upper " + upper,"info");} if (upper < lower ) { // dies trifft zu wenn die astrozeit die realzeit eingeholt hat z.B. astrovon = 20:00 und bisZeit 19:00 if (debug) { log("upper ist kleiner als lower - zurück Gruppe nicht im Zeitrange false","info");} return false; } if( now >= lower && now <= upper ) { if (debug) { log("Routine isTimeInAstroRange - aktuelle ist ist > als lower und kleiner als upper - Gruppe wird geschaltet (true)","info");} return true; } if (debug) {log("Routine isTimeInAstroRange - Zeit nicht im Zeitrange - keine Schaltung ","info");} return false; ! } !

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

      Hi,

      ich habe die Routinen zur Berechnung der Zeiten nun komplett umgestellt.

      Darüberhinaus auch die Eingaben für Astrozeiten in die Von und Bis Zeiten Integriert

      was jetzt möglich ist:

      var zeit1von = "SunRise"; //Aktivzeit von IDGruppe1

      var zeit1bis = "11:50:00"; //Aktivzeit bis IDGruppe1

      var zeit2von = "SunRise"; //Aktivzeit von IDGruppe2 // war vorher nicht möglich

      var zeit2bis = "SunSet"; //Aktivzeit bis IDGruppe2

      var zeit3von = "23:30:00"; //Aktivzeit von IDGruppe3 // läuft ohne Unterbrechung

      var zeit3bis = "23:30:00"; //Aktivzeit bis IDGruppe3

      var zeit4von = "SunSet"; //Aktivzeit von IDGruppe4

      var zeit4bis = "SunRise"; //Aktivzeit bis IDGruppe4

      var zeit5von = "SunSet"; //Aktivzeit von IDGruppe5

      var zeit5bis = "14:00:00"; //Aktivzeit bis IDGruppe5

      Dabei gibt es auch neue Einstellungen, die die Schwellenzeiten beeinflussen.

      Schwellenzeiten sind die Zeiten, die bei einer Einstellung bewirken, dass ggf die von und oder bis zeit auf den nächsten Tag gelegt werden

      Beispiel:

      Jetzt ist Sonntag Morgen 09:00 Uhr (Schwellenzeit ist die spätesten Stunde des Sonnenaufgangs = 08:00 Uhr)

      Wenn es einen Eintrag gibt der so aussieht

      von: SunRise

      bis 15:00

      Bei dieser Konstellation wird der nächste SunRise berechnet und der liegt am Montag

      und die BIS Zeit ebenfalls am Montag

      Damit liegen die Regeln fest.

      Ausserdem führe ich eine interne Tabelle, die die berechneten Von und Bis Zeiten enthält.

      Damit kann auch in den nächsten Tag geplant werden. Bei abgelaufenen Eintrag wird dann eine Neuberechnung vorgenommen.

      Das Konzept vorher hatte an diesen Stellen Lücken. Jetzt sollte zumindest konzeptionell alles laufen.

      Falls dann doch noch ein Fehler auftaucht kann der innerhalb des Konzeptes korrigiert werden.

      EDIT: Version 0.94 ist jetzt online.

      vG Looxer

      1 Antwort Letzte Antwort
      0
      • B Offline
        B Offline
        Beowolf
        schrieb am zuletzt editiert von
        #148

        Hallo zusammen,

        ich habe hier ein paar Sonoff Basics (mit Tasmota) an ein paar Lampen.

        Ist der Eintrag in dem Einstellungsberich so richtig?

        Es tut sich leider nichts.

        var     IDGruppe11 = "sonoff.0.Deckenleuchte Eingang.POWER";  // Licht Wohnzimmer
        

        Grüße

        Manfred

        Die Natur braucht nicht unseren Schutz, sie braucht unsere Abwesenheit.

        1 Antwort Letzte Antwort
        0
        • S Offline
          S Offline
          skorpil
          schrieb am zuletzt editiert von
          #149

          looxer01, ich habe das Script heute mal installiert und wollte nur mal sagen: großartig. Danke für die tolle Arbeit!

          1 Antwort Letzte Antwort
          0
          • smartboartS Offline
            smartboartS Offline
            smartboart
            schrieb am zuletzt editiert von
            #150

            Auch danke.. Weiß wieviel Arbeit da drin steckt… Probiere die neue Version auch mal aus... Die alte lief fuer meine Erfordernisse schon gut...

            Gesendet von meinem CLT-L09 mit Tapatalk

            1 Antwort Letzte Antwort
            0
            • smartboartS Offline
              smartboartS Offline
              smartboart
              schrieb am zuletzt editiert von
              #151

              Hatte auch mal sonoff drinnen… Glaube das . Power macht Probleme... Hab dann die homematic rein genommen... Kleines hilfsscript könnte helfen mit . STATE am Ende welches die sonoff triggert...vlt geht's aber auch so mittlerweile

              Gesendet von meinem CLT-L09 mit Tapatalk

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

                @Beowolf:

                st der Eintrag in dem Einstellungsberich so richtig?

                Es tut sich leider nichts. `
                @smartboart:

                Glaube das . Power macht Probleme. `

                Hi,

                Die Schaltung funktioniert entweder mit true oder false oder 0 und einen Werte zwischen 1 und 100 (Level Geräte)

                versuche mal in den objekten manuell mit true oder false zu schalten - funktioniert das ?

                vG looxer

                1 Antwort Letzte Antwort
                0
                • I Offline
                  I Offline
                  ib968142
                  schrieb am zuletzt editiert von
                  #153

                  Die neue Script-Version teste ich demnächst auch bei mir. Eine Frage / Wunsch hätte ich vielleicht noch.

                  Ich nutze aktuell das AstroDate "goldenHourEnd" (habe ich manuell im alten Script überschrieben).

                  Könnte man eventuell noch das Script oder die KeyWord-Liste für die AstroZeit-Angaben erweitern, so dass abhängig vom SunUp/SunDown Keyword-String eine andere getAstroDate(…) Funktion genutzt wird? Vielleicht könnte man auch einfach den eingetragenen Time-String in der getAstroDate-Funktionen verwenden, dann wäre man komplett flexibel.

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

                    @ib968142:

                    Könnte man eventuell noch das Script oder die KeyWord-Liste für die AstroZeit-Angaben erweitern, so dass abhängig vom SunUp/SunDown Keyword-String eine andere getAstroDate(…) Funktion genutzt wird? Vielleicht könnte man auch einfach den eingetragenen Time-String in der getAstroDate-Funktionen verwenden, dann wäre man komplett flexibel. `
                    Hi,

                    gute Idee.

                    Diese Liste kann dann als Doku verwendet werden.

                    ! sunrise": sunrise (top edge of the sun appears on the horizon) "sunriseEnd": sunrise ends (bottom edge of the sun touches the horizon) "goldenHourEnd": morning golden hour (soft light, best time for photography) ends "solarNoon": solar noon (sun is in the highest position) "goldenHour": evening golden hour starts "sunsetStart": sunset starts (bottom edge of the sun touches the horizon) "sunset": sunset (sun disappears below the horizon, evening civil twilight starts) "dusk": dusk (evening nautical twilight starts) "nauticalDusk": nautical dusk (evening astronomical twilight starts) "night": night starts (dark enough for astronomical observations) "nightEnd": night ends (morning astronomical twilight starts) "nauticalDawn": nautical dawn (morning nautical twilight starts) "dawn": dawn (morning nautical twilight ends, morning civil twilight starts) "nadir": nadir (darkest moment of the night, sun is in the lowest position) !
                    Sollte sich schnell umsetzen lassen.

                    Hättest du etwas Zeit um ein paar Kombinationen zu testen ?

                    vG Looxer

                    1 Antwort Letzte Antwort
                    0
                    • B Offline
                      B Offline
                      Beowolf
                      schrieb am zuletzt editiert von
                      #155

                      @looxer01:

                      @Beowolf:

                      st der Eintrag in dem Einstellungsberich so richtig?

                      Es tut sich leider nichts. `
                      @smartboart:

                      Glaube das . Power macht Probleme. `

                      Hi,

                      Die Schaltung funktioniert entweder mit true oder false oder 0 und einen Werte zwischen 1 und 100 (Level Geräte)

                      versuche mal in den objekten manuell mit true oder false zu schalten - funktioniert das ?

                      vG looxer `

                      Jepp, geht.

                      Ich kann entweder true oder false per Tastatur eingeben, oder das "Häckchen" rein oder raus. Es wird jedesmal geschaltet.

                      Grüße

                      Die Natur braucht nicht unseren Schutz, sie braucht unsere Abwesenheit.

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

                        @Beowolf:

                        Ich kann entweder true oder false per Tastatur eingeben, oder das "Häckchen" rein oder raus. Es wird jedesmal geschaltet. `
                        kannst du mal die Datenpunkt definition aus dem Datenpunkt "…POWER"" posten ?.

                        Die findest du rechts auf dem Änderungssymbol und dann der RAW Tab.

                        vG Looxer

                        1 Antwort Letzte Antwort
                        0
                        • I Offline
                          I Offline
                          ib968142
                          schrieb am zuletzt editiert von
                          #157

                          @looxer01:

                          @ib968142:

                          Könnte man eventuell noch das Script oder die KeyWord-Liste für die AstroZeit-Angaben erweitern, so dass abhängig vom SunUp/SunDown Keyword-String eine andere getAstroDate(…) Funktion genutzt wird? Vielleicht könnte man auch einfach den eingetragenen Time-String in der getAstroDate-Funktionen verwenden, dann wäre man komplett flexibel. `
                          Hi,

                          gute Idee.

                          Diese Liste kann dann als Doku verwendet werden.

                          ! sunrise": sunrise (top edge of the sun appears on the horizon) "sunriseEnd": sunrise ends (bottom edge of the sun touches the horizon) "goldenHourEnd": morning golden hour (soft light, best time for photography) ends "solarNoon": solar noon (sun is in the highest position) "goldenHour": evening golden hour starts "sunsetStart": sunset starts (bottom edge of the sun touches the horizon) "sunset": sunset (sun disappears below the horizon, evening civil twilight starts) "dusk": dusk (evening nautical twilight starts) "nauticalDusk": nautical dusk (evening astronomical twilight starts) "night": night starts (dark enough for astronomical observations) "nightEnd": night ends (morning astronomical twilight starts) "nauticalDawn": nautical dawn (morning nautical twilight starts) "dawn": dawn (morning nautical twilight ends, morning civil twilight starts) "nadir": nadir (darkest moment of the night, sun is in the lowest position) !
                          Sollte sich schnell umsetzen lassen.

                          Hättest du etwas Zeit um ein paar Kombinationen zu testen ? `

                          Teste ich dann gerne. Wie gesagt die "goldenHourEnd" nutze ich aktuell in einer älteren, manuell angepassten Version deines Scripts.

                          Danke und Grüße

                          1 Antwort Letzte Antwort
                          0
                          • B Offline
                            B Offline
                            Beowolf
                            schrieb am zuletzt editiert von
                            #158

                            @looxer01:

                            @Beowolf:

                            Ich kann entweder true oder false per Tastatur eingeben, oder das "Häckchen" rein oder raus. Es wird jedesmal geschaltet. `
                            kannst du mal die Datenpunkt definition aus dem Datenpunkt "…POWER"" posten ?.

                            Die findest du rechts auf dem Änderungssymbol und dann der RAW Tab.

                            vG Looxer `

                            Meinst du das?

                            {
                              "from": "system.adapter.sonoff.0",
                              "ts": 1548597255406,
                              "common": {
                                "name": "Deckenleuchte Eingang POWER",
                                "type": "boolean",
                                "role": "switch",
                                "read": true,
                                "write": true,
                                "storeMap": true
                              },
                              "native": {},
                              "acl": {
                                "object": 1636,
                                "owner": "system.user.admin",
                                "ownerGroup": "system.group.administrator",
                                "state": 1636
                              },
                              "_id": "sonoff.0.Deckenleuchte Eingang.POWER",
                              "type": "state"
                            }
                            

                            Die Natur braucht nicht unseren Schutz, sie braucht unsere Abwesenheit.

                            1 Antwort Letzte Antwort
                            0
                            • E Offline
                              E Offline
                              etproject
                              schrieb am zuletzt editiert von
                              #159

                              Hallo,

                              ich hatte irgendwo mal gelesen das der Objektname kein Leerzeichen enthalten darf.

                              Schöne Grüße

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

                                @etproject:

                                ch hatte irgendwo mal gelesen das der Objektname kein Leerzeichen enthalten darf. `
                                Kann das bei Sonoff beeinflusst werden ? Also kannst du den Namen ändern im Adapter z.B. oder an der Quelle (Sonoff)

                                vG Looxer

                                1 Antwort Letzte Antwort
                                0
                                • B Offline
                                  B Offline
                                  Beowolf
                                  schrieb am zuletzt editiert von
                                  #161

                                  Ich habe jetzt mal einen neuen Sonoff Basic genommen.

                                  In der Tasmota Einstellung nennt sich das Ding nun "Testschalter"

                                  ` > {

                                  "from": "system.adapter.sonoff.0",

                                  "ts": 1548858428468,

                                  "common": {

                                  "name": "Testschalter POWER",

                                  "type": "boolean",

                                  "role": "switch",

                                  "read": true,

                                  "write": true,

                                  "storeMap": true

                                  },

                                  "native": {},

                                  "acl": {

                                  "object": 1636,

                                  "owner": "system.user.admin",

                                  "ownerGroup": "system.group.administrator",

                                  "state": 1636

                                  },

                                  "_id": "sonoff.0.Testschalter.POWER",

                                  "type": "state"

                                  } `

                                  So event. besser?

                                  ` > {

                                  "_id": "sonoff.0.Testschalter.POWER",

                                  "common": {

                                  "type": "boolean",

                                  "role": "switch",

                                  "read": true,

                                  "write": true,

                                  "storeMap": true,

                                  "name": "Testschalter-POWER"

                                  },

                                  "native": {},

                                  "type": "state",

                                  "from": "system.adapter.sonoff.0",

                                  "ts": 1548860090482,

                                  "acl": {

                                  "object": 1636,

                                  "state": 1636

                                  }

                                  } `

                                  Ich habe jetzt unter ioBroker in der Spalte "NAME" aus "Testschalter POWER" dieses mit Bindestrich gemacht "Testschalter-POWER".

                                  Die Natur braucht nicht unseren Schutz, sie braucht unsere Abwesenheit.

                                  1 Antwort Letzte Antwort
                                  0
                                  • E Offline
                                    E Offline
                                    etproject
                                    schrieb am zuletzt editiert von
                                    #162

                                    Hallo,

                                    der Name des Modules wird in Tasmota eingegeben.

                                    1 Antwort Letzte Antwort
                                    0
                                    • B Offline
                                      B Offline
                                      Beowolf
                                      schrieb am zuletzt editiert von
                                      #163

                                      Habe ich jetzt bei Tasmota mit Bindestrich gemacht.

                                      Mehr als das ist nicht zu machen.

                                      {
                                        "from": "system.adapter.sonoff.0",
                                        "ts": 1548865691067,
                                        "common": {
                                          "name": "Deckenleuchte-Eingang POWER",
                                          "type": "boolean",
                                          "role": "switch",
                                          "read": true,
                                          "write": true,
                                          "storeMap": true,
                                          "smartName": {
                                            "de": "Eingangsbeleuchtung"
                                          }
                                        },
                                        "native": {},
                                        "acl": {
                                          "object": 1636,
                                          "owner": "system.user.admin",
                                          "ownerGroup": "system.group.administrator",
                                          "state": 1636
                                        },
                                        "_id": "sonoff.0.Deckenleuchte-Eingang.POWER",
                                        "type": "state"
                                      }
                                      

                                      Grüße

                                      Die Natur braucht nicht unseren Schutz, sie braucht unsere Abwesenheit.

                                      1 Antwort Letzte Antwort
                                      0
                                      • E Offline
                                        E Offline
                                        etproject
                                        schrieb am zuletzt editiert von
                                        #164

                                        Hallo,

                                        Dann müstes du "sonoff.0.Deckenleuchte-Eingang.POWER" im Script eingeben.

                                        1 Antwort Letzte Antwort
                                        0
                                        • B Offline
                                          B Offline
                                          Beowolf
                                          schrieb am zuletzt editiert von
                                          #165

                                          Habe ich - tut nich. :(

                                          Nur zur Info. Ich habe hier noch einen HM-Steckdosenschalter. Mit dem funktioniert es zu 100%.

                                          Die Natur braucht nicht unseren Schutz, sie braucht unsere Abwesenheit.

                                          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

                                          530

                                          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