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. ioBroker Allgemein
  4. Benennung globale Skripte

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.5k

Benennung globale Skripte

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
15 Beiträge 5 Kommentatoren 3.4k Aufrufe
  • Ä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.
  • P Offline
    P Offline
    pix
    schrieb am zuletzt editiert von
    #1

    hallo,

    ich benutze unter anderem für sayit ein globales Skript. Damit ich es in der Spalte der vielen Skript schnell finde, heisst es bei mir global_sayit. Wenn ich den Haken für "global" setze, fügt ioBroker automatisch ein "_global" hinten an den Namen an. Das ist sinnvoll. Wenn ich den Namen dann aber oben im Namensfeld wieder korrigiere und das "_global" hinten lösche, ist das Häkchen wieder weg. Das ist nicht gut.

    Gut, wenn ioBroker mitdenkt; schlecht, wenn es sich nicht überstimmen läßt. Besser wäre, wenn die globalen Skripte in der Liste der Skripte ganz oben (oder ganz unten, hauptsache zusammen) stehen und vielleicht mit einem Icon "[G]" oder "Weltkugel" markiert wären. Meine globalen Skript heißen nämlich jetzt alle "global_NAMEDESSKRIPTS_global"

    Gruß

    Pix

    ioBroker auf Ubuntu in Proxmox (früher Mac mini (bis OS X 10.12.6 Sierra), VIS via iOS; angeschlossen: Homematic CCU2, Homepilot 1, ConBee II, einige Wemos, Sonos, Unifi CK+Protect, Homekit, Homebridge; KEIN blockly! Github-Profil

    1 Antwort Letzte Antwort
    0
    • BluefoxB Offline
      BluefoxB Offline
      Bluefox
      schrieb am zuletzt editiert von
      #2

      @pix:

      Wenn ich den Namen dann aber oben im Namensfeld wieder korrigiere und das "_global" hinten lösche, ist das Häkchen wieder weg. Das ist nicht gut. `
      Die Markierung, dass ein Skript global ist, geschieht über "_global". D.h. wenn kein "_global" da ist, dann ist es kein Global.

      Man konnte alle Globale Skripte vorne auflisten und grundsätzlich alle Skripte alphabetisch sortieren.

      1 Antwort Letzte Antwort
      0
      • P Offline
        P Offline
        pix
        schrieb am zuletzt editiert von
        #3

        @Bluefox:

        Man konnte alle Globale Skripte vorne auflisten `
        Das wär gut!

        ioBroker auf Ubuntu in Proxmox (früher Mac mini (bis OS X 10.12.6 Sierra), VIS via iOS; angeschlossen: Homematic CCU2, Homepilot 1, ConBee II, einige Wemos, Sonos, Unifi CK+Protect, Homekit, Homebridge; KEIN blockly! Github-Profil

        1 Antwort Letzte Antwort
        0
        • htreckslerH Offline
          htreckslerH Offline
          htrecksler
          Forum Testing
          schrieb am zuletzt editiert von
          #4

          Hat jemand ein Anwendungsbeispiel für globale Scripte? Wozu benutzt man das? Was ist der Vorteil?

          Gruss Hermann

          ioBroker auf Proxmox (Debian) auf IntelNuc als Produktivsystem

          1 Antwort Letzte Antwort
          0
          • BluefoxB Offline
            BluefoxB Offline
            Bluefox
            schrieb am zuletzt editiert von
            #5

            Du kannst in so einem globalen Skript eine Funktion definieren, z.B. getAllLights und dann diese Funktion überall verwenden.

            1 Antwort Letzte Antwort
            0
            • P Offline
              P Offline
              pix
              schrieb am zuletzt editiert von
              #6

              Hallo,

              ich nutze zur Zeit zwei globale Funktionen:

              sayit() und display_schalten().

              Bei sayit werden der zu sprechende Text und Parameter mitübergeben.

              Das verkürzt die Skripte und minimiert den Wartungsaufwand, wenn mal wieder beim Sayit-Aufruf was geändert wird. Funktioniert als Substitution.

              display_schalten schaltet das Flur-Wandtablet ein. Zum Beispiel vor Ansagen (aufgerufen aus sayit), bei Bewegung im Flur; und aus bei Abwesenheit, Nachtruhe und generell alle 30 Minuten.

              Geplant ist noch eine Funktion licht_alles_aus() und andere Szenen szene_tv_an(). So kann ich mit verschiedenen Aktionen (Wandtaster, schedule, Vis) die gleiche Funktion aufrufen und zentral warten (zB neue Lampe einfügen).

              Gruß

              Pix

              Gesendet von meinem iPhone mit Tapatalk

              ioBroker auf Ubuntu in Proxmox (früher Mac mini (bis OS X 10.12.6 Sierra), VIS via iOS; angeschlossen: Homematic CCU2, Homepilot 1, ConBee II, einige Wemos, Sonos, Unifi CK+Protect, Homekit, Homebridge; KEIN blockly! Github-Profil

              1 Antwort Letzte Antwort
              0
              • B Offline
                B Offline
                Beatz
                schrieb am zuletzt editiert von
                #7

                Ich habe darüber eine JavaScript Funktion laufen, mit der ich prüfe, ob die aktuelle Zeit in ein Zeitfenster passt.

                So kann ich mir den Code in jedem einzelnen Script sparen.

                1 Antwort Letzte Antwort
                0
                • ruhr70R Offline
                  ruhr70R Offline
                  ruhr70
                  schrieb am zuletzt editiert von
                  #8

                  @Bluefox:

                  Man konnte alle Globale Skripte vorne auflisten und grundsätzlich alle Skripte alphabetisch sortieren. `

                  Nur zur Info…

                  Es werden auch Scripte nach Vorne sortiert, bei denen nicht "_global" hinten angehangen ist, sondern bei denen einfach "global" oder "globale" im Scriptnamen an irgendeiner Stelle vorkommt.

                  Adapter: Fritzbox, Unify Circuit
                  Skripte: dynamic hue, Bluetooth Scan, Multi-Ereignisliste

                  1 Antwort Letzte Antwort
                  0
                  • BluefoxB Offline
                    BluefoxB Offline
                    Bluefox
                    schrieb am zuletzt editiert von
                    #9

                    @ruhr70:

                    @Bluefox:

                    Man konnte alle Globale Skripte vorne auflisten und grundsätzlich alle Skripte alphabetisch sortieren. `

                    Nur zur Info…

                    Es werden auch Scripte nach Vorne sortiert, bei denen nicht "_global" hinten angehangen ist, sondern bei denen einfach "global" oder "globale" im Scriptnamen an irgendeiner Stelle vorkommt. `
                    Habe gefixt.. Wird irgendwann in der neuen Version reinfließen.
                    3435_20171123_200857.jpg
                    3435_20171123_200841.jpg

                    1 Antwort Letzte Antwort
                    0
                    • P Offline
                      P Offline
                      pix
                      schrieb am zuletzt editiert von
                      #10

                      Hallo bluefox,

                      danke für das Update so finde ich das gut (vor allem die Fettschrift).

                      Gruß

                      Pix

                      ioBroker auf Ubuntu in Proxmox (früher Mac mini (bis OS X 10.12.6 Sierra), VIS via iOS; angeschlossen: Homematic CCU2, Homepilot 1, ConBee II, einige Wemos, Sonos, Unifi CK+Protect, Homekit, Homebridge; KEIN blockly! Github-Profil

                      1 Antwort Letzte Antwort
                      0
                      • htreckslerH Offline
                        htreckslerH Offline
                        htrecksler
                        Forum Testing
                        schrieb am zuletzt editiert von
                        #11

                        @Bluefox:

                        Du kannst in so einem globalen Skript eine Funktion definieren, z.B. getAllLights und dann diese Funktion überall verwenden. `

                        ist wahrscheinlich trivial, aber wie adressiere ich die Funktion des globalen Scripts… (Syntax für den Aufruf)

                        a. in einem Adapter

                        b. in einem normalen Script

                        z.B. Das globale Script heißt "my_global" und die Funktion in dem Skript

                        function nowIsBetween(min, max){
                        var now = new Date();
                        minDate = new Date((now.getMonth() + 1) + " " + now.getDate() + ", " + now.getFullYear() + " " + min + ":00");
                        maxDate = new Date((now.getMonth() + 1) + " " + now.getDate() + ", " + now.getFullYear() + " " + max + ":00");
                        if(now.getTime() < minDate.getTime()) return false;
                        if(now.getTime() > maxDate.getTime()) return false;
                        return true;
                        }
                        
                        

                        Gruss Hermann

                        ioBroker auf Proxmox (Debian) auf IntelNuc als Produktivsystem

                        1 Antwort Letzte Antwort
                        0
                        • BluefoxB Offline
                          BluefoxB Offline
                          Bluefox
                          schrieb am zuletzt editiert von
                          #12

                          Du rufst einfach "nowIsBetween" auf, als ob die in den gleichen Skript oben definiert ist.

                          1 Antwort Letzte Antwort
                          0
                          • htreckslerH Offline
                            htreckslerH Offline
                            htrecksler
                            Forum Testing
                            schrieb am zuletzt editiert von
                            #13

                            @Bluefox:

                            Du rufst einfach "nowIsBetween" auf, als ob die in den gleichen Skript oben definiert ist. `
                            Auch im Adapter?

                            Gruss Hermann

                            ioBroker auf Proxmox (Debian) auf IntelNuc als Produktivsystem

                            1 Antwort Letzte Antwort
                            0
                            • htreckslerH Offline
                              htreckslerH Offline
                              htrecksler
                              Forum Testing
                              schrieb am zuletzt editiert von
                              #14

                              Ich meine natürlich nur lokale Adapter. Bei den anderen kann es ja nicht gehen, sonst müssen ja alle User das gleiche globale Script haben.

                              Ich möchte also in allen meinen lokalen Adaptern auf eine globale Funktion zugreifen, damit ich die Funktion nich in jedem Adapter ins adapter.js packen muss.

                              Gruss Hermann

                              ioBroker auf Proxmox (Debian) auf IntelNuc als Produktivsystem

                              1 Antwort Letzte Antwort
                              0
                              • BluefoxB Offline
                                BluefoxB Offline
                                Bluefox
                                schrieb am zuletzt editiert von
                                #15

                                Jetzt verstehe ich.

                                Natürlich nicht. Du musst adapter.js modifizieren. Aber wenn die Funktion gut ist, dann nehme ich die gerne in adapter.js auf.

                                Sonst musst du die Funktion in eine Datei aushängen (z.B. lib/tools.js) und die dann zwischen deinen Adaptern synchron halten. (z.b. mit Grunt).

                                So mache ich mit lib/utils.js

                                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
                                FAQ Cloud / IOT
                                HowTo: Node.js-Update
                                HowTo: Backup/Restore
                                Downloads
                                BLOG

                                737

                                Online

                                32.7k

                                Benutzer

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