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. [Frage] zu Laufzeit erstellen State verarbeiten

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.3k

[Frage] zu Laufzeit erstellen State verarbeiten

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
10 Beiträge 5 Kommentatoren 975 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.
  • L Offline
    L Offline
    Lucky
    schrieb am zuletzt editiert von
    #1

    Moin,

    gibt es eine Möglichkeit einen State der zur Laufzeit erstellt wurde im Skript abzufragen ?

    der 'Pfad' ist Teilweise vorher bekannt und würde in etwa javascript.0.Spotify.Devices.xxxx.Play lauten. xxxx ist nicht vorhersehbar !

    on({id:'javascript.0.Spotify.xxxx.Play',val:true}, function (obj){
      //bla bla 
      });
    

    würde ja nicht gehen…

    1 Antwort Letzte Antwort
    0
    • blauholstenB Offline
      blauholstenB Offline
      blauholsten
      Developer
      schrieb am zuletzt editiert von
      #2

      @Lucky:

      Moin,

      gibt es eine Möglichkeit einen State der zur Laufzeit erstellt wurde im Skript abzufragen ?

      der 'Pfad' ist Teilweise vorher bekannt und würde in etwa javascript.0.Spotify.Devices.xxxx.Play lauten. xxxx ist nicht vorhersehbar !

      on({id:'javascript.0.Spotify.xxxx.Play',val:true}, function (obj){
        //bla bla 
        });
      

      würde ja nicht gehen… `
      Weis nicht ob ich dich richtig verstanden habe, aber…

      $('javascript.0.Spotify.*').on(function (obj){
        //bla bla 
        });
      

      geht vielleicht

      Entwickler vom: - Viessman Adapter
      - Alarm Adapter

      1 Antwort Letzte Antwort
      0
      • D Offline
        D Offline
        dna909
        schrieb am zuletzt editiert von
        #3

        @Lucky:

        Moin,

        gibt es eine Möglichkeit einen State der zur Laufzeit erstellt wurde im Skript abzufragen ?

        der 'Pfad' ist Teilweise vorher bekannt und würde in etwa javascript.0.Spotify.Devices.xxxx.Play lauten. xxxx ist nicht vorhersehbar !

        on({id:'javascript.0.Spotify.xxxx.Play',val:true}, function (obj){
          //bla bla 
          });
        

        würde ja nicht gehen… `

        Ich gehe mal davon aus, das xxxx irgendwann bekannt ist. Dann könntest Du, wenn der Wert von xxxx sich ändert, den State in einer Variable zusammenbauen.

        Dann fragst Du einfach die Variable ab:

        on({id: variable ,val:true}, function (obj){
          //bla bla 
          });
        

        Hoffe das ist verständlich ;)

        P.S.: eine Alternative wäre dann noch RegExp (siehe Beschreibung vom Javascript-Adapter).

        mfg dna909

        Intel NUC7PJYH mit Proxmox, Odroid U2, CCU2, Philips Hue, ESP8266, Xiaomi Robot, Google Chromecast Audio, Instar 6012HD, Bosch HNG6764S6

        1 Antwort Letzte Antwort
        0
        • AlCalzoneA Offline
          AlCalzoneA Offline
          AlCalzone
          Developer
          schrieb am zuletzt editiert von
          #4

          @Lucky:

          xxxx ist nicht vorhersehbar ! `

          Wenn du zumindest ungefährt weißt, wie das aussehen wird, gehts mit RegExp:

          1. Fall: xxx sind Ziffern (0-9):

          on({id: /javascript\.0\.spotify\.\d+\.play/i, val:true}, [...])
          

          2. Fall: xxx sind Buchstaben/Ziffern/Unterstrich:

          on({id: /javascript\.0\.spotify\.\w+\.play/i, val:true}, [...])
          

          Andernfalls sag nochmal Bescheid, dann passen wir das Muster an.

          Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

          1 Antwort Letzte Antwort
          0
          • L Offline
            L Offline
            Lucky
            schrieb am zuletzt editiert von
            #5

            die beiden Varianten funktionieren

              $('state[state.id=*.play]').on(function (obj) {
              console.log('GEDRÜCKT 3')
            });
            
              $('state[id=.play]').on(function (obj) {
              console.log('GEDRÜCKT 4')
            
            });
            

            allerdings nur wenn Role nicht als Button definiert ist, allerdings würde ich gerne bei Button bleiben, gibts da ne Möglichkeit ?

            1 Antwort Letzte Antwort
            0
            • AlCalzoneA Offline
              AlCalzoneA Offline
              AlCalzone
              Developer
              schrieb am zuletzt editiert von
              #6

              Meine Variante funktioniert nicht?

              Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

              1 Antwort Letzte Antwort
              0
              • L Offline
                L Offline
                Lucky
                schrieb am zuletzt editiert von
                #7

                nein, leider nicht ..

                1 Antwort Letzte Antwort
                0
                • L Offline
                  L Offline
                  Lucky
                  schrieb am zuletzt editiert von
                  #8
                  on({id: /\.play$/, val:true},function (obj){
                   console.log('GEDRÜCKT 5')
                    });
                  
                  

                  funktioniert !

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

                    Und diese Variante ?

                    on({id: /^javascript\.0\.Spotify\..+\.play$/}, function (obj){
                      log('gedrückt: ' + obj.id);
                    });
                    

                    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
                    • AlCalzoneA Offline
                      AlCalzoneA Offline
                      AlCalzone
                      Developer
                      schrieb am zuletzt editiert von
                      #10

                      @Lucky:

                      on({id: /\.play$/, val:true},function (obj){
                       console.log('GEDRÜCKT 5')
                        });
                      
                      

                      funktioniert ! `
                      Hat aber den Nachteil, dass ALLE States gefunden werden, die auf ".play" enden, nicht nur die in javascript.0.Spotify. Probier mal Pauls Variante

                      Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                      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

                      587

                      Online

                      32.6k

                      Benutzer

                      82.3k

                      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