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. On mit mehreren State Trigger

NEWS

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

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

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

On mit mehreren State Trigger

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
48 Beiträge 9 Kommentatoren 13.2k 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.
  • M Offline
    M Offline
    Marty56
    schrieb am zuletzt editiert von
    #3

    Danke,

    sieht kompliziert aus. Eine einfache Auflistung aller states ist nicht irgendwie möglich?

    Wenn der zweite Kanal kein Homematic sensor ist, wie würde es dann aussehen?

    HW:NUC (16 GB Ram)
    OS: Debian Bullseye, Promox V7, node v16.x npm 8.19.3

    1 Antwort Letzte Antwort
    0
    • paul53P Offline
      paul53P Offline
      paul53
      schrieb am zuletzt editiert von
      #4

      @Marty56:

      Eine einfache Auflistung aller states ist nicht irgendwie möglich? `
      Doch. Schau mal nach https://github.com/ioBroker/ioBroker.javascript#–-selector.
      @Marty56:

      Wenn der zweite Kanal kein Homematic sensor ist, wie würde es dann aussehen? `
      Ich habe gerade meine Glaskugel verlegt :lol: Das hängt davon ab, wie die ID des Nicht-HM-Datenpunktes aussieht.

      Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
      Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

      1 Antwort Letzte Antwort
      0
      • apollon77A Offline
        apollon77A Offline
        apollon77
        schrieb am zuletzt editiert von
        #5

        Ich habe es bei mir so gelöst das ich ein Array mit allen Datenpunkten generiert habe wo es auslösen soll und dann eine Schleife mit dem "on"-Befehl drin. Damit kann ich einfach oben das Array erweitern wenn einer dazukommt und muss mir keine Regex-Magie ausdenken und fertig. :-)

        Also so als (trockenes) Beispiel:

        var liste = ["ID1", "ID2" ...]
        
        for (var i=0; i<liste.length;i++) {/on(liste[id],/function()/});/}/<e=""></liste.length;i++)>
        

        Die IDs bekommt man im JS-Adapter oben Rechts durc "ID Select" Button

        Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

        • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
        • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
        1 Antwort Letzte Antwort
        0
        • M Offline
          M Offline
          Marty56
          schrieb am zuletzt editiert von
          #6

          Danke für die tolle Unterstützung.

          Der letzte Ansatz gefällt mir gut.

          HW:NUC (16 GB Ram)
          OS: Debian Bullseye, Promox V7, node v16.x npm 8.19.3

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

            Eigentlich möglich währe auch so:

            var id1 = 'ID1';
            var id2 = 'ID2';
            
            function onChange() {
               var val1 = getState(id1).val;
               var val2 = getState(id2).val;
               console.log(id1 +  ' = ' + val1 + '; ' + id2 + ' = ' + val2);
            }
            
            on(id1, onChange);
            on(id2, onChange);
            
            
            1 Antwort Letzte Antwort
            0
            • apollon77A Offline
              apollon77A Offline
              apollon77
              schrieb am zuletzt editiert von
              #8

              @Bluefox: Wäre es nicht eine IDee bei "on" auch anstelle nur eines Strings oder Regex auch ein Array zu akzeptieren und neben "state-obj" als Parameter für Callback auch die "id" als zweiten Parameter zu übergeben?

              Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

              • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
              • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
              1 Antwort Letzte Antwort
              0
              • paul53P Offline
                paul53P Offline
                paul53
                schrieb am zuletzt editiert von
                #9

                @apollon77:

                neben "state-obj" als Parameter für Callback auch die "id" als zweiten Parameter zu übergeben? `
                Die id wird im Objekt übergeben.

                function onChange(dp) {
                    var idnow = dp.id;
                }
                
                on(..., onChange);
                

                Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                1 Antwort Letzte Antwort
                0
                • apollon77A Offline
                  apollon77A Offline
                  apollon77
                  schrieb am zuletzt editiert von
                  #10

                  Stimmt, dann bleibt die Array-Idee :)

                  Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                  • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                  • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                  1 Antwort Letzte Antwort
                  0
                  • BluefoxB Offline
                    BluefoxB Offline
                    Bluefox
                    schrieb am zuletzt editiert von
                    #11

                    https://github.com/ioBroker/ioBroker.ja … 2017-05-19

                    3.3.7 (2017-05-19)
                    
                    (bluefox) Accept for subscribes arrays of IDs
                    
                    1 Antwort Letzte Antwort
                    0
                    • DutchmanD Offline
                      DutchmanD Offline
                      Dutchman
                      Developer Most Active Administrators
                      schrieb am zuletzt editiert von
                      #12

                      @Bluefox:

                      https://github.com/ioBroker/ioBroker.ja … 2017-05-19

                      3.3.7 (2017-05-19)
                      
                      (bluefox) Accept for subscribes arrays of IDs
                      ```` `  
                      

                      Und wieder ist der blaue Fux schneller als die Eisenbahn :respect:

                      –-----------------------

                      Send from mobile device

                      1 Antwort Letzte Antwort
                      0
                      • apollon77A Offline
                        apollon77A Offline
                        apollon77
                        schrieb am zuletzt editiert von
                        #13

                        Tut bei mir nur leider nicht … aber er weiss es schon :-)

                        Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                        • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                        • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                        1 Antwort Letzte Antwort
                        0
                        • M Offline
                          M Offline
                          Marty56
                          schrieb am zuletzt editiert von
                          #14

                          So eine schnelle Reaktion habe ich noch nie erlebt. Ich bin beeindruckt.

                          Die Syntax, die jetzt möglich ist, von meinem Beispiel am Anfang ist dann

                          
                           on(["hm-rpc.0.JEQ0092995.1.STATE","hm-rpc.0.KEQ0165510.1.STATE"] , function (obj) {
                                    ....
                              });
                          
                          

                          Ist mein Verständnis korrekt?

                          HW:NUC (16 GB Ram)
                          OS: Debian Bullseye, Promox V7, node v16.x npm 8.19.3

                          1 Antwort Letzte Antwort
                          0
                          • apollon77A Offline
                            apollon77A Offline
                            apollon77
                            schrieb am zuletzt editiert von
                            #15

                            Genau. Und on({id: […], change: "ne"}, function (obj) { sollte auch tun, aber das hat bei mir nicht geklappt. Aber wie geschrieben schaut duh das Bluefox schon an.

                            Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                            • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                            • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                            1 Antwort Letzte Antwort
                            0
                            • apollon77A Offline
                              apollon77A Offline
                              apollon77
                              schrieb am zuletzt editiert von
                              #16

                              Ich habe Array Subscribe auf Github gefixt. wird dann 3.3.8

                              Bitte testen wer mag

                              Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                              • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                              • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                              1 Antwort Letzte Antwort
                              0
                              • blauholstenB Offline
                                blauholstenB Offline
                                blauholsten
                                Developer
                                schrieb am zuletzt editiert von
                                #17

                                @apollon77:

                                Ich habe Array Subscribe auf Github gefixt. wird dann 3.3.8

                                Bitte testen wer mag `
                                Klappt!

                                nice

                                Entwickler vom: - Viessman Adapter
                                - Alarm Adapter

                                1 Antwort Letzte Antwort
                                0
                                • M Offline
                                  M Offline
                                  Marty56
                                  schrieb am zuletzt editiert von
                                  #18

                                  Ich würde auch gern testen, mir ist aber nicht ganz klar, wie ich an die Pre Release herankomme.

                                  Auf meinem Mac mache ich das Update der Platform mit

                                  sudo ./iobroker stop
                                  sudo ./iobroker update
                                  sudo ./iobroker upgrade self
                                  sudo ./iobroker upgrade
                                  sudo ./iobroker start
                                  
                                  

                                  Damit bekomme ich die Production Version.

                                  Vermutlich benötige ich bei einem der Befehle eine "– xxxx " extension.

                                  Noch eine (dumme) Frage:

                                  Zur Ausgabe eines Mp3 Files muss man sein File unter Linux wohl in das OPT Verzeichnis kopieren, in dem auch die Sprachausgabe ihr Mp3 Files ablegt. Wo liegt dieses Verzeichnis auf dem MAC?

                                  HW:NUC (16 GB Ram)
                                  OS: Debian Bullseye, Promox V7, node v16.x npm 8.19.3

                                  1 Antwort Letzte Antwort
                                  0
                                  • apollon77A Offline
                                    apollon77A Offline
                                    apollon77
                                    schrieb am zuletzt editiert von
                                    #19

                                    @Marty56:

                                    Ich würde auch gern testen, mir ist aber nicht ganz klar, wie ich an die Pre Release herankomme. `

                                    Geht in der Admin UI.

                                    Oben sind kleine Buttons und das dritte von Links ist ein Github-Symbol. Da drauf - ist "Custom Install" und dort im ersten tab den Adapter wählen den Du willst (in dem Fall hier "Javascript") und dann updated er direkt vom Github.

                                    @Marty56:

                                    Noch eine (dumme) Frage:

                                    Zur Ausgabe eines Mp3 Files muss man sein File unter Linux wohl in das OPT Verzeichnis kopieren, in dem auch die Sprachausgabe ihr Mp3 Files ablegt. Wo liegt dieses Verzeichnis auf dem MAC? `
                                    Machst DU dazu bitte nen extra Thread auf ?! Wollen nicht zuviele Themen mischen :-)

                                    Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                                    • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                                    • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                                    1 Antwort Letzte Antwort
                                    0
                                    • M Offline
                                      M Offline
                                      Marty56
                                      schrieb am zuletzt editiert von
                                      #20

                                      Ich sehe kein "Custom install", wenn ich das GitHub Symbol anklicke.

                                      Muss ich da noch eine URL eintragen?
                                      2722_bildschirmfoto_2017-05-23_um_09.22.19.png
                                      2722_bildschirmfoto_2017-05-23_um_09.23.26.png

                                      HW:NUC (16 GB Ram)
                                      OS: Debian Bullseye, Promox V7, node v16.x npm 8.19.3

                                      1 Antwort Letzte Antwort
                                      0
                                      • apollon77A Offline
                                        apollon77A Offline
                                        apollon77
                                        schrieb am zuletzt editiert von
                                        #21

                                        "von github" und dort im dropdown Javascript und Installieren

                                        Der Mouse-Over von dem Github Button sagt an sich "Custom Install" :-))

                                        Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                                        • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                                        • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                                        1 Antwort Letzte Antwort
                                        0
                                        • M Offline
                                          M Offline
                                          Marty56
                                          schrieb am zuletzt editiert von
                                          #22

                                          Hallo

                                          Das Hatte ich schon so gemacht. Jetzt sehe ich aber immer noch die alte Version und rechts daneben die neue Version. Leider bekomme ich nicht die neue Version installiert. Ich habe auch schon iobroker heruntergefahren und wieder gestartet ohne Erfolg.

                                          HW:NUC (16 GB Ram)
                                          OS: Debian Bullseye, Promox V7, node v16.x npm 8.19.3

                                          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

                                          407

                                          Online

                                          32.4k

                                          Benutzer

                                          81.5k

                                          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