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
      Blackeye last edited by

      Hi,

      Ich habe heute gerade iobroker frisch installiert. Soweit alles gut, nur meine Rollladen machen was sie wollen. Wenn ich sage runter fahren Diese rauf.

      Ich habe sie im cloud Adapter "Bei an 100%" stehen und 0 gibt es nicht zur Auswahl.

      Gruß Lars

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

        @Blackeye:

        Hi,

        Ich habe heute gerade iobroker frisch installiert. Soweit alles gut, nur meine Rollladen machen was sie wollen. Wenn ich sage runter fahren Diese rauf.

        Ich habe sie im cloud Adapter "Bei an 100%" stehen und 0 gibt es nicht zur Auswahl.

        Gruß Lars `
        Magst Du mal einen Screenshot reinstellen, ich bin nicht sicher ob ich die Aufgabenstellung richtig verstehe 8-)

        1 Reply Last reply Reply Quote 0
        • 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

                            489
                            Online

                            31.7k
                            Users

                            79.6k
                            Topics

                            1.3m
                            Posts

                            23
                            62
                            27722
                            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