Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. [gelöst] Subscription auf Sub-Channel Änderung?

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    [gelöst] Subscription auf Sub-Channel Änderung?

    This topic has been deleted. Only users with topic management privileges can see it.
    • moelski
      moelski last edited by moelski

      Moin !

      Kann ich eine Subscription erzeugen in JavaScript um auf das erstellen eines Channels zu reagieren?
      Ich versuche damit gerade dem Spotify Adapter ein paar Probleme abzugewöhnen ...

      Ich habe folgendes Object (Channel): spotify-premium.0.devices
      Wenn dort jetzt ein Sub-Channel (im Beispiel Channel1 oder Channel2) eingefügt oder gelöscht wird würde ich da gerne drauf reagieren.

      Beispiel:

      spotify-premium.0.devices            (zu ueberwachender Channel)
      spotify-premium.0.devices.Channel1 
      spotify-premium.0.devices.Channel2
      

      Versucht habe ich es so:

      // mittels Regex
      on({id: /^spotify-premium\.0\.devices$/, change: "ne"}, refreshDeviceListRegex);
      // Zusammenkopiert :-)
      on('channel:spotify-premium.0.devices.*', refreshDeviceListRegex);
      

      Aber leider lösen beide Subscriptions nie aus.

      Grüße Dominik

      M paul53 2 Replies Last reply Reply Quote 0
      • M
        MCU @moelski last edited by MCU

        @moelski Vielleicht mal so:

        on({id: Array.prototype.slice.apply($("channel[state.id=spotify-premium.0.devices.*]")), change: "ne"}, function (obj) {
        var value = obj.state.val;
        var oldValue = obj.oldState.val;
        refreshDeviceListRegex;
        }
        });

        Für jeden einzelnen Channel statt devices.* -> devices.*1 oder devices.*2 probieren.

        moelski 1 Reply Last reply Reply Quote 0
        • moelski
          moelski @MCU last edited by

          @MCU
          Ok werde ich gleich mal testen. Die Syntax sieht schon ... sagen wir mal ... gescheidig kompliziert aus 🙂

          Grüße & Danke

          M 1 Reply Last reply Reply Quote 0
          • M
            MCU @moelski last edited by

            @moelski Habe es einfach von einem BLOCKLY Beispiel auf Dein Channel umgesetzt.

            iobroker-channel-logik.PNG

            1 Reply Last reply Reply Quote 0
            • paul53
              paul53 @moelski last edited by

              @moelski sagte:

              ein Sub-Channel (im Beispiel Channel1 oder Channel2) eingefügt oder gelöscht wird würde ich da gerne drauf reagieren.

              Es kann nur auf Datenpunkte getriggert werden. Gelöschte Datenpunkte triggern nicht mehr.

              moelski 1 Reply Last reply Reply Quote 0
              • moelski
                moelski @paul53 last edited by

                Hmm ok, dann macht es eher Sinn wenn ich die Liste einfach alle 10 Minuten neu erstellen lasse.
                Denn die wichtigen Devices in der Spotify Liste sind eh fest. Es geht mir nur um das entfernen der Browser Devices wenn die nicht mehr verfügbar sind.
                Die Lösung wäre dann diese:

                ListScheduler = schedule('*/10 * * * *', refreshDeviceList);
                

                Nicht ganz so elegant, aber für meine Zwecke ausreichend.

                Danke trotzdem für die Hilfe.

                Grüße Dominik

                1 Reply Last reply Reply Quote 0
                • First post
                  Last post

                Support us

                ioBroker
                Community Adapters
                Donate

                656
                Online

                31.8k
                Users

                80.0k
                Topics

                1.3m
                Posts

                javascript
                3
                6
                283
                Loading More Posts
                • Oldest to Newest
                • Newest to Oldest
                • Most Votes
                Reply
                • Reply as topic
                Log in to reply
                Community
                Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                The ioBroker Community 2014-2023
                logo