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. Visualisierung
  4. Wie mit vis Button ein Event in einem Adapter auslösen?

NEWS

  • Neues YouTube-Video: Visualisierung im Devices-Adapter
    BluefoxB
    Bluefox
    11
    1
    320

  • Neuer ioBroker-Blog online: Monatsrückblick März/April 2026
    BluefoxB
    Bluefox
    8
    1
    1.9k

  • Verwendung von KI bitte immer deutlich kennzeichnen
    HomoranH
    Homoran
    11
    1
    788

Wie mit vis Button ein Event in einem Adapter auslösen?

Geplant Angeheftet Gesperrt Verschoben Visualisierung
6 Beiträge 4 Kommentatoren 2.6k 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
    stefan0875
    schrieb am zuletzt editiert von
    #1

    Hallo zusammen

    nach längerem mitlesen hier im Forum hab ich mich nun doch mal angemeldet und komme auch gleich mit der ersten Frage :-)

    Ich habe einen Adapter geschrieben der mir Werte aus einer externen Quelle zur Verfügung stellt.

    Ich würde jetzt gerne beim Druck eines Buttons auf einer vis Oberfläche, Code in meinem Adapter ausführen.

    Also quasi einen Eventhandler im Adapter triggern.

    Was wäre hier der richtige Weg das zu realisieren?

    Danke für eure Hilfe

    Gruß

    Stefan

    1 Antwort Letzte Antwort
    0
    • Jeeper.atJ Offline
      Jeeper.atJ Offline
      Jeeper.at
      schrieb am zuletzt editiert von
      #2

      Hallo,

      du generierst einen Datenpunkt.

      Auf diesen horcht dein Script.

      Dieser Datenpunkt kann mit vielen verschiedenen Widgets aus VIS ändern.

      Lg

      Günther

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

        Hallo Stefan,

        willkommen im Forum. Und dann gleich im ersten Post einen Adapter-Ankündigung, super!

        Du kannst natürlich auch im Adapter einen State anlegen und den überwachen. Nennen wir in "trigger".

        adaptername.0.trigger
        

        Dann kannst du den mitadapter.on("adaptername.0.trigger")natürlich auch überwachen. Wenn die Änderungen nur aus VIS erwünscht sind, kannst die Überwachung mit````
        "from: system.adapter.web.0"

        
        [https://github.com/ioBroker/ioBroker/wi … ant-events](https://github.com/ioBroker/ioBroker/wiki/Adapter-Development-Documentation#most-important-events)
        
        States anderer Adapter lassen sich damit überwachen:
        

        adapter.subscribeForeignStates

        
        Diese Seite gesehen?
        
        [https://github.com/ioBroker/ioBroker/wi … #functions](https://github.com/ioBroker/ioBroker/wiki/Adapter-Development-Documentation#functions)
        
        Gruß
        
        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
        • S Offline
          S Offline
          stefan0875
          schrieb am zuletzt editiert von
          #4

          @pix:

          Hallo Stefan,

          willkommen im Forum. Und dann gleich im ersten Post einen Adapter-Ankündigung, super! `
          Vielen Dank erst mal für die Unterstützung hier!

          Ich spiele erst noch viel rum und versuche da einen Einstieg in die JavaScript und nodeJS Welt zu bekommen.

          Von einem nutzbaren Adapter für die Allgemeinheit bin ich noch weit entfernt wie du an meinen laienhaften Fragen merkst

          @pix:

          Du kannst natürlich auch im Adapter einen State anlegen und den überwachen. Nennen wir in "trigger".

          adaptername.0.trigger
          ```` `  
          

          Wie genau würdest du den State anlegen? Bisher habe ich es z.B so gemacht:

          adapter.setObject('trigger', {
                  type: 'state',
                  common: {
                      name: 'trigger',
                      type: 'boolean',
          	    role: 'switch'
                  },
                  native: {}
              });
          

          @pix:

          Dann kannst du den mitadapter.on("adaptername.0.trigger")natürlich auch überwachen. Wenn die Änderungen nur aus VIS erwünscht sind, kannst die Überwachung mit"from: system.adapter.web.0"einschränken `

          Dazu muss ich mich aber erst subscriben, oder?

          adapter.subscribeStates('trigger');
          

          Allerdings wird jetzt zwar der > adapter.stateChanged() notifiziert,

          nicht aber mein

          adapter.on('trigger', function () {
          		adapter.log.info("Trigger triggered");
          	});
          

          Bisher ändere ich die States auch nur über den Admin/Objekte. Wie das dann über VIS geht muss ich auch noch lernen. Mit VIS hab ich bisher noch gar nichts gemacht.

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

            Das ist nicht so richtig:

            adapter.on('trigger', function () {
                  adapter.log.info("Trigger triggered");
               });
            

            So sollte es sein:

            adapter.on('stateChange', function (id, state) {
                if (!state || state.ack) return;
            
                // Warning, state can be null if it was deleted
            
                if (id === adapter.namespace + '.trigger') {
                	// do something
                    adapter.log.debug('stateChange ' + id + ' ' + JSON.stringify(state));
                }
            });
            

            https://github.com/ioBroker/ioBroker.te … ain.js#L59

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

              Danke Bluefox

              So hab ich es dann in meinem Samsung2016 Adapter gemacht, weil es anders nicht funktionierte.

              Dachte aber das wäre eher eine Notlösung und das 'stateChange' nicht dafür gemacht.

              Gut zu wissen dass es dann doch so richtig ist.

              Obwohl ja ein 'adpater.on('varName', function(){});' schon elegant(er) wäre.

              Wie genau würdest du denn 'trigger' im setObject erzeugen?

              Ich denke ja, als boolean, aber ich bin mir bei der "Rolle" nie sicher. Was hat die für eine Bedeutung?

              Und zum Schluss noch die dumme Newbie Frage: Wie trigger ich den State dann über einen VIS button?

              Danke und Gruß

              Stefan

              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

              448

              Online

              32.9k

              Benutzer

              83.0k

              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