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. [Gelöst] Taster doppelt drücken

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.3k

[Gelöst] Taster doppelt drücken

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
javascript
11 Beiträge 2 Kommentatoren 1.1k 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.
  • Tim1988T Offline
    Tim1988T Offline
    Tim1988
    schrieb am zuletzt editiert von Tim1988
    #1

    Hallo,
    um einen Befehl und die Rückmeldung für die Vis in ein Objekt zu bekommen, habe ich hier im Forum für meine Rolläden das folgende Skript gefunden und entsprechend angepasst.

    //Esszimmer
    const idCmd4 = 'knx.0.Rollo_EG_Neubau.Esszimmer.Positionierung';  // Datenpunkt-ID für Kommando
    const idStat4 = 'knx.0.Rollo_EG_Neubau.Esszimmer.Position'; // Datenpunkt-ID für Status
    const idVis4 = 'javascript.0.scriptEnabled.Rolladen.Rolladen_Esszimmer'; // Datenpunkt für gleichzeitige Anzeige / Bedienung
    const js4 = 'system.adapter.javascript.' + instance;
    createState(idVis4, getState(idStat4).val, {type: 'boolean'}); // Datenpunkt erzeugen
    on({id: idVis4, change: 'ne', fromNe: js4}, function(dp) {
    setState(idCmd4, dp.state.val);
    });
    on(idStat4, function(dp) {
    setState(idVis4, dp.state.val, true);
    });
    

    Dies funktioniert auch tadellos.

    Da ich dies auch mit den Tastern machen muss, habe ich das gleiche Skript genommen.
    Hier muss ich aber zum Ein und Ausschalten je zweimal drücken :(
    Die Rückmeldung in der Vis stimmt aber so weit.

    //Büro
    const idCmd1 = 'modbus.0.coils.12458_Taster_Kind 2 Licht Decke AB';  // Datenpunkt-ID für Kommando
    const idStat1 = 'modbus.0.coils.582_KL12_DO7'; // Datenpunkt-ID für Status
    const idVis1 = 'Licht.0.Licht_Büro_Altbau'; // Datenpunkt für gleichzeitige Anzeige / Bedienung
    const js1 = 'system.adapter.javascript.' + instance;
    createState(idVis1, getState(idStat1).val, {type: 'boolean'}); // Datenpunkt erzeugen
    on({id: idVis1, change: 'ne', fromNe: js1}, function(dp) {
    setState(idCmd1, dp.state.val);
    });
    on(idStat1, function(dp) {
    setState(idVis1, dp.state.val, true);
    });
    
    paul53P 1 Antwort Letzte Antwort
    0
    • Tim1988T Tim1988

      Hallo,
      um einen Befehl und die Rückmeldung für die Vis in ein Objekt zu bekommen, habe ich hier im Forum für meine Rolläden das folgende Skript gefunden und entsprechend angepasst.

      //Esszimmer
      const idCmd4 = 'knx.0.Rollo_EG_Neubau.Esszimmer.Positionierung';  // Datenpunkt-ID für Kommando
      const idStat4 = 'knx.0.Rollo_EG_Neubau.Esszimmer.Position'; // Datenpunkt-ID für Status
      const idVis4 = 'javascript.0.scriptEnabled.Rolladen.Rolladen_Esszimmer'; // Datenpunkt für gleichzeitige Anzeige / Bedienung
      const js4 = 'system.adapter.javascript.' + instance;
      createState(idVis4, getState(idStat4).val, {type: 'boolean'}); // Datenpunkt erzeugen
      on({id: idVis4, change: 'ne', fromNe: js4}, function(dp) {
      setState(idCmd4, dp.state.val);
      });
      on(idStat4, function(dp) {
      setState(idVis4, dp.state.val, true);
      });
      

      Dies funktioniert auch tadellos.

      Da ich dies auch mit den Tastern machen muss, habe ich das gleiche Skript genommen.
      Hier muss ich aber zum Ein und Ausschalten je zweimal drücken :(
      Die Rückmeldung in der Vis stimmt aber so weit.

      //Büro
      const idCmd1 = 'modbus.0.coils.12458_Taster_Kind 2 Licht Decke AB';  // Datenpunkt-ID für Kommando
      const idStat1 = 'modbus.0.coils.582_KL12_DO7'; // Datenpunkt-ID für Status
      const idVis1 = 'Licht.0.Licht_Büro_Altbau'; // Datenpunkt für gleichzeitige Anzeige / Bedienung
      const js1 = 'system.adapter.javascript.' + instance;
      createState(idVis1, getState(idStat1).val, {type: 'boolean'}); // Datenpunkt erzeugen
      on({id: idVis1, change: 'ne', fromNe: js1}, function(dp) {
      setState(idCmd1, dp.state.val);
      });
      on(idStat1, function(dp) {
      setState(idVis1, dp.state.val, true);
      });
      
      paul53P Offline
      paul53P Offline
      paul53
      schrieb am zuletzt editiert von
      #2

      @Daytona-Saar sagte:

      Da ich dies auch mit den Tastern machen muss

      Welche Datenpunkte sind Taster und wie verhalten sich diese ?

      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
      • Tim1988T Offline
        Tim1988T Offline
        Tim1988
        schrieb am zuletzt editiert von
        #3

        Hier die RAW von der Variable für gleichzeitige Anzeige / Bedienung.
        Meintest du das ? :D

        {
          "from": "system.adapter.admin.0",
          "user": "system.user.admin",
          "ts": 1563563853037,
          "common": {
            "name": "Taster_Büro_Altbau",
            "role": "",
            "type": "boolean",
            "desc": "Manuell erzeugt",
            "read": true,
            "write": true,
            "def": false
          },
          "native": {},
          "acl": {
            "object": 1636,
            "owner": "system.user.admin",
            "ownerGroup": "system.group.administrator",
            "state": 1636
          },
          "_id": "javascript.0.scriptEnabled.Taster.Taster_Büro_Altbau",
          "type": "state"
        }
        

        Vom Verhalten her ist sie TRUE beim drücken und FALSE beim loslassen

        paul53P 1 Antwort Letzte Antwort
        0
        • Tim1988T Tim1988

          Hier die RAW von der Variable für gleichzeitige Anzeige / Bedienung.
          Meintest du das ? :D

          {
            "from": "system.adapter.admin.0",
            "user": "system.user.admin",
            "ts": 1563563853037,
            "common": {
              "name": "Taster_Büro_Altbau",
              "role": "",
              "type": "boolean",
              "desc": "Manuell erzeugt",
              "read": true,
              "write": true,
              "def": false
            },
            "native": {},
            "acl": {
              "object": 1636,
              "owner": "system.user.admin",
              "ownerGroup": "system.group.administrator",
              "state": 1636
            },
            "_id": "javascript.0.scriptEnabled.Taster.Taster_Büro_Altbau",
            "type": "state"
          }
          

          Vom Verhalten her ist sie TRUE beim drücken und FALSE beim loslassen

          paul53P Offline
          paul53P Offline
          paul53
          schrieb am zuletzt editiert von
          #4

          @Daytona-Saar sagte:

             "_id": "javascript.0.scriptEnabled.Taster.Taster_Büro_Altbau",
          

          Ist das der Tasten-Datenpunkt oder heißt das Skript "Taster.Taster_Büro_Altbau" ? Dieser Datenpunkt ist im obigen Skript nicht enthalten.

          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
          • Tim1988T Offline
            Tim1988T Offline
            Tim1988
            schrieb am zuletzt editiert von
            #5

            sorry... zwischenzeitlich umbenannt. Orientiere dich an den idCmd1 idStat1 und idVis

            paul53P 1 Antwort Letzte Antwort
            0
            • Tim1988T Tim1988

              sorry... zwischenzeitlich umbenannt. Orientiere dich an den idCmd1 idStat1 und idVis

              paul53P Offline
              paul53P Offline
              paul53
              schrieb am zuletzt editiert von
              #6

              @Daytona-Saar sagte:

              Orientiere dich an den idCmd1 idStat1 und idVis

              Und welcher davon ist Taster ?

              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
              • Tim1988T Offline
                Tim1988T Offline
                Tim1988
                schrieb am zuletzt editiert von
                #7

                Na, Taster_Kind 2 Licht Decke AB.
                Also IdCmd

                paul53P 1 Antwort Letzte Antwort
                0
                • Tim1988T Tim1988

                  Na, Taster_Kind 2 Licht Decke AB.
                  Also IdCmd

                  paul53P Offline
                  paul53P Offline
                  paul53
                  schrieb am zuletzt editiert von
                  #8

                  @Daytona-Saar
                  Der toggled das Licht ? Dann ändere Zeile 8 in

                  setState(idCmd1, true);
                  

                  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
                  • Tim1988T Offline
                    Tim1988T Offline
                    Tim1988
                    schrieb am zuletzt editiert von
                    #9

                    Hi,
                    vielen Dank erst mal für die schnelle Antwort.
                    Habe das mal geändert.
                    Kann dann das Licht einmal einschalten und nie wieder aus.
                    Rückmeldung funktioniert dann auch nicht mehr.

                    paul53P 1 Antwort Letzte Antwort
                    0
                    • Tim1988T Tim1988

                      Hi,
                      vielen Dank erst mal für die schnelle Antwort.
                      Habe das mal geändert.
                      Kann dann das Licht einmal einschalten und nie wieder aus.
                      Rückmeldung funktioniert dann auch nicht mehr.

                      paul53P Offline
                      paul53P Offline
                      paul53
                      schrieb am zuletzt editiert von
                      #10

                      @Daytona-Saar sagte:

                      Kann dann das Licht einmal einschalten und nie wieder aus.

                      Dann muss wohl der Taster auf false zurück gesetzt werden.

                      setState(idCmd1, true);
                      setStateDelayed(idCmd1, false, 100);
                      

                      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
                      • Tim1988T Offline
                        Tim1988T Offline
                        Tim1988
                        schrieb am zuletzt editiert von
                        #11

                        Du bist mein Held :) vielen vielen Dank für die Hilfe :-D
                        Licht an und aus schalten mit passender Rückmeldung funktioniert jetzt in allen möglichen Situationen.
                        Egal ob von Alexa, KNX-Taster im Raum oder Visualisierung!

                        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

                        775

                        Online

                        32.6k

                        Benutzer

                        82.2k

                        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