Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Cloud Dienste
    4. Alexa - Kommandos anpassen

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Alexa - Kommandos anpassen

    This topic has been deleted. Only users with topic management privileges can see it.
    • B
      Blade last edited by

      Hallo,

      Irgendwie ist in diesem thread nicht ersichtlich wie ich einen selbst erstellten Datenpunkt den Befehl auf/zu zuweisen kann.

      Ich bekomme immer nur an/aus in der Befehlszeile.

      Wird doch über die rolle vorgegeben oder?

      Welche variable muss da rein? Oder bin ich auf dem Holzweg?

      1 Reply Last reply Reply Quote 0
      • ruhr70
        ruhr70 last edited by

        Probier mal einen Datenpunkt vom Typ Number

        Gesendet von iPad mit Tapatalk

        1 Reply Last reply Reply Quote 0
        • B
          Blade last edited by

          Hallo,

          ist ja ein super thread hier.

          Leider habe ich nun das Problem einen Datenpunkt für Alexa selbst zu konfigurieren.

          Ich möchte nicht das alexa direkt auf irgendwelche Datenpunkte der CCU zugreift um damit besser Logiken realisieren zu können.

          Ich brauche einen Datenpunkt der die Befehle Auf/Zu bzw. Rauf/Runter akzeptiert, mir aber true/false ausgibt.

          Wenn ich diesen als value und gemischt konfiguriere schreibt er mir immer bei runter false und bei rauf 100. Wenn ich im Datenpunkt MAX auf 1 setze weiß alexa nicht mehr wie sie den Befehl setzen soll.

          Ein Screenshot der Datenpunktkonfiguratin wäre hilfreich.

          1 Reply Last reply Reply Quote 0
          • painkillerde
            painkillerde last edited by

            @Blade:

            Hallo,

            ist ja ein super thread hier.

            Leider habe ich nun das Problem einen Datenpunkt für Alexa selbst zu konfigurieren.

            Ich möchte nicht das alexa direkt auf irgendwelche Datenpunkte der CCU zugreift um damit besser Logiken realisieren zu können.

            Ich brauche einen Datenpunkt der die Befehle Auf/Zu bzw. Rauf/Runter akzeptiert, mir aber true/false ausgibt.

            Wenn ich diesen als value und gemischt konfiguriere schreibt er mir immer bei runter false und bei rauf 100. Wenn ich im Datenpunkt MAX auf 1 setze weiß alexa nicht mehr wie sie den Befehl setzen soll.

            Ein Screenshot der Datenpunktkonfiguratin wäre hilfreich. `

            Genau das suche ich auch immer noch…

            1 Reply Last reply Reply Quote 0
            • Vardaaran
              Vardaaran last edited by

              Ich muss jetzt auch etwas zu diesem Thema beitragen.

              Ich habe meinen Datenpunkt wie folgt (Screenshot) konfiguriert.

              ! ![](</s><URL url=)<link_text text="http://forum.iobroker.net/download/file ... 584c579b3e">http://forum.iobroker.net/download/file.php?mode=view&id=10454&sid=66a2a0e6df47c52850dfc5584c579b3e</link_text>" /> ~~Leider funktioniert das Ganze nicht ganz wie gewünscht:

              • Alexa reagiert zwar auf Rollladen hoch oder runter, aber nicht immer richtig.

              Ich habe das Ganze dann etwas getestet und die Reaktion bzw. den Wert des Datenpunkts auf verschiedene Befehle beobachtet:

              -> Bei HOCH wird der Wert immer auf 1 (bei max. von 100 wären es eben 100) gesetzt.

              -> Wenn er bei 1 ist, bleibt er bei HOCH auf 1.

              -> Bei RUNTER wird er auf 0.75 (bei max. von 100 wären es eben 75) gesetzt, aber nur, wenn er vorher auf 1 (bzw. 100) stand.

              -> Wenn der Wert auf 0.75 (bzw. 75) steht und man den Befehl RUNTER gibt, wird dieser auf 1 (bzw. 100) gesetzt!

              Keine Ahnung wo hier die Logik ist. In der Regel dürfte dieser Fehler auch selten auffallen, da ich meine Rollladen aber auch zeitgesteuert schalte, war dieser Umstand aber schon merklich.

              Daher habe ich mir folgende Lösung überlegt:

              Der Wert muss künstlich auf 1 gehalten werden. In diesem Zustand reagiert er bei RUNTER korrekt mit der Senkung des Werts und bei HOCH bleibt er bei 1. Mein Skript muss daher nur abfragen ob

              • Wert gleich 1 = HOCH

              • Wert kleiner 1 = RUNTER

              Daher setze ich den Wert nach der Abfrage manuell auf 1.

              Damit jetzt aber durch die on()-Anweisung nicht 2 Schaltungen stattfinden (eine durch Alexa, eine durch das manuelle Setzen) muss diese für kurze Zeit (ich habe 2 Sekunden gemacht) deaktiviert werden.

              Hierfür habe ich einen weiteren Datenpunkt vom Typ false/true verwendet. Dies ist wahrscheinlich absolut umständlich und hätte gut über eine Variable im Skript gelöst werden können, aber irgendwie habe ich es damit nicht hinbekommen…

              Über Hilfe bzw. Verbesserungen wäre ich daher sehr dankbar!

              Das Skript:

              ! ````
              var logOn = false; // Skript Logausgabe ein- (true) / ausschalten (false). Fehler werden immer ausgegeben.
              var forecreation = false; // Default: false. true: Datenpunkte werden überschrieben (wenn z.B. Bezeichnungen geändert wurden)
              var http = require('http'); // Node Module http verwenden
              ! // Datenpunkte anlegen:
              // -----------------------------------------------------------------------------
              var idDatenpunkt = "alexa.arbeitszimmer.rollladen"; // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
              createState(idDatenpunkt, 0, forecreation, { // Datenpunkt wird angelegt
              name: 'Arbeitszimmer Rollladen',
              desc: 'Beide Rollladen des Arbeitszimmers',
              type: 'number',
              def: 1,
              min: 0,
              max: 1,
              role: 'level'
              });
              var idVariablenDP = "variablen.sperre_rollladen_arbeitszimmer"; // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
              createState(idVariablenDP, 0, forecreation, { // Datenpunkt wird angelegt
              name: 'Sperre Rollladen Arbeitszimmer',
              desc: 'Variable zur Sperrung der Rollladen des Arbeitszimmers',
              type: 'boolean',
              states: 'false;true',
              def: false,
              role: 'value'
              });
              ! // Funktionen:
              // -----------------------------------------------------------------------------
              function requestSenden(options) {
              var req = http.get(options, function(res) {
              if(logOn) log('STATUS: ' + res.statusCode); // Statuscode
              if(logOn) log('HEADERS: ' + JSON.stringify(res.headers)); // Header (Rückmeldung vom Webserver)
              ! // Buffer the body entirely for processing as a whole.
              var bodyChunks = [];
              var chunkLine = 0;
              res.on('data', function(chunk) {
              chunkLine = chunkLine + 1;
              if(logOn) log("Zeilennummer: " + chunkLine+ " ,Inhalt: " + chunk);

                  // Hier können die einzelnen Zeilen verarbeitet werden...
                  bodyChunks.push(chunk);
              
              }).on('end', function() {
                  if(logOn) log("ARRAY mit den einzelnen Zeilen: " + bodyChunks);
                  if(logOn) log("ARRAY Länge: " + bodyChunks.length);
              

              ! var body = Buffer.concat(bodyChunks);
              ! if(logOn) log('BODY: ' + body); // ...und/oder das Gesamtergebnis.
              ! });
              });
              ! req.on('error', function(e) { // Fehler abfangen
              log('ERROR: ' + e.message,"warn");
              });
              }
              ! // Level Einstellen
              // -----------------------------------------------------------------------------
              function richtungsdef(dp) {
              dpWert = dp.state.val;

              if (dpWert < 1) {                      // Rollladen RUNTER
                  rqPath = '/control?key=14';
                  //log("RUNTER");
              } else {                                // Rollladen HOCH
                  rqPath = '/control?key=13';
                  //log("HOCH");
              }
              
              var options = {             // URL, die abgefragt, bzw. gesendet werden soll
                host: '192.168.0.131',
                path: rqPath,
                port: 31,
                auth: 'KONTO:PASSWORT',
                method: 'GET'
              };
              
              setState("javascript.0." + idDatenpunkt, 1);
              requestSenden(options);
              setTimeout(sperreAUS, 2000);
              

              }
              // Sperre setzen / löschen
              // -----------------------------------------------------------------------------
              function sperreAN() {
              setState("javascript.0." + idVariablenDP, true);
              }
              function sperreAUS() {
              setState("javascript.0." + idVariablenDP, false);
              }

              ! // Abfrage des Datenpunkts
              // -----------------------------------------------------------------------------
              on({id: "javascript.0." + idDatenpunkt, change:'any'}, function (dp) {
              if (getState("javascript.0." + idVariablenDP).val !== true) {
              sperreAN();
              richtungsdef(dp);
              }
              });

              1 Reply Last reply Reply Quote 0
              • E
                eXTreMe last edited by

                ich stand gerade vor einem ähnlichen Problem.

                Der Befehl "auf/zu" scheint nicht in Verbindung mit jedem Gerätenamen zu funktionieren.

                Ich habe eine mechanische Türöffnung gebastelt die ich gerne mit "Alexa mach die Tür auf" aktivieren möchte.

                Nenne ich den Datenpunkt bzw das Gerät in ioBroker Tür oder Haustür (alternativ kann man auch eine neue Gruppe in der Alexa App erstellen und ihm das Gerät zuweisen), dann kann Alexa nur "Alexa schalte an/aus/auf x Prozent". Nenne ich den Datenpunkt oder die Gruppe mit dem Tür-Öffner-Device z.B. Fenster oder Eingangstür oder Pforte dann klappt es mit "Alexa mach das Fenster/die Eingangstür/die Pforte auf" ….. Man kann also scheinbar doch nicht so frei die Geräte- oder Gruppennamen vergeben. Bleibt also nur Synonyme finden und Vokabeln lernen für Alexa 😞

                1 Reply Last reply Reply Quote 0
                • R
                  Reimund last edited by

                  Hallo zusammen,

                  habe mir gestern den kompletten Thread durchgelesen. Heute habe ich eine Lösung gefunden, die hier noch nicht erwähnt wurde (wahrscheinlich ist die Funktion bei Alexa neu hinzugekommen)

                  In der Alexa-App lassen sich Routinen für Geräte anlegen.

                  Hierbei kann folgendes eingetragen werden:

                  • Wenn Folgendes passiert (z.B. Sie sagen "Alexa, guten Morgen")

                  • Aktion durchführen (z.B. 1. Wettervorhersage für aktuellen Tag, 2. Rolladen hoch)

                  1 Reply Last reply Reply Quote 0
                  • apollon77
                    apollon77 last edited by

                    Oder vllt doch in Richtung des Custom-Skills gehen?

                    viewtopic.php?f=36&t=13857&p=147045#p147045

                    Tester gesucht!

                    1 Reply Last reply Reply Quote 0
                    • BBTown
                      BBTown last edited by

                      Ich würde gern testen, allerdings warte ich seit meiner Anfrage zur Einladung vom 01.05.2018 auf eine Antwort 8-)

                      1 Reply Last reply Reply Quote 0
                      • apollon77
                        apollon77 last edited by

                        Schreibs nochmal in den custom skill thread. Email muss die vom Amazon Konto sein. Spam geschaut?

                        1 Reply Last reply Reply Quote 0
                        • First post
                          Last post

                        Support us

                        ioBroker
                        Community Adapters
                        Donate
                        FAQ Cloud / IOT
                        HowTo: Node.js-Update
                        HowTo: Backup/Restore
                        Downloads
                        BLOG

                        889
                        Online

                        31.7k
                        Users

                        79.6k
                        Topics

                        1.3m
                        Posts

                        23
                        62
                        27731
                        Loading More Posts
                        • Oldest to Newest
                        • Newest to Oldest
                        • Most Votes
                        Reply
                        • Reply as topic
                        Log in to reply
                        Community
                        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                        The ioBroker Community 2014-2023
                        logo