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. ioBroker Allgemein
  4. Javascript: subscribe from

NEWS

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    22
    1
    1.2k

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

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    14
    1
    2.4k

Javascript: subscribe from

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
6 Beiträge 4 Kommentatoren 2.0k 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.
  • S Offline
    S Offline
    steinwedel
    schrieb am zuletzt editiert von
    #1

    Ein kleiner Wunsch, der aber hoffentlich vielen das Programmieren erleichtert:

    Um auf Ereignisse zu reagieren, werte ich häufig selbst angelegte Objekte aus (quasi variablen). Dieses geschieht per subscribe/on.

    Wenn man per Javascript den Wert eines Objektes verändert, reagiert subscribe/on zunächst nicht. Man muss dann zusätzlich from:system.adapter.javascript.0 angeben. Den Sinn verstehe ich nicht. Schön wäre es, wenn man hier auch "any" angeben könnte. Zur Zeit habe ich nämlich das Problem, dass ich das subscribe wegen des Verhaltens mehrfach schreiben muss. Vielleicht wäre es auch sinnvoll, from:'any' als default zu setzen. Wer das ändern möchte, kann das ja mit from:… machen.

    Gruß Gerhard

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

      Eigentlich "from" ist nicht erforderlich und wird normallerweise ignoriert.

      Was für ein Szenario hast du?

      1 Antwort Letzte Antwort
      0
      • S Offline
        S Offline
        steinwedel
        schrieb am zuletzt editiert von
        #3

        Ein Beispiels für ein Szenario:

        In einem View habe ich eine Drop-Downbox (jqui Select ValueList) für verschiedene Stimmungen. Diese habe ich mit einem Objekt verknüpft, welches ich mit "createState("Szene",0);" angelegt habe. Wenn sich das Objekt (Web-Oberfläche oder per Javaskript) ändert soll folgendes Skript ausgeführt werden:

        subscribe({id: "javascript.0.Szene", val: true}, function (obj) {
                    setNextScene(scene);
                });
        
        

        Das bekomme ich nur hin, indem ich zusätzlich folgendes Skript habe:

        subscribe({id: "javascript.0.Szene",
                change:'any',
                from : 'system.adapter.web.0'
            }, function (obj) {
                setScene(scene);
        });
        
        

        Anscheinend kommt es darauf an, wer den Inhalt von Objekten ändert. Deswegen meine Anregung.

        1 Antwort Letzte Antwort
        0
        • P Offline
          P Offline
          pix
          schrieb am zuletzt editiert von
          #4

          @steinwedel:

          Wenn man per Javascript den Wert eines Objektes verändert, reagiert subscribe/on zunächst nicht. `
          @steinwedel:

          In einem View habe ich eine Drop-Downbox (jqui Select ValueList) für verschiedene Stimmungen. Diese habe ich mit einem Objekt verknüpft, welches ich mit "createState("Szene",0);" angelegt habe. `
          Das ist eine Veränderung in VIS, nicht in Javascript. Habe auch einige solche Konstrukte. Ich nehme auch "from" dafür. Wenn du aber in Javascript mit setState agierst, brauchst du das nicht.

          Andererseits würde zB das State val Widget in VIS gar nicht mehr funktionieren, wenn nicht auch Javascript auf die Änderung nach Tastendruck reagierte. Ich bin jetzt auch verwirrt. :roll:

          Pix

          ioBroker auf Ubuntu in Proxmox (früher Mac mini (bis OS X 10.12.6 Sierra), VIS via iOS; angeschlossen: Homematic CCU2, Homepilot 1, ConBee II, einige Wemos, Sonos, Unifi CK+Protect, Homekit, Homebridge; KEIN blockly! Github-Profil

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

            @steinwedel:

            subscribe({id: "javascript.0.Szene", val: true}, function (obj) {
                        setNextScene(scene);
                    });
            
            ```` `  
            

            Hier wird ja nur auf eine Veränderung reagiert, wenn "Szene" den Wert true hat. Dies wird aber in deinen benutzen Widget eventuell nicht passieren.
            @steinwedel:

            subscribe({id: "javascript.0.Szene",
                    change:'any',
                    from : 'system.adapter.web.0'
                }, function (obj) {
                    setScene(scene);
            });
            
            ```` `  
            

            Hier wird auf jede Veränderung reagiert!!!

            Entwickler vom: - Viessman Adapter
            - Alarm Adapter

            1 Antwort Letzte Antwort
            0
            • S Offline
              S Offline
              steinwedel
              schrieb am zuletzt editiert von
              #6

              Gut gesehen. Ist aber auch so gewollt. In meiner Liste, die ausgewählt wird, ist der Eintrag 0 = Licht aus. Per Webseite ist es schön, das Licht ausschalten zu können. Wenn man den Taster zum Wechseln der Szene drückt, so sollte das Licht nicht ausgeschaltet werden. Dazu gibt es den eigentlichen Lichtschalter. Hier macht also diese merkwürdige Funktionalität sogar Sinn.

              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
              FAQ Cloud / IOT
              HowTo: Node.js-Update
              HowTo: Backup/Restore
              Downloads
              BLOG

              731

              Online

              32.5k

              Benutzer

              81.7k

              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