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. Hardware
  4. Befehle von Neeo nach ioBroker senden

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.5k

Befehle von Neeo nach ioBroker senden

Geplant Angeheftet Gesperrt Verschoben Hardware
neeo
62 Beiträge 3 Kommentatoren 5.7k Aufrufe 3 Watching
  • Ä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.
  • K Kusi

    @mickym Weist du wofür system.host.raspberrypi ist? Dort hat man den Datenpunkt "alive", welcher anzeigt ob der Adapter gestartet oder beendet ist. Mit diesem könnte man das Skript starten...

    mickymM Offline
    mickymM Offline
    mickym
    Most Active
    schrieb am zuletzt editiert von
    #13

    @Kusi Nein weiß ich leider nicht. Im Prinzip gibt es zu jedem Adapter ein "alive" der true wird, sobald der Adapter gestartet ist - also auch den Javascript-Adapter selbst. Nur Du brauchst ja wieder ein Script, der auch diese Datenpunkte auswertet. Wie willst Du das anstellen?

    Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

    K 1 Antwort Letzte Antwort
    0
    • mickymM mickym

      @Kusi Nein weiß ich leider nicht. Im Prinzip gibt es zu jedem Adapter ein "alive" der true wird, sobald der Adapter gestartet ist - also auch den Javascript-Adapter selbst. Nur Du brauchst ja wieder ein Script, der auch diese Datenpunkte auswertet. Wie willst Du das anstellen?

      K Offline
      K Offline
      Kusi
      schrieb am zuletzt editiert von
      #14

      @mickym Den Datenpunkt "system.host.raspberrypi.alive" kann man nicht benutzen, da zu diesem Zeitpunkt der Adapter Javascript noch nicht läuft, somit die Änderung nicht wahrgenommen wird.

      Ich habe es jetzt mit dem Datenpunkt "system.adapter.simple-api.0.alive" gelöst und es funktioniert:

      // Beschreibe diese Funktion …
      function ioBroker_starten() {
          exec('node /home/pi/node_modules/ioBroker');
      }
      
      on({id: "system.adapter.simple-api.0.alive"/*simple-api.0 alive*/, val: true}, function (obj) {
        var value = obj.state.val;
        var oldValue = obj.oldState.val;
        ioBroker_starten();
      });
      
      mickymM 1 Antwort Letzte Antwort
      0
      • K Kusi

        @mickym Den Datenpunkt "system.host.raspberrypi.alive" kann man nicht benutzen, da zu diesem Zeitpunkt der Adapter Javascript noch nicht läuft, somit die Änderung nicht wahrgenommen wird.

        Ich habe es jetzt mit dem Datenpunkt "system.adapter.simple-api.0.alive" gelöst und es funktioniert:

        // Beschreibe diese Funktion …
        function ioBroker_starten() {
            exec('node /home/pi/node_modules/ioBroker');
        }
        
        on({id: "system.adapter.simple-api.0.alive"/*simple-api.0 alive*/, val: true}, function (obj) {
          var value = obj.state.val;
          var oldValue = obj.oldState.val;
          ioBroker_starten();
        });
        
        mickymM Offline
        mickymM Offline
        mickym
        Most Active
        schrieb am zuletzt editiert von mickym
        #15

        @Kusi Das ist eine gute und schlüssige Idee - da der Adapter ja nötig ist. Und nachdem Du es ja getestet hast ist das ja gelöst. Ich hatte nur Bedenken wenn der dass der Datenpunkt "system.adapter.simple-api.0.alive bereits true ist, bevor der Javasript Adapter läuft - aber das scheint dann ja nicht der Fall zu sein. :slightly_smiling_face:

        Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

        K 1 Antwort Letzte Antwort
        0
        • mickymM mickym

          @Kusi Das ist eine gute und schlüssige Idee - da der Adapter ja nötig ist. Und nachdem Du es ja getestet hast ist das ja gelöst. Ich hatte nur Bedenken wenn der dass der Datenpunkt "system.adapter.simple-api.0.alive bereits true ist, bevor der Javasript Adapter läuft - aber das scheint dann ja nicht der Fall zu sein. :slightly_smiling_face:

          K Offline
          K Offline
          Kusi
          schrieb am zuletzt editiert von
          #16

          @mickym ich müsste nochmals genau hinsehen, in welcher Reihenfolge die Adapter starten. So funktioniert es jedenfalls einwandfrei und wie du richtig sagtest, der SimpleAPI-Adapter habe ich gewählt, weil dieser für Neeo erforderlich ist.

          K 1 Antwort Letzte Antwort
          0
          • K Kusi

            @mickym ich müsste nochmals genau hinsehen, in welcher Reihenfolge die Adapter starten. So funktioniert es jedenfalls einwandfrei und wie du richtig sagtest, der SimpleAPI-Adapter habe ich gewählt, weil dieser für Neeo erforderlich ist.

            K Offline
            K Offline
            Kusi
            schrieb am zuletzt editiert von Kusi
            #17

            @Kusi

            actualDriverObject.addButton({ name: "button-a", label: "Button A" }); // This makes a new button named button-a, on the remote its shown as Button A
            

            Kann man den Button zu einem Switch (Schalter: aus-ein) ändern?
            Gibt es die Möglichkeit einer Rückmeldung an Neeo? Sprich, wenn der Datenpunkt auf true gewechselt wird, der Schalter dann auf der Neeo auch auf "ein" wechselt?

            mickymM 1 Antwort Letzte Antwort
            0
            • K Kusi

              @Kusi

              actualDriverObject.addButton({ name: "button-a", label: "Button A" }); // This makes a new button named button-a, on the remote its shown as Button A
              

              Kann man den Button zu einem Switch (Schalter: aus-ein) ändern?
              Gibt es die Möglichkeit einer Rückmeldung an Neeo? Sprich, wenn der Datenpunkt auf true gewechselt wird, der Schalter dann auf der Neeo auch auf "ein" wechselt?

              mickymM Offline
              mickymM Offline
              mickym
              Most Active
              schrieb am zuletzt editiert von mickym
              #18

              @Kusi Das Problem ist, dass Du das jemand fragen musst, der sich mit Neeo ausgekennt. Zum einen bietet ja kannst du sicher von iobroker HTTP Befehle zu Deinem Brain zu schicken, aber ich wüßte nicht, wie man das in Neeo verarbeiten sollte.

              Das gleiche gilt, dass selbst wenn Neeo den iobroker abfragen würde - wie wird es dort weiterverarbeitet.

              Die Simple API Schnittstelle bietet sehr wohl die Möglichkeit jeden x-beliebigen Punkt aus iobroker auszulesen:

              http://192.168.1.15:8087/getPlainValue/javascript.0.Eigene_Datenpunkte.Neeo-Button
              

              oder alle Infos zum DP

              http://192.168.1.15:8087/get/javascript.0.Eigene_Datenpunkte.Neeo-Button
              

              Generell kannst die simple API ohne Parameter aufrufen und Du siehst die Möglichkeiten - das Problem ist die Neeo Seite. ;)

              Im Prinzip hängt das von dem Widget ab: s. SDK https://github.com/NEEOInc/neeo-sdk#power-control-capability

              siehe.
              Power Control Capability
              If your device supports Power control (power on device, power off device), add this capability - the generated recipe will power on and off your device automatically.

              You need to add support for the following buttons (addButton({..):

              POWER ON
              POWER OFF
              or just use the shortcut function .addButtonGroup('POWER')

              aber wie Du das dann machst - da muss sich jemand wirklich Neeo besser auskennen - da bin ich überfragt!

              Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

              K 1 Antwort Letzte Antwort
              0
              • mickymM mickym

                @Kusi Das Problem ist, dass Du das jemand fragen musst, der sich mit Neeo ausgekennt. Zum einen bietet ja kannst du sicher von iobroker HTTP Befehle zu Deinem Brain zu schicken, aber ich wüßte nicht, wie man das in Neeo verarbeiten sollte.

                Das gleiche gilt, dass selbst wenn Neeo den iobroker abfragen würde - wie wird es dort weiterverarbeitet.

                Die Simple API Schnittstelle bietet sehr wohl die Möglichkeit jeden x-beliebigen Punkt aus iobroker auszulesen:

                http://192.168.1.15:8087/getPlainValue/javascript.0.Eigene_Datenpunkte.Neeo-Button
                

                oder alle Infos zum DP

                http://192.168.1.15:8087/get/javascript.0.Eigene_Datenpunkte.Neeo-Button
                

                Generell kannst die simple API ohne Parameter aufrufen und Du siehst die Möglichkeiten - das Problem ist die Neeo Seite. ;)

                Im Prinzip hängt das von dem Widget ab: s. SDK https://github.com/NEEOInc/neeo-sdk#power-control-capability

                siehe.
                Power Control Capability
                If your device supports Power control (power on device, power off device), add this capability - the generated recipe will power on and off your device automatically.

                You need to add support for the following buttons (addButton({..):

                POWER ON
                POWER OFF
                or just use the shortcut function .addButtonGroup('POWER')

                aber wie Du das dann machst - da muss sich jemand wirklich Neeo besser auskennen - da bin ich überfragt!

                K Offline
                K Offline
                Kusi
                schrieb am zuletzt editiert von Kusi
                #19

                @mickym Die Volume-Gruppe konnte ich einfügen.
                903be710-b85f-4991-aa5a-39ba8521d858-image.png

                Wie ich allerdings z.B. nur Volume UP einfüge, ist mir noch ein Rätsel.
                Wobei ich natürlich die ganze Volume-Gruppe zum Treiber hinzufügen kann, und dann nur Volume UP auf die Benutzeroberfläche.

                Ein Slider lässt sich auch einfügen...
                18a5a291-7e2d-4d05-ad08-3fa6a5b895bf-image.png

                Der Switch konnte ich auch einfügen...
                31e254da-6b46-454c-a8de-0c4228d4e326-image.png

                Weist du wie ich

                node /home/pi/node_modules/ioBroker
                

                stoppen kann??

                K mickymM 2 Antworten Letzte Antwort
                0
                • K Kusi

                  @mickym Die Volume-Gruppe konnte ich einfügen.
                  903be710-b85f-4991-aa5a-39ba8521d858-image.png

                  Wie ich allerdings z.B. nur Volume UP einfüge, ist mir noch ein Rätsel.
                  Wobei ich natürlich die ganze Volume-Gruppe zum Treiber hinzufügen kann, und dann nur Volume UP auf die Benutzeroberfläche.

                  Ein Slider lässt sich auch einfügen...
                  18a5a291-7e2d-4d05-ad08-3fa6a5b895bf-image.png

                  Der Switch konnte ich auch einfügen...
                  31e254da-6b46-454c-a8de-0c4228d4e326-image.png

                  Weist du wie ich

                  node /home/pi/node_modules/ioBroker
                  

                  stoppen kann??

                  K Offline
                  K Offline
                  Kusi
                  schrieb am zuletzt editiert von
                  #20

                  @Kusi Folgendes ist der Code, um einen Switch einzufügen:

                  actualDriverObject.addSwitch({ name: 'Schalter', label: 'Schalter' },{setter: (deviceId, newValue) => switchState = newValue,getter: (deviceId) => switchState,})
                  

                  Hättest du mir eine Idee, wie ich die Weiterleitung zu ioBroker konfigurieren muss? Ich möchte ja gerne 2 States, einmal für Schalter links und einmal für Schalter rechts.

                    if (buttonName == "Switch") {
                      http("http://192.168.1.15:8087/set/javascript.0.Eigene_Datenpunkte.Neeo-Button?value=S1");
                    }
                  
                  mickymM UncleSamU 2 Antworten Letzte Antwort
                  0
                  • K Kusi

                    @mickym Die Volume-Gruppe konnte ich einfügen.
                    903be710-b85f-4991-aa5a-39ba8521d858-image.png

                    Wie ich allerdings z.B. nur Volume UP einfüge, ist mir noch ein Rätsel.
                    Wobei ich natürlich die ganze Volume-Gruppe zum Treiber hinzufügen kann, und dann nur Volume UP auf die Benutzeroberfläche.

                    Ein Slider lässt sich auch einfügen...
                    18a5a291-7e2d-4d05-ad08-3fa6a5b895bf-image.png

                    Der Switch konnte ich auch einfügen...
                    31e254da-6b46-454c-a8de-0c4228d4e326-image.png

                    Weist du wie ich

                    node /home/pi/node_modules/ioBroker
                    

                    stoppen kann??

                    mickymM Offline
                    mickymM Offline
                    mickym
                    Most Active
                    schrieb am zuletzt editiert von mickym
                    #21

                    @Kusi nun im Prinzip startet dein JavaScript Adapter den Prozess aber wahrscheinlich nicht als Tochterprozess. Da musst mit ps irgendwie den Prozess identifizieren und dann wohl mit kill abschießen. Da sollten Dir die linux freaks helfen können. Oder Leute die sich mit Node.js auskennen

                    Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                    K 1 Antwort Letzte Antwort
                    0
                    • mickymM mickym

                      @Kusi nun im Prinzip startet dein JavaScript Adapter den Prozess aber wahrscheinlich nicht als Tochterprozess. Da musst mit ps irgendwie den Prozess identifizieren und dann wohl mit kill abschießen. Da sollten Dir die linux freaks helfen können. Oder Leute die sich mit Node.js auskennen

                      K Offline
                      K Offline
                      Kusi
                      schrieb am zuletzt editiert von
                      #22

                      @mickym sagte in Befehle von Neeo nach ioBroker senden:

                      @Kusi JavaScript Adapter den Prozess aber wahrscheinlich nicht als Tochterprozess

                      Momentan starte ich ihn per Putty, damit ich ihn mit dem Schliessen von Putty beende.
                      So kann ich einfach testen...

                      mickymM 1 Antwort Letzte Antwort
                      0
                      • K Kusi

                        @Kusi Folgendes ist der Code, um einen Switch einzufügen:

                        actualDriverObject.addSwitch({ name: 'Schalter', label: 'Schalter' },{setter: (deviceId, newValue) => switchState = newValue,getter: (deviceId) => switchState,})
                        

                        Hättest du mir eine Idee, wie ich die Weiterleitung zu ioBroker konfigurieren muss? Ich möchte ja gerne 2 States, einmal für Schalter links und einmal für Schalter rechts.

                          if (buttonName == "Switch") {
                            http("http://192.168.1.15:8087/set/javascript.0.Eigene_Datenpunkte.Neeo-Button?value=S1");
                          }
                        
                        mickymM Offline
                        mickymM Offline
                        mickym
                        Most Active
                        schrieb am zuletzt editiert von
                        #23

                        @Kusi said in Befehle von Neeo nach ioBroker senden:

                        @Kusi Folgendes ist der Code, um einen Switch einzufügen:

                        actualDriverObject.addSwitch({ name: 'Schalter', label: 'Schalter' },{setter: (deviceId, newValue) => switchState = newValue,getter: (deviceId) => switchState,})
                        

                        Hättest du mir eine Idee, wie ich die Weiterleitung zu ioBroker konfigurieren muss? Ich möchte ja gerne 2 States, einmal für Schalter links und einmal für Schalter rechts.

                          if (buttonName == "Switch") {
                            http("http://192.168.1.15:8087/set/javascript.0.Eigene_Datenpunkte.Neeo-Button?value=S1");
                          }
                        

                        Ehrlich gesagt verstehe ich die Syntax nicht ganz. Im Prinzip müsstest du in einer variablen - vielleicht newValue die Stellung des Schalters speichern. Zum schuß schreibst dann den hatte Befehl und hängst den Inhalt als String hinter das = an.

                        Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                        K 1 Antwort Letzte Antwort
                        0
                        • K Kusi

                          @mickym sagte in Befehle von Neeo nach ioBroker senden:

                          @Kusi JavaScript Adapter den Prozess aber wahrscheinlich nicht als Tochterprozess

                          Momentan starte ich ihn per Putty, damit ich ihn mit dem Schliessen von Putty beende.
                          So kann ich einfach testen...

                          mickymM Offline
                          mickymM Offline
                          mickym
                          Most Active
                          schrieb am zuletzt editiert von
                          #24

                          @Kusi das müsstest auch mit CTRL+Z zu beenden sein

                          Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                          K 1 Antwort Letzte Antwort
                          0
                          • mickymM mickym

                            @Kusi said in Befehle von Neeo nach ioBroker senden:

                            @Kusi Folgendes ist der Code, um einen Switch einzufügen:

                            actualDriverObject.addSwitch({ name: 'Schalter', label: 'Schalter' },{setter: (deviceId, newValue) => switchState = newValue,getter: (deviceId) => switchState,})
                            

                            Hättest du mir eine Idee, wie ich die Weiterleitung zu ioBroker konfigurieren muss? Ich möchte ja gerne 2 States, einmal für Schalter links und einmal für Schalter rechts.

                              if (buttonName == "Switch") {
                                http("http://192.168.1.15:8087/set/javascript.0.Eigene_Datenpunkte.Neeo-Button?value=S1");
                              }
                            

                            Ehrlich gesagt verstehe ich die Syntax nicht ganz. Im Prinzip müsstest du in einer variablen - vielleicht newValue die Stellung des Schalters speichern. Zum schuß schreibst dann den hatte Befehl und hängst den Inhalt als String hinter das = an.

                            K Offline
                            K Offline
                            Kusi
                            schrieb am zuletzt editiert von Kusi
                            #25

                            @mickym sagte in Befehle von Neeo nach ioBroker senden:

                            vielleicht newValue die Stellung des Schalters speichern. Zum schuß schreibst dann den hatte Befehl und hängst den Inhalt als String hinter das = an.

                            Hast du mir ein Beispiel?
                            Vielleicht hilft dir dies etwas... Für mich ist dies nur Chinesisch...
                            4c5be137-885d-4227-aa1f-749fd048e2f8-image.png

                            1 Antwort Letzte Antwort
                            0
                            • mickymM mickym

                              @Kusi das müsstest auch mit CTRL+Z zu beenden sein

                              K Offline
                              K Offline
                              Kusi
                              schrieb am zuletzt editiert von Kusi
                              #26

                              @mickym sagte in Befehle von Neeo nach ioBroker senden:

                              mit CTRL+Z beenden

                              Ich kann dann zwar wieder etwas eingeben in Putty, aber der Service/Dienst wird nicht beendet. Muss dann stets das Raspberry neu starten.

                              1 Antwort Letzte Antwort
                              0
                              • K Kusi

                                @Kusi Folgendes ist der Code, um einen Switch einzufügen:

                                actualDriverObject.addSwitch({ name: 'Schalter', label: 'Schalter' },{setter: (deviceId, newValue) => switchState = newValue,getter: (deviceId) => switchState,})
                                

                                Hättest du mir eine Idee, wie ich die Weiterleitung zu ioBroker konfigurieren muss? Ich möchte ja gerne 2 States, einmal für Schalter links und einmal für Schalter rechts.

                                  if (buttonName == "Switch") {
                                    http("http://192.168.1.15:8087/set/javascript.0.Eigene_Datenpunkte.Neeo-Button?value=S1");
                                  }
                                
                                UncleSamU Offline
                                UncleSamU Offline
                                UncleSam
                                Developer
                                schrieb am zuletzt editiert von
                                #27

                                @Kusi sagte in Befehle von Neeo nach ioBroker senden:

                                @Kusi Folgendes ist der Code, um einen Switch einzufügen:

                                actualDriverObject.addSwitch({ name: 'Schalter', label: 'Schalter' },{setter: (deviceId, newValue) => switchState = newValue,getter: (deviceId) => switchState,})
                                

                                Hättest du mir eine Idee, wie ich die Weiterleitung zu ioBroker konfigurieren muss? Ich möchte ja gerne 2 States, einmal für Schalter links und einmal für Schalter rechts.

                                  if (buttonName == "Switch") {
                                    http("http://192.168.1.15:8087/set/javascript.0.Eigene_Datenpunkte.Neeo-Button?value=S1");
                                  }
                                

                                Die Funktion addSwitch() speichert ja den Zustand des Schalters in switchState und gibt sie im "getter" auch wieder zurück. Etwas verwirren tut mich, dass du buttonName == "Switch" verwendest, oben den Schalter aber name: 'Schalter' nennst.

                                Mit dem Namen sollten die Buttons unterscheidbar sein:

                                  if (buttonName == "ButtonG") {
                                    http("http://192.168.1.15:8087/set/javascript.0.Eigene_Datenpunkte.Neeo-Button?value=S1");
                                  }
                                  else if (buttonName == "ButtonH") {
                                    http("http://192.168.1.15:8087/set/javascript.0.Eigene_Datenpunkte.Neeo-Button?value=S2");
                                  }
                                

                                Allerdings würde ich für jeden Knopf einen eigenen State verwenden - das macht das Handling etwas einfacher. Im Script (Javascript Adapter) musst du dann einfach change: 'any' verwenden, damit du den Knopfdruck jedes Mal mitbekommst.

                                Bitte bei Problemen mit meinen Adaptern, Issue auf GitHub erfassen: Loxone | I2C | Luxtronik2
                                ♡-lichen Dank an meine Sponsoren

                                K 1 Antwort Letzte Antwort
                                0
                                • UncleSamU UncleSam

                                  @Kusi sagte in Befehle von Neeo nach ioBroker senden:

                                  @Kusi Folgendes ist der Code, um einen Switch einzufügen:

                                  actualDriverObject.addSwitch({ name: 'Schalter', label: 'Schalter' },{setter: (deviceId, newValue) => switchState = newValue,getter: (deviceId) => switchState,})
                                  

                                  Hättest du mir eine Idee, wie ich die Weiterleitung zu ioBroker konfigurieren muss? Ich möchte ja gerne 2 States, einmal für Schalter links und einmal für Schalter rechts.

                                    if (buttonName == "Switch") {
                                      http("http://192.168.1.15:8087/set/javascript.0.Eigene_Datenpunkte.Neeo-Button?value=S1");
                                    }
                                  

                                  Die Funktion addSwitch() speichert ja den Zustand des Schalters in switchState und gibt sie im "getter" auch wieder zurück. Etwas verwirren tut mich, dass du buttonName == "Switch" verwendest, oben den Schalter aber name: 'Schalter' nennst.

                                  Mit dem Namen sollten die Buttons unterscheidbar sein:

                                    if (buttonName == "ButtonG") {
                                      http("http://192.168.1.15:8087/set/javascript.0.Eigene_Datenpunkte.Neeo-Button?value=S1");
                                    }
                                    else if (buttonName == "ButtonH") {
                                      http("http://192.168.1.15:8087/set/javascript.0.Eigene_Datenpunkte.Neeo-Button?value=S2");
                                    }
                                  

                                  Allerdings würde ich für jeden Knopf einen eigenen State verwenden - das macht das Handling etwas einfacher. Im Script (Javascript Adapter) musst du dann einfach change: 'any' verwenden, damit du den Knopfdruck jedes Mal mitbekommst.

                                  K Offline
                                  K Offline
                                  Kusi
                                  schrieb am zuletzt editiert von
                                  #28

                                  @UncleSam sagte in Befehle von Neeo nach ioBroker senden:

                                  Etwas verwirren tut mich, dass du buttonName == "Switch" verwendest, oben den Schalter aber name: 'Schalter' nennst.

                                  Das ist mir gar nicht aufgefallen. Danke für den Hinweis.

                                  K 1 Antwort Letzte Antwort
                                  0
                                  • K Kusi

                                    @UncleSam sagte in Befehle von Neeo nach ioBroker senden:

                                    Etwas verwirren tut mich, dass du buttonName == "Switch" verwendest, oben den Schalter aber name: 'Schalter' nennst.

                                    Das ist mir gar nicht aufgefallen. Danke für den Hinweis.

                                    K Offline
                                    K Offline
                                    Kusi
                                    schrieb am zuletzt editiert von
                                    #29

                                    @Kusi sagte in Befehle von Neeo nach ioBroker senden:

                                    @UncleSam sagte in Befehle von Neeo nach ioBroker senden:

                                    Etwas verwirren tut mich, dass du buttonName == "Switch" verwendest, oben den Schalter aber name: 'Schalter' nennst.

                                    Das ist mir gar nicht aufgefallen. Danke für den Hinweis.

                                    Du meinst damit Datenpunkt?

                                    UncleSamU 1 Antwort Letzte Antwort
                                    0
                                    • K Kusi

                                      @Kusi sagte in Befehle von Neeo nach ioBroker senden:

                                      @UncleSam sagte in Befehle von Neeo nach ioBroker senden:

                                      Etwas verwirren tut mich, dass du buttonName == "Switch" verwendest, oben den Schalter aber name: 'Schalter' nennst.

                                      Das ist mir gar nicht aufgefallen. Danke für den Hinweis.

                                      Du meinst damit Datenpunkt?

                                      UncleSamU Offline
                                      UncleSamU Offline
                                      UncleSam
                                      Developer
                                      schrieb am zuletzt editiert von
                                      #30

                                      @Kusi sagte in Befehle von Neeo nach ioBroker senden:

                                      Du meinst damit Datenpunkt?

                                      Sorry, ich bin auf Englisch unterwegs: genau, state = Datenpunkt.

                                      Bitte bei Problemen mit meinen Adaptern, Issue auf GitHub erfassen: Loxone | I2C | Luxtronik2
                                      ♡-lichen Dank an meine Sponsoren

                                      K 1 Antwort Letzte Antwort
                                      0
                                      • UncleSamU UncleSam

                                        @Kusi sagte in Befehle von Neeo nach ioBroker senden:

                                        Du meinst damit Datenpunkt?

                                        Sorry, ich bin auf Englisch unterwegs: genau, state = Datenpunkt.

                                        K Offline
                                        K Offline
                                        Kusi
                                        schrieb am zuletzt editiert von Kusi
                                        #31

                                        @UncleSam Was ich allerdings noch nicht verstehe, wie ich einem Schalter (aus-ein) die Zuweisung gebe, dass er auf "ein" den Befehl sendet.

                                        actualDriverObject.addSwitch({ name: 'Schalter', label: 'Schalter' },{setter: (deviceId, newValue) => switchState = newValue,getter: (deviceId) => switchState,})
                                        

                                        Die Konfiguration ist mir ein Rätsel und weis ich nicht, wie dies gemacht werden muss.
                                        Und gerne hätte ich dann den Befehl in beide Richtungen (aus und ein), damit ich 2 Befehle absetzen kann.

                                        Ich weis nicht, welche Wörter ich durch was ersetzen muss.

                                        UncleSamU 1 Antwort Letzte Antwort
                                        0
                                        • K Kusi

                                          @UncleSam Was ich allerdings noch nicht verstehe, wie ich einem Schalter (aus-ein) die Zuweisung gebe, dass er auf "ein" den Befehl sendet.

                                          actualDriverObject.addSwitch({ name: 'Schalter', label: 'Schalter' },{setter: (deviceId, newValue) => switchState = newValue,getter: (deviceId) => switchState,})
                                          

                                          Die Konfiguration ist mir ein Rätsel und weis ich nicht, wie dies gemacht werden muss.
                                          Und gerne hätte ich dann den Befehl in beide Richtungen (aus und ein), damit ich 2 Befehle absetzen kann.

                                          Ich weis nicht, welche Wörter ich durch was ersetzen muss.

                                          UncleSamU Offline
                                          UncleSamU Offline
                                          UncleSam
                                          Developer
                                          schrieb am zuletzt editiert von
                                          #32

                                          @Kusi sagte in Befehle von Neeo nach ioBroker senden:

                                          Und gerne hätte ich dann den Befehl in beide Richtungen (aus und ein), damit ich 2 Befehle absetzen kann.

                                          Selber habe ich das noch nie getestet, aber den ganzen Code hast du ja bereits oben:

                                          actualDriverObject.addSwitch({ name: 'Schalter', label: 'Schalter' },{setter: (deviceId, newValue) => switchState = newValue,getter: (deviceId) => switchState,})
                                          

                                          setter und getter sind anonyme Javascript Funktionen. Anstatt nur die Variable zu speichern kannst du darin Code ausführen:

                                          actualDriverObject.addSwitch({ name: 'Schalter', label: 'Schalter' },{
                                            setter: (deviceId, newValue) => {
                                              switchState = newValue;
                                              if (newValue == 'XXXX') {
                                                http("http://192.168.1.15:8087/set/javascript.0.Eigene_Datenpunkte.Neeo-Switch?value=XXXX"
                                              } else {
                                                http("http://192.168.1.15:8087/set/javascript.0.Eigene_Datenpunkte.Neeo-Switch?value=YYYY"
                                              }
                                            },
                                            getter: (deviceId) => switchState,})
                                          

                                          (XXXX und YYYY musst du natürlich noch durch die richten Werte ersetzen, die ich auch nicht kenne. Und wie gesagt: ungetestet!)

                                          Bitte bei Problemen mit meinen Adaptern, Issue auf GitHub erfassen: Loxone | I2C | Luxtronik2
                                          ♡-lichen Dank an meine Sponsoren

                                          K 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

                                          673

                                          Online

                                          32.7k

                                          Benutzer

                                          82.4k

                                          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