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

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. [gelöst] Beste Vorgehensweise???

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    16
    1
    1.8k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    884

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.1k

[gelöst] Beste Vorgehensweise???

Geplant Angeheftet Gesperrt Verschoben JavaScript
15 Beiträge 8 Kommentatoren 996 Aufrufe 7 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.
  • S Offline
    S Offline
    skorpil
    schrieb am zuletzt editiert von skorpil
    #1

    Bei mir laufen inzwischen diverse JavaScripte, die aber, wenn ich im Urlaub oder "abwesend" bin, nicht notwendigerweise laufen müssen.

    Ich habe mir überlegt, dass es prinzipiell mehrere Wege gibt, damit umzugehen:

    • man erstellt eine Variable "Urlaub" und läßt in jedem Script prüfen, ob sie "true" ist.
    • man erstellt ein "Urlaubsscript", das ebenfalls auf "Urlaub" reagiert, und schaltet für die Urlaubsdauer nicht benötigte Scripte mit "stopScript(scriptId)" und startScript(scriptId) ein und aus

    Ich würde von den Fachleuten gerne wissen, welche Vorgehensweise sinnvoll ist und empfohlen wird. Oder gibt es weitere Möglichkeiten, sich dieses Themas zu nähern?

    Dank Euch für Eure Hilfe schon mal vorab.

    HomoranH AsgothianA CodierknechtC amg_666A liv-in-skyL 5 Antworten Letzte Antwort
    0
    • S skorpil

      Bei mir laufen inzwischen diverse JavaScripte, die aber, wenn ich im Urlaub oder "abwesend" bin, nicht notwendigerweise laufen müssen.

      Ich habe mir überlegt, dass es prinzipiell mehrere Wege gibt, damit umzugehen:

      • man erstellt eine Variable "Urlaub" und läßt in jedem Script prüfen, ob sie "true" ist.
      • man erstellt ein "Urlaubsscript", das ebenfalls auf "Urlaub" reagiert, und schaltet für die Urlaubsdauer nicht benötigte Scripte mit "stopScript(scriptId)" und startScript(scriptId) ein und aus

      Ich würde von den Fachleuten gerne wissen, welche Vorgehensweise sinnvoll ist und empfohlen wird. Oder gibt es weitere Möglichkeiten, sich dieses Themas zu nähern?

      Dank Euch für Eure Hilfe schon mal vorab.

      HomoranH Nicht stören
      HomoranH Nicht stören
      Homoran
      Global Moderator Administrators
      schrieb am zuletzt editiert von
      #2

      @skorpil
      der erste Ansatz wäre der korrektere, weil..
      der zweite Ansatz mehr Ressourcen verbraucht weil die Skripte neim Neustart neu kompiliert werden...
      was bei 2x im Jahr aber zu verschmerzen wäre

      kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

      der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

      1 Antwort Letzte Antwort
      1
      • S skorpil

        Bei mir laufen inzwischen diverse JavaScripte, die aber, wenn ich im Urlaub oder "abwesend" bin, nicht notwendigerweise laufen müssen.

        Ich habe mir überlegt, dass es prinzipiell mehrere Wege gibt, damit umzugehen:

        • man erstellt eine Variable "Urlaub" und läßt in jedem Script prüfen, ob sie "true" ist.
        • man erstellt ein "Urlaubsscript", das ebenfalls auf "Urlaub" reagiert, und schaltet für die Urlaubsdauer nicht benötigte Scripte mit "stopScript(scriptId)" und startScript(scriptId) ein und aus

        Ich würde von den Fachleuten gerne wissen, welche Vorgehensweise sinnvoll ist und empfohlen wird. Oder gibt es weitere Möglichkeiten, sich dieses Themas zu nähern?

        Dank Euch für Eure Hilfe schon mal vorab.

        AsgothianA Offline
        AsgothianA Offline
        Asgothian
        Developer
        schrieb am zuletzt editiert von
        #3

        @skorpil

        Der erste Ansatz ist ganz klar zu bevorzugen, wobei eine Variable nicht reichen wird - es muss schon ein Datenpunkt unter (ggf. unter 0_userdata.0) sein.

        Ansonsten würde ich empfehlen die Skripte nach "Aufgaben" zu gruppieren, nicht nach "hat was mit Urlaub zu tun" - damit wird ein anhalten der für den Urlaub relevanten Skriptteile eher schwierig. Schliesslich kann ein Skript ja durchaus mehrere Funktionen abarbeiten, wovon einige bei Urlaub anders ablaufen als normal.

        A.

        ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
        "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

        1 Antwort Letzte Antwort
        1
        • S skorpil

          Bei mir laufen inzwischen diverse JavaScripte, die aber, wenn ich im Urlaub oder "abwesend" bin, nicht notwendigerweise laufen müssen.

          Ich habe mir überlegt, dass es prinzipiell mehrere Wege gibt, damit umzugehen:

          • man erstellt eine Variable "Urlaub" und läßt in jedem Script prüfen, ob sie "true" ist.
          • man erstellt ein "Urlaubsscript", das ebenfalls auf "Urlaub" reagiert, und schaltet für die Urlaubsdauer nicht benötigte Scripte mit "stopScript(scriptId)" und startScript(scriptId) ein und aus

          Ich würde von den Fachleuten gerne wissen, welche Vorgehensweise sinnvoll ist und empfohlen wird. Oder gibt es weitere Möglichkeiten, sich dieses Themas zu nähern?

          Dank Euch für Eure Hilfe schon mal vorab.

          CodierknechtC Offline
          CodierknechtC Offline
          Codierknecht
          Developer Most Active
          schrieb am zuletzt editiert von
          #4

          @skorpil
          Variante 1 ist die bessere.

          Ich werfe aber mal eine dritte ins Rennen:
          Ich habe eine ical-Instanz, die einen ganz bestimmten Kalender abfragt.
          Steht dort an einem Tag "Urlaub", reagieren die Scripte anders als üblich.
          Hat den Vorteil, dass auch die Gattin den (geteilten) Kalender pflegen kann ;-)

          "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

          Proxmox 9.1.1 LXC|8 GB|Core i7-6700
          HmIP|ZigBee|Tasmota|Unifi
          Zabbix Certified Specialist
          Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

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

            @codierknecht ist das wirklich eine dritte? Du arbeitest dann doch sicher auch mit einem Datenpunkt/ variable? Aber die Idee ist genial.

            Schön wäre es, noch zu wissen, warum ihr alle die Variante eins präferiert? Das mit dem neue Laden habe ich ja gerafft, gibt es aber noch andere Argumente? Ich habe das Problem, immer verstehen zu wollen, warum etwas so oder so gelöst wird. ;-)

            Danke an alle @Asgothian @Homoran @Codierknecht

            OliverIOO CodierknechtC 2 Antworten Letzte Antwort
            0
            • S skorpil

              @codierknecht ist das wirklich eine dritte? Du arbeitest dann doch sicher auch mit einem Datenpunkt/ variable? Aber die Idee ist genial.

              Schön wäre es, noch zu wissen, warum ihr alle die Variante eins präferiert? Das mit dem neue Laden habe ich ja gerafft, gibt es aber noch andere Argumente? Ich habe das Problem, immer verstehen zu wollen, warum etwas so oder so gelöst wird. ;-)

              Danke an alle @Asgothian @Homoran @Codierknecht

              OliverIOO Offline
              OliverIOO Offline
              OliverIO
              schrieb am zuletzt editiert von
              #6

              @skorpil sagte in Beste Vorgehensweise???:

              Die erste ist es die flexibelste. Wenn du jetzt noch mehr Bedingungen hast, wie Tag/Nacht, Wochentag/Wochenende, dann reicht das mit dem an und abschalten nicht mehr, bzw dann würde eine Logik diese Parameter auswählen und dann die Skripte an/abschalten.

              Ein trigger verbraucht zwar etwas an Ressourcen, aber keine Performance (oder zumindest ein gaaanz klein wenig)

              Meine Adapter und Widgets
              TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
              Links im Profil

              1 Antwort Letzte Antwort
              1
              • S skorpil

                Bei mir laufen inzwischen diverse JavaScripte, die aber, wenn ich im Urlaub oder "abwesend" bin, nicht notwendigerweise laufen müssen.

                Ich habe mir überlegt, dass es prinzipiell mehrere Wege gibt, damit umzugehen:

                • man erstellt eine Variable "Urlaub" und läßt in jedem Script prüfen, ob sie "true" ist.
                • man erstellt ein "Urlaubsscript", das ebenfalls auf "Urlaub" reagiert, und schaltet für die Urlaubsdauer nicht benötigte Scripte mit "stopScript(scriptId)" und startScript(scriptId) ein und aus

                Ich würde von den Fachleuten gerne wissen, welche Vorgehensweise sinnvoll ist und empfohlen wird. Oder gibt es weitere Möglichkeiten, sich dieses Themas zu nähern?

                Dank Euch für Eure Hilfe schon mal vorab.

                amg_666A Offline
                amg_666A Offline
                amg_666
                schrieb am zuletzt editiert von
                #7

                @skorpil Variable Urlaub ist safe und wird funktionieren. Ich hab das etwas anders gelöst. 4 Personen im Haushalt, jede(r) hat ein Smartphone. Jedes Smartphone hat eine feste IP. Ich hab ne Fritzbox, über die frage ich ab wer grade angemeldet ist (=wer ist grade zuhause). Man kann das auch über Ping auf die (feste) IP des jeweiligen Smartphones lösen, geht aber, glaube ich, nicht nit Apple/IOS. Bei mir funktioniert das sehr gut, ich steuere damit einzelne Heizungen (Heizung Kind1 je nachdem ob Kind1 da ist oder nicht usw) und wenn alle abwesend sind wird die Heizung komplett runtergefahren.

                Als Anregung: Wenn alle "weg" sind, also niemand zuhause, dann werden diverse Lampen per Zufallsprinzip an/aus-geschaltet um Anwesenheit zu simulieren

                iobroker auf proxmox container

                S CodierknechtC 2 Antworten Letzte Antwort
                1
                • amg_666A amg_666

                  @skorpil Variable Urlaub ist safe und wird funktionieren. Ich hab das etwas anders gelöst. 4 Personen im Haushalt, jede(r) hat ein Smartphone. Jedes Smartphone hat eine feste IP. Ich hab ne Fritzbox, über die frage ich ab wer grade angemeldet ist (=wer ist grade zuhause). Man kann das auch über Ping auf die (feste) IP des jeweiligen Smartphones lösen, geht aber, glaube ich, nicht nit Apple/IOS. Bei mir funktioniert das sehr gut, ich steuere damit einzelne Heizungen (Heizung Kind1 je nachdem ob Kind1 da ist oder nicht usw) und wenn alle abwesend sind wird die Heizung komplett runtergefahren.

                  Als Anregung: Wenn alle "weg" sind, also niemand zuhause, dann werden diverse Lampen per Zufallsprinzip an/aus-geschaltet um Anwesenheit zu simulieren

                  S Offline
                  S Offline
                  skorpil
                  schrieb am zuletzt editiert von
                  #8

                  @amg_666 wir kommen ein bisschen vorm Thema ab. Dennoch, Dankeschön! Mit den bisherigen CCU Programmen habe ich sowohl Urlaub als auch Anwesenheit. Das sind aber zwei verschiedene Zustände. Aber das soll nicht das Thema sein.

                  Es ging um die Frage, wie man das in JavaScript am besten programmiert!

                  1 Antwort Letzte Antwort
                  0
                  • S skorpil

                    Bei mir laufen inzwischen diverse JavaScripte, die aber, wenn ich im Urlaub oder "abwesend" bin, nicht notwendigerweise laufen müssen.

                    Ich habe mir überlegt, dass es prinzipiell mehrere Wege gibt, damit umzugehen:

                    • man erstellt eine Variable "Urlaub" und läßt in jedem Script prüfen, ob sie "true" ist.
                    • man erstellt ein "Urlaubsscript", das ebenfalls auf "Urlaub" reagiert, und schaltet für die Urlaubsdauer nicht benötigte Scripte mit "stopScript(scriptId)" und startScript(scriptId) ein und aus

                    Ich würde von den Fachleuten gerne wissen, welche Vorgehensweise sinnvoll ist und empfohlen wird. Oder gibt es weitere Möglichkeiten, sich dieses Themas zu nähern?

                    Dank Euch für Eure Hilfe schon mal vorab.

                    liv-in-skyL Offline
                    liv-in-skyL Offline
                    liv-in-sky
                    schrieb am zuletzt editiert von liv-in-sky
                    #9

                    @skorpil

                    evtl eine eigene javascript instanz - "eine urlaubs-instanz" die kannst du dann über script de-/aktivieren - du musst dann nicht jedes script anpassen, sondern nur in die instanz verschieben

                    nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                    1 Antwort Letzte Antwort
                    1
                    • S skorpil

                      @codierknecht ist das wirklich eine dritte? Du arbeitest dann doch sicher auch mit einem Datenpunkt/ variable? Aber die Idee ist genial.

                      Schön wäre es, noch zu wissen, warum ihr alle die Variante eins präferiert? Das mit dem neue Laden habe ich ja gerafft, gibt es aber noch andere Argumente? Ich habe das Problem, immer verstehen zu wollen, warum etwas so oder so gelöst wird. ;-)

                      Danke an alle @Asgothian @Homoran @Codierknecht

                      CodierknechtC Offline
                      CodierknechtC Offline
                      Codierknecht
                      Developer Most Active
                      schrieb am zuletzt editiert von
                      #10

                      @skorpil sagte in Beste Vorgehensweise???:

                      ist das wirklich eine dritte? Du arbeitest dann doch sicher auch mit einem Datenpunkt/ variable?

                      Prinzipiell schon. Aber gesteuert wird das über den Kalender. Da muss kein DP "von Hand" gesetzt werden.

                      fbdda294-ab0f-483a-a181-be66d67a0184-image.png bbc8663b-07b5-46c4-a215-e852c603ed6e-image.png

                      "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

                      Proxmox 9.1.1 LXC|8 GB|Core i7-6700
                      HmIP|ZigBee|Tasmota|Unifi
                      Zabbix Certified Specialist
                      Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

                      1 Antwort Letzte Antwort
                      0
                      • Ro75R Offline
                        Ro75R Offline
                        Ro75
                        schrieb am zuletzt editiert von
                        #11

                        Ich mache es genau so wie es @amg_666 beschrieben hat. Für mich die einfachste und effektivste Lösung.

                        Ro75.

                        SERVER = Beelink U59 16GB DDR4 RAM 512GB SSD, FB 7490, FritzDect 200+301+440, ConBee II, Zigbee Aqara Sensoren + NOUS A1Z, NOUS A1T, Philips Hue ** ioBroker, REDIS, influxdb2, Grafana, PiHole, Plex-Mediaserver, paperless-ngx (Docker), MariaDB + phpmyadmin *** VIS-Runtime = Intel NUC 8GB RAM 128GB SSD + 24" Touchscreen

                        1 Antwort Letzte Antwort
                        1
                        • amg_666A amg_666

                          @skorpil Variable Urlaub ist safe und wird funktionieren. Ich hab das etwas anders gelöst. 4 Personen im Haushalt, jede(r) hat ein Smartphone. Jedes Smartphone hat eine feste IP. Ich hab ne Fritzbox, über die frage ich ab wer grade angemeldet ist (=wer ist grade zuhause). Man kann das auch über Ping auf die (feste) IP des jeweiligen Smartphones lösen, geht aber, glaube ich, nicht nit Apple/IOS. Bei mir funktioniert das sehr gut, ich steuere damit einzelne Heizungen (Heizung Kind1 je nachdem ob Kind1 da ist oder nicht usw) und wenn alle abwesend sind wird die Heizung komplett runtergefahren.

                          Als Anregung: Wenn alle "weg" sind, also niemand zuhause, dann werden diverse Lampen per Zufallsprinzip an/aus-geschaltet um Anwesenheit zu simulieren

                          CodierknechtC Offline
                          CodierknechtC Offline
                          Codierknecht
                          Developer Most Active
                          schrieb am zuletzt editiert von
                          #12

                          @amg_666
                          Wenn ich unter der Woche Urlaub/Gleitzeittag habe, möchte ich nicht durch die fahrenden Rollläden geweckt werden ;-)

                          "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

                          Proxmox 9.1.1 LXC|8 GB|Core i7-6700
                          HmIP|ZigBee|Tasmota|Unifi
                          Zabbix Certified Specialist
                          Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

                          HomoranH amg_666A 2 Antworten Letzte Antwort
                          1
                          • CodierknechtC Codierknecht

                            @amg_666
                            Wenn ich unter der Woche Urlaub/Gleitzeittag habe, möchte ich nicht durch die fahrenden Rollläden geweckt werden ;-)

                            HomoranH Nicht stören
                            HomoranH Nicht stören
                            Homoran
                            Global Moderator Administrators
                            schrieb am zuletzt editiert von Homoran
                            #13

                            @codierknecht sagte in Beste Vorgehensweise???:

                            @amg_666
                            Wenn ich unter der Woche Urlaub/Gleitzeittag habe, möchte ich nicht durch die fahrenden Rollläden geweckt werden ;-)

                            dann geh ich zum Wandtablet tippe auf
                            Screenshot_20240712-083629_Firefox.jpg

                            und bin in Urlaub

                            Screenshot_20240712-083652_Firefox.jpg

                            @skorpil
                            da hängt ein Datenpunkt "Urlaub" dran, der in Skripten und shuttercontrol abgefragt wird.

                            kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                            Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                            der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                            CodierknechtC 1 Antwort Letzte Antwort
                            1
                            • HomoranH Homoran

                              @codierknecht sagte in Beste Vorgehensweise???:

                              @amg_666
                              Wenn ich unter der Woche Urlaub/Gleitzeittag habe, möchte ich nicht durch die fahrenden Rollläden geweckt werden ;-)

                              dann geh ich zum Wandtablet tippe auf
                              Screenshot_20240712-083629_Firefox.jpg

                              und bin in Urlaub

                              Screenshot_20240712-083652_Firefox.jpg

                              @skorpil
                              da hängt ein Datenpunkt "Urlaub" dran, der in Skripten und shuttercontrol abgefragt wird.

                              CodierknechtC Offline
                              CodierknechtC Offline
                              Codierknecht
                              Developer Most Active
                              schrieb am zuletzt editiert von
                              #14

                              @homoran
                              Sehr schön.
                              Mit dem Kalender kann man das auch vorplanen ;-)

                              "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

                              Proxmox 9.1.1 LXC|8 GB|Core i7-6700
                              HmIP|ZigBee|Tasmota|Unifi
                              Zabbix Certified Specialist
                              Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

                              1 Antwort Letzte Antwort
                              1
                              • CodierknechtC Codierknecht

                                @amg_666
                                Wenn ich unter der Woche Urlaub/Gleitzeittag habe, möchte ich nicht durch die fahrenden Rollläden geweckt werden ;-)

                                amg_666A Offline
                                amg_666A Offline
                                amg_666
                                schrieb am zuletzt editiert von
                                #15

                                @codierknecht Mein Post oben war auch etwas komprimiert :-) Ich frage auch ab ob z.B. Schulferien sind, dann gehen Rolläde in den Kinderzimmern später hoch. Gleitzeit/Schicht etc kann man ja in einem (google) Kalender eintragen und den dann abfragen

                                iobroker auf proxmox container

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


                                Support us

                                ioBroker
                                Community Adapters
                                Donate

                                554

                                Online

                                32.6k

                                Benutzer

                                82.1k

                                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