Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Cloud Dienste
    4. Neuer Adapter: iobroker.alexa2

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    Neuer Adapter: iobroker.alexa2

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

      Ansonsten für die Nutzer des "Licht-An-Skripts" hier mal eine (ungetestete) neue Version die den Adapter nutzt:

      `// 2\. Mapping-Tabelle konfigurieren
      //
      // Mapping-Tabelle der Echo-Geräte zu den Smart Home Geräten (z.B. Lampen).
      // Die SerialNr der Echo-Geräte sind in der Alexa-App unter
      // Settings->[Echo-Gerät]->Serial Number (vorletzter Eintrag)
      // zu finden.
      //
      // Die Object-IDs in der Aufzählung "deviceIDs" kommen aus ioBroker und können
      // direkt aus dem Objects-Reiter kopiert werden.
      //
      // Es können mehrere Smart Home Geräte jedem Echo zugeordnet werden. In der
      // Aufzählung "deviceIDs" mit Komma trennen.
      
      var mappingTable = [{
              "deviceSerialNr": "G040FL60XXXXXXXX",
              "deviceIDs": ["hue.0.Philips_hue.Wohnzimmer_Stehlampe.level"]
          },
          {
              "deviceSerialNr": "G080FL20XXXXXXXX",
              "deviceIDs": ["hue.0.Philips_hue.Bad_Deckenlampe.level"]
          }
      ];
      
      // 3\. Datenpunkt konfigurieren (optional)
      
      var forecreation = false;
      
      // Wenn gewünscht, Pfad und Name nach eigenen Vorstellungen anpassen.
      var idAlexaTrigger = 'productive.lichtan.alexa_trigger';
      
      // Wenn gewünscht, Name und desc für den Datenpunkt anpassen.
      // Außerdem kann der Smart Name im CloudAdapter angepasst werden.
      createState(idAlexaTrigger, 0, forecreation, {
          name: 'Trigger für Alexa',
          desc: 'Trigger mit Level für Alexa',
          type: 'number',
          unit: '',
          role: 'value',
          smartName: {
              de: 'Licht',
              en: 'Licht'
          }
      });
      
      // 4\. Logging konfigurieren (optional)
      //
      // true schreibt in den Log, was das Script macht.
      var logOn = true;
      
      // Ende der Einrichtung.
      // Nachfolgend der eigentliche Source Code des Scripts.
      //------------------------------------------------------------------------------
      
      //------------------------------------------------------------------------------
      // Funktionen
      
      function main(data) {
      
          var serialNumber = data.serialNumber;
          if (logOn) log("Got request for serialNumber " + serialNumber);
      
          // durchsuche Mapping-Table und schalte die verknüpften Geräte
          for (var i = 0; i < mappingTable.length; i++) {
              if (mappingTable[i].deviceSerialNr === serialNumber) {
                  for (var j = 0; j < mappingTable[i].deviceIDs.length; j++) {
                      if (logOn) log("Set new value for device " + mappingTable[i].deviceIDs[j]);
      
                      var oldValue = "" + getState(mappingTable[i].deviceIDs[j]).val;
                      if (logOn) log("Old Value: " + oldValue);
                      if (oldValue === 'true' || oldValue === 'false') {
                          var newValue = "" + getState("javascript." + instance + "." + idAlexaTrigger).val;
                          if (logOn) log("New Value: " + newValue);
                          if (newValue === '0') {
                              setState(mappingTable[i].deviceIDs[j], false);
                          } else {
                              setState(mappingTable[i].deviceIDs[j], true);
                          }
                      } else {
                          setState(mappingTable[i].deviceIDs[j], getState("javascript." + instance + "." + idAlexaTrigger));
                      }
                  }
      
              }
          }
      }
      
      // Subscriptions
      // -----------------------------------------------------------------------------
      
      on({
          id: "javascript." + instance + "." + idAlexaTrigger,
          change: 'any'
      }, function(obj) {
          if (logOn) log("Alexa Trigger changed: " + obj.state.val);
      
          var triggerResult = on({
              id: 'alexa2.0.History.json',
              change: 'ne',
              ack: true
          }, function(data) {
              unsubscribe(triggerResult);
              triggerResult = null;
              main(JSON.parse(data.state.val));
          });
      
          setState('alexa2.0.History.#trigger', true, false);
          setTimeout(function() {
              //Wir warten nur 5 Sekunden auf neue Daten, dann brechen wir ab
              if (triggerResult) {
                  unsubscribe(triggerResult);
                  log('No update in history');
              }
          }, 10000);
      });`[/i][/i][/i][/i][/i][/i][/i]
      
      1 Reply Last reply Reply Quote 0
      • Matten Matten
        Matten Matten last edited by

        v 0.3.5 geladen multiroom sprachausgabe getestet und folgender fehler:

        host.tinkerboard	2018-07-27 10:54:58.177	error	instance system.adapter.alexa2.0 terminated with code 0 (OK)
        Caught	2018-07-27 10:54:58.177	error	by controller[0]: at process._tickCallback (internal/process/next_tick.js:104:9)
        Caught	2018-07-27 10:54:58.177	error	by controller[0]: at _combinedTickCallback (internal/process/next_tick.js:80:11)
        Caught	2018-07-27 10:54:58.176	error	by controller[0]: at endReadableNT (_stream_readable.js:978:12)
        Caught	2018-07-27 10:54:58.176	error	by controller[0]: at IncomingMessage.emit (events.js:185:7)
        Caught	2018-07-27 10:54:58.176	error	by controller[0]: at emitNone (events.js:91:20)
        Caught	2018-07-27 10:54:58.176	error	by controller[0]: at IncomingMessage. <anonymous>(/opt/iobroker/node_modules/iobroker.alexa2/node_modules/alexa-remote2/alexa-remote.js:360:60)
        Caught	2018-07-27 10:54:58.176	error	by controller[0]: at commandCallback (/opt/iobroker/node_modules/iobroker.alexa2/main.js:588:51)
        Caught	2018-07-27 10:54:58.176	error	by controller[0]: at AlexaRemote.Alexa.iterateMultiroom (/opt/iobroker/node_modules/iobroker.alexa2/main.js:584:29)
        Caught	2018-07-27 10:54:58.175	error	by controller[0]: at AlexaRemote.find (/opt/iobroker/node_modules/iobroker.alexa2/node_modules/alexa-remote2/alexa-remote.js:682:45)
        Caught	2018-07-27 10:54:58.174	error	by controller[0]: TypeError: Cannot read property 'toLowerCase' of undefined
        alexa2.0	2018-07-27 10:54:58.115	warn	Exception: TypeError: Cannot read property 'toLowerCase' of undefined
        alexa2.0	2018-07-27 10:54:58.112	error	at process._tickCallback (internal/process/next_tick.js:104:9)
        alexa2.0	2018-07-27 10:54:58.112	error	at _combinedTickCallback (internal/process/next_tick.js:80:11)
        alexa2.0	2018-07-27 10:54:58.112	error	at endReadableNT (_stream_readable.js:978:12)
        alexa2.0	2018-07-27 10:54:58.112	error	at IncomingMessage.emit (events.js:185:7)
        alexa2.0	2018-07-27 10:54:58.112	error	at emitNone (events.js:91:20)
        alexa2.0	2018-07-27 10:54:58.112	error	at IncomingMessage. <anonymous>(/opt/iobroker/node_modules/iobroker.alexa2/node_modules/alexa-remote2/alexa-remote.js:360:60)
        alexa2.0	2018-07-27 10:54:58.112	error	at commandCallback (/opt/iobroker/node_modules/iobroker.alexa2/main.js:588:51)
        alexa2.0	2018-07-27 10:54:58.112	error	at AlexaRemote.Alexa.iterateMultiroom (/opt/iobroker/node_modules/iobroker.alexa2/main.js:584:29)
        alexa2.0	2018-07-27 10:54:58.112	error	at AlexaRemote.find (/opt/iobroker/node_modules/iobroker.alexa2/node_modules/alexa-remote2/alexa-remote.js:682:45)
        alexa2.0	2018-07-27 10:54:58.112	error	TypeError: Cannot read property 'toLowerCase' of undefined
        alexa2.0	2018-07-27 10:54:58.111	error	uncaught exception: Cannot read property 'toLowerCase' of undefined</anonymous></anonymous>
        
        1 Reply Last reply Reply Quote 0
        • liv-in-sky
          liv-in-sky last edited by

          @matten

          kannst du bitte etwas ausprobieren mit multiroom - apollon fragte, ob ich mich mit dir kurzschliessen könnte um fehler nachzuvollziehen.

          wenn ich etwas im provider-tunein eingeben spielt anstatt multiroom nur ein echo - wenn ich anschliessend play im object auf true setze fangt multiroom mit allen an.

          setzte ich rockantenne - kommt sprachausgabe mit geht nicht …

          setze ich ROCK ANTENNE - spielt ein nur echo - in der alexa app wird multiroom nicht angezeigt

          setze ich dann play - multiroom - alle echos spielen.

          danke

          1 Reply Last reply Reply Quote 0
          • C
            Camuri last edited by

            Huhu nach Update auf 0.3.2 hab ich beim Fire HD 10 nur noch den Ordner Info und beim Fire TV Cube nur noch die Ordner Info, Music-Provider und Player, es fehlen die Commands Ordner 😞

            1 Reply Last reply Reply Quote 0
            • liv-in-sky
              liv-in-sky last edited by

              wegen der vis schalter und alexa sprachbefehl (spiele tunein)

              bei wird nur der current.state aktualisiert (nach updatetime). somit kann ich im vis nur aktualisierte zustände bekommen, wenn ich ein script erstelle, welches mit play, pause, state den vis schalter aktualisiert - ist das bei euch auch so

              ist auch in v 0.3.4 so

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

                @ liv-in-sky

                ja so ist das bei mir auch.

                ich finde das aber auch doppelt gemoppelt, einmal hat man Music-Provider/TuneIn und nocheinmal Player/TuneIn-Direct.

                aber irgendwie wirds nicht auf multiroom wieder gegeben.

                kannst du sonst mal was in deiner main.js mit Notepad++ abändern?

                in Zeile 684

                value += ' auf ' + device._name + ' music';
                

                aktuell sollte folgendes noch in der Zeile stehen:

                value += ' auf multiroom music';
                

                download/file.php?mode=view&id=31478

                Gruß

                Matten Matten
                3476___tinkerboard_iobroker_iobroker_node_modules_iobroker.alexa2_main.js_-notepad_-27.07.2018_11_35_45.png

                1 Reply Last reply Reply Quote 0
                • liv-in-sky
                  liv-in-sky last edited by

                  ich helfe gerne - aber solche änderungen sind mir eher noch suspekt. node und ich stehen noch auf "unlike"

                  du müßtest mir schon genau sagen, wo ich diese datei finde

                  unter tunein-direct funktioniert es bei mir

                  1 Reply Last reply Reply Quote 0
                  • sigi234
                    sigi234 Forum Testing Most Active last edited by

                    Hallo,

                    teste gerade den Adapter, ist Super.

                    Ich habe mir eine Vis erstellt, wo ich die Routinen abrufe usw.. Geht sehr gut.

                    Das einzige was ich noch klären muss, ist das es beim abruf ja nur den Dot nimmt die ich in den Objekt ID eingetragen habe.

                    Also müsste ich für jeden Dot eine View bauen? Überlege gerade wie ich das am Besten lösen kann.

                    Ist ein (jqui - ctrl - Icon State / val - Icon Bool) Widget.

                    2858_screenshot__330_.png

                    Aha, sehe gerade das JEDER Dot Routinen hat…..

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

                      @ liv-in-sky

                      kommst du unter windows an die iobroker ordner ran?

                      dann unter

                      iobroker\node_modules\iobroker.alexa2
                      

                      und die main.js datei mit notepad++ öffnen.

                      in Zeile 684

                      value += ' auf ' + device._name + ' music';
                      

                      aktuell sollte folgendes noch in der Zeile stehen:

                      value += ' auf multiroom music';
                      

                      Wenn ich das bei mir abändere funktioniert es. ABER Wenn der Multiroom device name nur aus großbuchstaben besteht zb "MULTIROOM" funktioniert es nicht. Apollon77 müsste das so umbauen das, wenn der Multiroom device name nur aus großbuchstaben besteht das in kleinbuchstaben konvertiert wird bevor der befehl abgeschickt wird.

                      Gruß

                      Matten Matten

                      1 Reply Last reply Reply Quote 0
                      • sigi234
                        sigi234 Forum Testing Most Active last edited by

                        Was ist eigentlich der Datenpunkt:

                        Request Result

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

                          @sigi234:

                          Was ist eigentlich der Datenpunkt:

                          Request Result `

                          requestResult = Error info for TuneIn requests

                          1 Reply Last reply Reply Quote 0
                          • liv-in-sky
                            liv-in-sky last edited by

                            hab ich gemacht - ändert aber nichts am verhalten

                            habe andere zeilenzahl -ist das normal
                            4447_zeilen.png

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

                              @liv-in-sky:

                              hab ich gemacht - ändert aber nichts am verhalten

                              habe andere zeilenzahl -ist das normal `
                              welche version hast du?

                              1 Reply Last reply Reply Quote 0
                              • liv-in-sky
                                liv-in-sky last edited by

                                0.3.4

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

                                  @liv-in-sky:

                                  0.3.4 `

                                  lade mal 0.3.5

                                  und ändere noch einmal.

                                  Wie hast du deine multiroomgruppe bezeichnet?

                                  1 Reply Last reply Reply Quote 0
                                  • liv-in-sky
                                    liv-in-sky last edited by

                                    die heißt "alles" -

                                    wo kriege ich die version her - habe nur 3.4. auf github

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

                                      @liv-in-sky:

                                      die heißt "alles" -

                                      wo kriege ich die version her - habe nur 3.4. auf github `

                                      ok dann kann das mit der Großschrift bei dir nicht sein.

                                      hast du mal Music-Provider.Amazon Music getestet, ob sich das da auch so verhält?

                                      1 Reply Last reply Reply Quote 0
                                      • liv-in-sky
                                        liv-in-sky last edited by

                                        hab ich nicht - benutze nur tunein und bibliothek

                                        bibliothek selbes problem - gebe titel ein und nur ein echo spielt bei multihome my library music provider

                                        genau heißt sie "Alles"

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

                                          @Camuri:

                                          Huhu nach Update auf 0.3.2 hab ich beim Fire HD 10 nur noch den Ordner Info und beim Fire TV Cube nur noch die Ordner Info, Music-Provider und Player, es fehlen die Commands Ordner 😞 `

                                          Und die Devices können diese Dinge alle?

                                          Dann bitte aus "Info" mit die "device-type" nennen dann aktiviere ich das wieder. Bitte auch den Inhalt von "Info.capabilities" mitschicken

                                          Ich versuche nur das an STates anzulegen was die geräte auch können.

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

                                            @Matten Matten:

                                            @liv-in-sky:

                                            die heißt "alles" -

                                            wo kriege ich die version her - habe nur 3.4. auf github `

                                            ok dann kann das mit der Großschrift bei dir nicht sein.

                                            hast du mal Music-Provider.Amazon Music getestet, ob sich das da auch so verhält? `

                                            Wartet mal … da ist eine Änderung verschwunden ... gleich kommt update

                                            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

                                            821
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            76
                                            581
                                            145259
                                            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