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. Cloud Dienste
  4. [gelöst]Schalter invertieren

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.3k

[gelöst]Schalter invertieren

Geplant Angeheftet Gesperrt Verschoben Cloud Dienste
3 Beiträge 2 Kommentatoren 1.2k 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.
  • M Offline
    M Offline
    Marco.K
    schrieb am zuletzt editiert von
    #1

    Moin zusammen!

    Ich habe jetzt auch eine Alexa. :D

    Hab Skill und ioBroker auch schon alles eingreichtet.

    Nur bei einem Lichtschalter habe ich ein Problem: Ich muss Licht aus sagen um das einzuschalten und umgekehrt.

    Gibt es ähnlich wie in der Visualisierung die Möglichkeit den 'Schalter' zu invertieren?

    LG - Marco

    1 Antwort Letzte Antwort
    0
    • M Offline
      M Offline
      Marco.K
      schrieb am zuletzt editiert von
      #2

      Ich antworte mir mit der Lösung mal selbst. :lol:

      Google hat mich auf den folgenden Thread gestossen: http://preview.iobroker.com/forum/viewt … =21&t=5704

      Habe das Script etwas abgewandelt da ich den Taster nicht toggeln möchte.

      var logOn           = true; // Logausgabe im Skript
      var forecreation    = false; // true: Datenpunkte werden überschrieben (wenn z.B. Bezeichnungen geändert wurden)
      
      var pfad            = "Alexa" + "."; // Pfad in dem die Datenpunkte angelegt werden
      
      // Datenpunktnamen:
      var idTriggerWechselschalter    = pfad + 'KitchenLight';
      var idWechselschalter           = "hm-rpc.0.OEQ1158099";
      
      createState(idTriggerWechselschalter, false, forecreation, {
           name: 'Alexa Trigger für Küchenlicht',
           desc: 'Invertiert den Alexa-Befehl für den Wechselschalter',
           type: 'boolean',
           unit: '',
           role: 'value'
      });
      
      on({id: "javascript."+instance+"."+idTriggerWechselschalter ,change:'any'}, function (obj) {
          if(logOn) log("Alexa-Trigger für Küchenlicht erkannt");
          if(logOn) log("Wert: " + getState("javascript."+instance+"."+idTriggerWechselschalter).val);
      
          if (getState("javascript."+instance+"."+idTriggerWechselschalter).val === true) {
              setState(idWechselschalter+".1.STATE", false);
          } else if (getState("javascript."+instance+"."+idTriggerWechselschalter).val === false) {
              setState(idWechselschalter+".1.STATE", true);
          }
      });
      
      1 Antwort Letzte Antwort
      0
      • paul53P Offline
        paul53P Offline
        paul53
        schrieb am zuletzt editiert von
        #3

        Das geht einfacher und Resourcen schonender. Anstelle

            if(logOn) log("Wert: " + getState("javascript."+instance+"."+idTriggerWechselschalter).val);
        
            if (getState("javascript."+instance+"."+idTriggerWechselschalter).val === true) {
                setState(idWechselschalter+".1.STATE", false);
            } else if (getState("javascript."+instance+"."+idTriggerWechselschalter).val === false) {
                setState(idWechselschalter+".1.STATE", true);
            }
        
        

        besser so:

            if(logOn) log("Wert: " + obj.state.val);
        
            setState(idWechselschalter+".1.STATE", !obj.state.val);
        

        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
        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

        713

        Online

        32.6k

        Benutzer

        82.3k

        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