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()-Funktion - Reagieren auf _SHORT oder _LONG

NEWS

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

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

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

On()-Funktion - Reagieren auf _SHORT oder _LONG

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
34 Beiträge 5 Kommentatoren 2.8k 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.
  • Jey CeeJ Online
    Jey CeeJ Online
    Jey Cee
    Developer
    schrieb am zuletzt editiert von
    #4

    Erst mal nur die Sicherheit das es wirklich an on() liegt. Ich hab auch eine oder verknüpfung in on() und das geht.

    Gesendet von meinem Jolla mit Tapatalk

    Persönlicher Support
    Spenden -> paypal.me/J3YC33

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

      @Jey Cee:

      Ich hab auch eine oder verknüpfung in on() und das geht. `
      Wirklich ? Wie sieht die funktionierende on-Zeile aus ?

      Ansonsten zwei mal on() oder RegExp verwenden.

      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
      • A Offline
        A Offline
        AndyUM61
        schrieb am zuletzt editiert von
        #6

        @paul53:

        @Jey Cee:

        Ich hab auch eine oder verknüpfung in on() und das geht. `
        Wirklich ? Wie sieht die funktionierende on-Zeile aus ?

        Ansonsten zwei mal on() oder RegExp verwenden. `

        Das würde ich auch gerne wissen;).

        Ich habe jetzt natürlich 2 Mal on() verwendet, nur dachte ich, es könnte auch einfacher gtehen.

        Was ist RegExp?

        Internette Grüße
        Andy

        RaspberryMatic (Raspberry Pi3), CUxD, ioBroker (Synology/ Docker)

        1 Antwort Letzte Antwort
        0
        • Jey CeeJ Online
          Jey CeeJ Online
          Jey Cee
          Developer
          schrieb am zuletzt editiert von
          #7

          on({

          id: "harmony.0.Wohnzimmer-Hub.activities.Tv_Schauen"/activity:Tv_Schauen/,

          val: 0

          }

          ||

          {

          id: "harmony.0.Wohnzimmer-Hub.hubConnected"/Wohnzimmer-Hub:hubConnected/,

          val: false

          }
          9527_log_1.11..pdf
          9527_log_2.11..pdf
          9527_log_3.11..pdf
          9527_log_4.11..pdf
          9527_log_30.10..pdf
          9527_log29.10..pdf

          Persönlicher Support
          Spenden -> paypal.me/J3YC33

          1 Antwort Letzte Antwort
          0
          • A Offline
            A Offline
            AndyUM61
            schrieb am zuletzt editiert von
            #8

            @Jey Cee:

            on({

            id: "harmony.0.Wohnzimmer-Hub.activities.Tv_Schauen"/activity:Tv_Schauen/,

            val: 0

            }

            ||

            {

            id: "harmony.0.Wohnzimmer-Hub.hubConnected"/Wohnzimmer-Hub:hubConnected/,

            val: false

            } `

            Na ja, das entspricht ja genau dem, was ich eingehend geschrieben habe.

            Internette Grüße
            Andy

            RaspberryMatic (Raspberry Pi3), CUxD, ioBroker (Synology/ Docker)

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

              @AndyUM61:

              Was ist RegExp? `
              Regulärer Ausdruck, ist in der readme des Javascript-Adapters aufgeführt.

              Habe selbst damit keine Erfahrung, deshalb ohne Gewähr auf Richtigkeit:

              on({id: /^hm-rpc\.1\.JEQ1234567\.7\.PRESS_.*$/, val:true}, function() { 
              	...
              });
              

              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
              • A Offline
                A Offline
                AndyUM61
                schrieb am zuletzt editiert von
                #10

                @paul53:

                on({id: /^hm-rpc.1.JEQ1234567.7.PRESS_.*$/, val:true}, function() {

                …

                });

                Das hat bei mir eine Fehlermeldung gebracht:

                error	script.js.Klingel: TypeError: Object /^hm-rpc\.1\.JEQ0713213\.7\.PRESS_*$/ has no method 'split'
                

                Internette Grüße
                Andy

                RaspberryMatic (Raspberry Pi3), CUxD, ioBroker (Synology/ Docker)

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

                  @AndyUM61:

                  Das hat bei mir eine Fehlermeldung gebracht: `
                  Hast Du es mal mit dem Punkt vor dem Sternchen versucht ?

                  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
                  • A Offline
                    A Offline
                    AndyUM61
                    schrieb am zuletzt editiert von
                    #12

                    @paul53:

                    Hast Du es mal mit dem Punkt vor dem Sternchen versucht ? `
                    Ich hatte es exakt von dir kopiert.

                    Keine Ahnung, warum in der Fehlermeldung der "." fehlt.

                    Internette Grüße
                    Andy

                    RaspberryMatic (Raspberry Pi3), CUxD, ioBroker (Synology/ Docker)

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

                      @AndyUM61:

                      Ich hatte es exakt von dir kopiert. `
                      Sorry. Da warst Du mit dem Kopieren schneller als ich mit dem Einfügen des Punktes vor dem Sternchen.

                      Funktioniert es mit dem zusätzlichen Punkt ?

                      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
                      • A Offline
                        A Offline
                        AndyUM61
                        schrieb am zuletzt editiert von
                        #14

                        …funktioniert so nicht.

                        Gleiche Fehlermeldung.

                        Internette Grüße
                        Andy

                        RaspberryMatic (Raspberry Pi3), CUxD, ioBroker (Synology/ Docker)

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

                          @AndyUM61:

                          @paul53:

                          on({id: /^hm-rpc.1.JEQ1234567.7.PRESS_.*$/, val:true}, function() {

                          …

                          });

                          Das hat bei mir eine Fehlermeldung gebracht:

                          error	script.js.Klingel: TypeError: Object /^hm-rpc\.1\.JEQ0713213\.7\.PRESS_*$/ has no method 'split'
                          ```` `  `  
                          

                          Diese Fehler werde ich heute fixen.

                          Ich kann aber anbieten:

                          function klingeln() {
                              // mache irgendwas
                              log('Klingeklingelin');
                          }
                          on({id: hm-rpc.1.JEQ1234567.7.PRESS_SHORT, val: true}, klingeln);
                          on({id: hm-rpc.1.JEQ1234567.7.PRESS_LONG, val: true}, klingeln);
                          
                          
                          1 Antwort Letzte Antwort
                          0
                          • A Offline
                            A Offline
                            AndyUM61
                            schrieb am zuletzt editiert von
                            #16

                            @Bluefox:

                            Ich kann aber anbieten:

                            function klingeln() {
                                // mache irgendwas
                                log('Klingeklingelin');
                            }
                            on({id: hm-rpc.1.JEQ1234567.7.PRESS_SHORT, val: true}, klingeln);
                            on({id: hm-rpc.1.JEQ1234567.7.PRESS_LONG, val: true}, klingeln);
                            
                            

                            Das gefällt mir sehr gut!!!

                            Und funktioniert einwandfrei:).

                            DANKESCHÖN!

                            Internette Grüße
                            Andy

                            RaspberryMatic (Raspberry Pi3), CUxD, ioBroker (Synology/ Docker)

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

                              @AndyUM61:

                              Das gefällt mir sehr gut!!! `
                              Das ist die Variante mit 2 mal on().

                              Die verkürzte Schreibweise ohne geschweifte Klammern ist möglich, da nur eine einzelne Anweisung (Funktion: klingeln) ausgeführt werden muss.

                              http://forum.iobroker.de/viewtopic.php?f=21&t=1305&p=10889&sid=8d66987961ab8b9ec660c280b994fba5&sid=8d66987961ab8b9ec660c280b994fba5#p10889 hatte ich allerdings schon mal die Erfahrung gemacht, dass es verkürzt nicht funktioniert. Das hat sich anscheinend inzwischen geändert !?

                              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
                              • BluefoxB Offline
                                BluefoxB Offline
                                Bluefox
                                schrieb am zuletzt editiert von
                                #18

                                @paul53:

                                @AndyUM61:

                                Das gefällt mir sehr gut!!! `
                                Das ist die Variante mit 2 mal on().

                                Die verkürzte Schreibweise ohne geschweifte Klammern ist möglich, da nur eine einzelne Anweisung (Funktion: klingeln) ausgeführt werden muss.

                                http://forum.iobroker.de/viewtopic.php?f=21&t=1305&p=10889&sid=8d66987961ab8b9ec660c280b994fba5&sid=8d66987961ab8b9ec660c280b994fba5#p10889 hatte ich allerdings schon mal die Erfahrung gemacht, dass es verkürzt nicht funktioniert. Das hat sich anscheinend inzwischen geändert !? `
                                Du hast "status()" geschrieben. Und ich ohne Klammern.

                                Bei dir wolltest du das Ergebnis von Funktion status nutzen (Vermutlich "undefined") und ich habe die Funktionen eingegeben.

                                BTW: Fehler mit RegExp habe ich gefixt.

                                1 Antwort Letzte Antwort
                                0
                                • A Offline
                                  A Offline
                                  AndyUM61
                                  schrieb am zuletzt editiert von
                                  #19

                                  Also da ich ja für die ID's variablen verwende ist diese Variante für mich sehr gut nachvollziehbar.

                                  Auch wenn es eben 2 on()-Funktionen sind.

                                  Könnte man eigentlich der Funktion klingeln() eine Variable übergeben?

                                  Dann bräuchte ich nur eine Funktion, die in Abhängigkeit dieser Variable entsprechendes ausführt.

                                  Da wir zwei Klingeln haben, habe ich jetzt 4 on()-Funktionen, die hätte ich ja dann auch, und 2 klingeln()-Funktionen.

                                  Bin halt noch nicht soooo Weit mit dem Scripten, aber ich arbeite daran;).

                                  @Bluefox:

                                  Ist das normal, dass wenn man ein Script zum Editieren aufruft, das Editor-Fenster so weit unten geöffnet wird, dass man immer erst runter Scrollen muss? Ist ein wenig stressig, beim Experimentieren.

                                  Vielleicht mal beim nächsten Update…;)

                                  Internette Grüße
                                  Andy

                                  RaspberryMatic (Raspberry Pi3), CUxD, ioBroker (Synology/ Docker)

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

                                    @Bluefox:

                                    Du hast "status()" geschrieben. Und ich ohne Klammern. `
                                    Und nur ohne Klammern funktioniert der Funktionsaufruf ?

                                    Javascript wird mir langsam unheimlich :roll:

                                    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
                                    • BluefoxB Offline
                                      BluefoxB Offline
                                      Bluefox
                                      schrieb am zuletzt editiert von
                                      #21

                                      @AndyUM61:

                                      Also da ich ja für die ID's variablen verwende ist diese Variante für mich sehr gut nachvollziehbar.

                                      Auch wenn es eben 2 on()-Funktionen sind.

                                      Könnte man eigentlich der Funktion klingeln() eine Variable übergeben? `
                                      Ja natürlich:

                                      function klingeln(number) {
                                          // mache irgendwas
                                          log('Klingeklingelin ' + number);
                                      }
                                      on({id: hm-rpc.1.JEQ1234567.7.PRESS_SHORT, val: true}, function (){klingeln(1);});
                                      on({id: hm-rpc.1.JEQ1234567.7.PRESS_LONG, val: true}, function (){klingeln(2);});
                                      
                                      

                                      @AndyUM61:

                                      @Bluefox:

                                      Ist das normal, dass wenn man ein Script zum Editieren aufruft, das Editor-Fenster so weit unten geöffnet wird, dass man immer erst runter Scrollen muss? Ist ein wenig stressig, beim Experimentieren.

                                      Vielleicht mal beim nächsten Update…;) `

                                      Ich gehe davon aus, dass du mit dem Skript weiterarbeiten willst. :lol:

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

                                        @Bluefox:

                                        BTW: Fehler mit RegExp habe ich gefixt. `
                                        @AndyUM61: Hast Du die RegExp-Variante nach Update des Javascript-Adapters auf Version 1.1.1 nochmal getestet ?

                                        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
                                        • A Offline
                                          A Offline
                                          AndyUM61
                                          schrieb am zuletzt editiert von
                                          #23

                                          @paul53:

                                          @AndyUM61: Hast Du die RegExp-Variante nach Update des Javascript-Adapters auf Version 1.1.1 nochmal getestet ? `

                                          Nein, noch nicht.

                                          Ich müsste ja einen Regulären Ausdruck für meine Variablennamen finden, so das natürlich geht.

                                          Muss ich mir erst einmal ausprobieren.

                                          Das mit diesen RegExp fiel mir - ehrlich gesagt - bei anderen Programmiersprachen schon immer sehr schwer;).

                                          Ist ja auch wirklich recht unübersichtlich.

                                          Aber ich werde es mit Sicherheit bei anderen Scripten mal versuchen.

                                          Dankeschön trotzdem für den Tip:)!

                                          Internette Grüße
                                          Andy

                                          RaspberryMatic (Raspberry Pi3), CUxD, ioBroker (Synology/ Docker)

                                          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

                                          847

                                          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