Weiter zum Inhalt
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • 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

  • Der neue Monatsrückblick für Mai und Juni 2026 ist online!
    BluefoxB
    Bluefox
    8
    1
    1.1k

  • wichtiges UPDATE für controller 7.2.2 im stable
    HomoranH
    Homoran
    10
    1
    3.6k

  • Neues YouTube-Video: Visualisierung im Devices-Adapter
    BluefoxB
    Bluefox
    16
    1
    6.2k

On()-Funktion - Reagieren auf _SHORT oder _LONG

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
34 Beiträge 5 Kommentatoren 3.7k 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.
  • A Offline
    A Offline
    AndyUM61
    schrieb am zuletzt editiert von
    #24

    @Bluefox:

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

    Aber du hast verstanden was ich meine;)?
    518_script_editor.gif

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

      Habe das folgende Script mit der Javascript-Adapter Version 1.1.1 getestet:

      on({id: /^hm-rpc\.0\.BidCoS-RF\.1\.PRESS_.*$/, val:true}, function(dp) { 
          log(dp.id);
      });
      
      

      und es funktioniert. Log:
      ` > javascript-0 2015-12-16 21:15:51 info script.js._Multistate-Test: hm-rpc.0.BidCoS-RF.1.PRESS_LONG

      javascript-0 2015-12-16 21:15:31 info script.js._Multistate-Test: hm-rpc.0.BidCoS-RF.1.PRESS_SHORT `

      Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
      Produktiv: Asus PN 42 / N100 / 8 GB / 500 GB; Proxmox mit 2 VM (iob / openCCU)

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

        Na ist doch klasse:).

        …und wie würde das für die Variablen "klingel" und "klingel_long" aussehen?

        Geht das denn mit Variablen?

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

          @AndyUM61:

          …und wie würde das für die Variablen "klingel" und "klingel_long" aussehen? `
          Sollen die Variablen als Auslöser dienen:

          on({id: /^javascript\.0\.klingel.*$/, val:true}, function(dp) {
              log(dp.id);
          });
          

          Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
          Produktiv: Asus PN 42 / N100 / 8 GB / 500 GB; Proxmox mit 2 VM (iob / openCCU)

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

            Das hast du falsch verstanden.

            Ich habe zur Vereinfachung halber die Actoren, also z.B. "hm-rpc.1.J…......" in Variablen, also z.B. "klingel" gepackt.

            Diese verwende ich halt in den on()-Funktionen.

            Ich mag meine Scripts möglichst universell, und brauche so eben nur jeweils den "Kopf" ändern.

            Bei dem Klingelscript ist das nicht wirklich notwendig, aber bei meinen MQTT-Sensoren macht das schon Sinn.

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

              Das Script mit den "hm-rpc.1.J…......" als Auslöser habe ich bereits gepostet.

              Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
              Produktiv: Asus PN 42 / N100 / 8 GB / 500 GB; Proxmox mit 2 VM (iob / openCCU)

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

                @AndyUM61:

                @Bluefox:

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

                Aber du hast verstanden was ich meine;)? `
                Nein. Habe ich nicht so verstanden.

                Schiebe das Febster ein mal nach oben. Der wird dann die Position merken.

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

                  @Bluefox:

                  Kannst mir glauben, das Fenster habe ich Heute bestimmt 1000x nach oben geschoben.

                  …immer wieder neu;).

                  Sonst hätte ich ja auch nichts dazu geschrieben;).

                  Benutze übrigens Firefox.

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

                    @Bluefox:

                    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. `
                    Mit dem Ergebnis der Funktion hat es nichts zu tun.

                    Es sollte lediglich ein Funktionsaufruf ohne Parameterübergabe sein. Macht man einen solchen Funktionsaufruf in einer extra Zeile - z.B. innerhalb einer Verbundanweisung, sind die Klammern erfoderlich.

                    { funcXYZ();
                    }
                    ````funktioniert
                    

                    { funcXYZ;
                    }

                    
                    EDIT: Habe noch etwas recherchiert: Callback-Funktionen müssen offenbar als anonyme Funktion (mit oder ohne Argumente)
                    

                    on(id, function(arg1, ...argN) {
                    Funktion(en);
                    });

                    oder als Funktionsreferenz (ohne Argumente)
                    

                    on(id, FunktionXYZ);

                    angegeben werden.

                    Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                    Produktiv: Asus PN 42 / N100 / 8 GB / 500 GB; Proxmox mit 2 VM (iob / openCCU)

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

                      @AndyUM61:

                      @Bluefox:

                      Kannst mir glauben, das Fenster habe ich Heute bestimmt 1000x nach oben geschoben.

                      …immer wieder neu;).

                      Sonst hätte ich ja auch nichts dazu geschrieben;).

                      Benutze übrigens Firefox. `
                      Versuche Cache zu löschen. Komplett

                      1 Antwort Letzte Antwort
                      0
                      • R Offline
                        R Offline
                        rascal
                        schrieb am zuletzt editiert von
                        #34

                        Hey,

                        frage von einem totalen JavaScript noob: Er schaltet mir die Var output2 nicht, was mache ich falsch?

                        log("Test","info");
                        
                        //var input1 = "ping.0.input1";/*input1 bool*/ 
                        //var input2 = "ping.0.input2";/*input2 zahl*/
                        //var output1 = "ping.0.output1";/*output1 bool*/
                        //var output2 = "ping.0.output2";/*output2 zahl*/
                        
                        function testfunc1() 
                        {
                            setState("ping.0.output1", true);
                        }
                        
                        function testfunc2() 
                        {
                            setState("ping.0.output1", false);
                        }
                        
                        on({id: "ping.0.input1", val: true}, testfunc1);
                        on({id: "ping.0.input1", val: false}, testfunc2);
                        
                        

                        305_heizungsscript_220_b14_temp.txt

                        1 Antwort Letzte Antwort
                        0

                        Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.

                        Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.

                        Mit deinem Input könnte dieser Beitrag noch besser werden 💗

                        Registrieren Anmelden
                        Antworten
                        • In einem neuen Thema antworten
                        Anmelden zum Antworten
                        • Älteste zuerst
                        • Neuste zuerst
                        • Meiste Stimmen


                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        521

                        Online

                        33.0k

                        Benutzer

                        83.6k

                        Themen

                        1.3m

                        Beiträge
                        Community
                        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                        ioBroker Community 2014-2026
                        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