Ankündigung

Einklappen
Keine Ankündigung bisher.

Amazon-Echo Logikbaustein

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • wernerL
    antwortet
    Guten Morgen Peter,

    das Format der ARN deiner Lambda Funktion sieht völlig korrekt aus.
    Ich konnte den Fehler leider bei mir nicht reproduzieren: Wenn ich deine ARN verwende (die X durch beliebige Ziffern ersetzt) bekomme ich keine Fehlermeldung.
    Wenn ich allerdings die ARN mit X verwende bekomme ich genau die gleiche Fehlermeldung wie du.

    Du hast auch keine Leerzeichen oder sonstige "unsichtbaren" Sonderzeichen in deiner ARN?

    Viele Grüße
    Werner

    Einen Kommentar schreiben:


  • katoth
    antwortet
    Hallo Werner,

    danke für die Erklärung.

    Ich hatte nur gesehen, dass die Registrierung als Developer bei Amazong wohl erstmal auf ein Jahr beschrängt ist.

    Ich muss für mich feststellen, dass die Smart Home Steuerung über Alexa noch ziemlich unausgereift ist. Ich finde die Nutzung des Custom Skills ehrlich gesagt "Murks" weil hierzu das Custom-Skill-spezifische Start-Kommande notwendig ist. Das macht es doch sehr unsmart. Ich komme dann auch durcheinander, weil manche Kommandos ohne das "Alexa, starte Smart Home..." funktionieren und andere wiederum nicht.

    Meiner Meinung nach gehört das Smart-Home-Skill aufgepeppt, so dass Steuerungsfunktionen wir Jalousie/Rolladen und Abfragen direkt über das Smart-Home Skill abgefregt werden können.
    Die Standardfunktionen des Smart-Home-Skills (zum Schalten des Lichts und der Temperatur) sind für mich ehrlich gesagt ziemlich unnütz. Das Licht mache ich wesentlich einfacher und schneller an indem ich den Schalter betätige, und die Temperatur Regel ich überhaupt nicht. Aber da kannst du ja nichts dafür. ;-)

    Ich würde es gut finden, wenn man dem Echo einen Raum zuweisen könnte.

    Also, wenn das Gerät (Echo) z.B. im Wohnzimmer steht, und man sagt "Alexa, schalte den Fernseher an", dass Alexa dann den Fernseher im Wohnzimmer einschaltet. Das gleiche Kommando im Schlafzimmer könnte dann den Fernseher im Schlafzimmer einschalten.
    Das wäre wesentlich smarter als wenn ich im Wohnzimmer sagen müsste "Alexa, schalte den Fernseher im Wohnzimmer an", weil ich ja eh im Wohnzimmer bin.

    Gibt es eigentlich eine Möglichkeit, dass Alexa Ansagen durch eine Logik im Homeserver ausgibt, ohne dass Alexa vorher nach dem Status gefragt wird?

    Zum Beispiel, wenn die Waschmaschiene fertig ist, dass dann automatisch eine Ansage von Alexa ausgegeben wird "Die Waschmaschiene ist fertig".

    Viele Grüße
    Thorsten

    Einen Kommentar schreiben:


  • pwrubbel
    antwortet
    Hallo Werner,
    eine ausgezeichnte Anleitung und ein prima Baustein (System)

    Leider scheitere ich an dem Punkt in der Developer Console Configuration
    obwohl ich darauf geachtet habe das Irland ausgewählt ist, kommt die Fehlermeldung: Error: Invalid ARN for NA region. Please provide a valid ARN in the form 'arn:aws:lambda:us-east-1:000000000000:function:myFunction:myFunctionVersi on'

    Im Installationsformular, habe ich die ID der Lambdafurktion ARN:
    arn:aws:lambda:eu-west-1:3XXXXXXXXXX7:function:GiraHS_LBS

    Komme da leider nicht weiter, was mache ich falsch ?
    Welche Information benötigst Du um mir ggf. weiter helfen zu können ?

    Vile Grüße
    Peter



    Einen Kommentar schreiben:


  • wernerL
    antwortet
    Hi Thorsten,

    wenn man mal von der HUE-Emulation absieht (welche von den Echo's wohl nativ unterstützt wird), läuft die Kommunikation über eine sogenannte Device-Cloud des jeweiligen Herstellers bzw. Anbieters. siehe auch https://developer.amazon.com/public/...home-skill-api
    Aktuell richtet sozusagen jeder User seine eigene persönliche Device Cloud ein und kümmert sich selbst um Hosting, Verfügbarkeit, Sicherheit, Datenschutz ...

    Um eine "saubere" mandantenfähige Device Cloud zu realisieren und zu betreiben wäre ein nicht unerheblicher Mehraufwand (Kosten) zu inverstieren.

    Beim Smart Home Skill hat man leider keinen Einfluß auf die Antworten welche von Alexa gegeben werden.
    Die Antworten des Custom Skill sind frei definierbar - allerdings bin ich mir nicht sicher ob auch keine Antwort (also Stille) möglich ist.

    Viele Grüße
    Werner

    Einen Kommentar schreiben:


  • katoth
    antwortet
    Hallo Werner,

    erstmal Respekt vor deinem tollen Logikbaustein. Da steckt sicher viel Zeit und Arbeit drin.

    Nur der Einrichtungsaufwand ist ja der Wahnsinn. Daher meine Frage, warum lässt sich das nicht auch ohne der Anmeldung als Amazon Developer und dem AWS Service umsetzen? Wie machen das die anderen Apps?, Ich meine andere Apps können doch auch einfach auf das Echo geladen werden und bieten die SmartHome Funktionen an.

    Dann habe ich noch eine Frage bezüglich der Bestätigung des Echos. Nach dem man eine Anweisung an Echo gestellt hat erhält man immer eine Antwort "Ok". Diese finde ich ziemlich nervend. Erst recht weil ich ja sehe dass das Licht an bzw. aus geht wenn ich das Kommando zum Schalten der Lampe gebe. Kannst du evtl. eine Funktion in der Konfiguration implementieren wo die Bestätigungsantwort für bestimmte Geräte abgeschaltet werden könnte?

    Viele Grüße
    Thorsten

    Einen Kommentar schreiben:


  • wernerL
    antwortet
    Hallo Florian,

    wenn ich mich recht erinnere ist Alexa etwas zickig, was die unterstützten Formulierungen in Bezug auf "Setzen der Raumtemperatur" angeht.

    Versuch es doch mal mit:
    Alexa, stelle das Arbeitszimmer auf 22 Grad.

    Gruß
    Werner

    Einen Kommentar schreiben:


  • wernerL
    antwortet
    Hallo Markus,

    sorry das ich mich jetzt erst melde - war ein paar Wochen im Urlaub.
    Aktuell ist bei mir auch Land unter im wahrsten Sinne des Wortes. Aufgrund eines Leitungswasserschadens stand unser Keller 75 cm hoch unter Wasser .

    Nichtsdestotrotz, falls dass mit dem Logging für dich immer noch aktuell ist, melde dich einfach noch einmal.
    Dann Suche ich bei Gelegenheit die entsprechenden Code Passagen raus.

    Grüße
    Werner

    Einen Kommentar schreiben:


  • knxflo
    antwortet
    Hallo Werner,
    zu erst großartige Arbeit an dem Baustein und vielen Dank für die erstklassige Anleitung. Das ganze war in eineinhalb, zwei Stunden umgesetzt.

    An alle habe ich die Frage nach dem Setzen eines neuen Temperaturwertes, daran scheitere ich zur Zeit:
    Bei dem Befehl: Stelle die temperatur im arbeitszimmer auf 22 grad
    erhalte ich eine der beiden Antworten
    Den Wert, ? kann ich nicht als Prozentwert verwenden
    Ich konnte die Temperatur im Arbeitszimmer nicht dimmen weil ich das Gerät nicht finden konnte.

    Die Abfrage der Temperatur funktioniert tadellos...

    Was mache ich falsch, wo könnte mein Fehler liegen.

    Vielen Dank für eure Hilfe!

    Grüße
    Florian

    Einen Kommentar schreiben:


  • mstein
    antwortet
    Hi Werner,

    wie hast du das Logging in den Bausteinen implementiert? Ich hab mir mal das vom Statusbericht angeschaut. Dort kann unter /tmp/ ein Logfile erzeugt werden. Jedoch wie kann ich das dann über die Debug-Seite vom Homeserver anzeigen lassen?
    http://homeserver/tmp/10001.log geht nicht...

    Richtig schick ist natürlich das vom Echo-Baustein. Bequem integriert. Verrätst du, wie du das implementiert hast?

    Grüße
    Markus

    Einen Kommentar schreiben:


  • Tachy
    antwortet
    Hallo Werner,

    das war es! Es Funktioniert! Vielen Dank!

    Man muss "v2" auswählen. Sollte man in der Doku noch einbauen - die haben halt wieder einiges geändert

    Einen Kommentar schreiben:


  • wernerL
    antwortet
    Hallo Johannes,

    der von deinem Alexa-Device gesendete JSON-Event ist ein Discovery Event in der Payload Version=3. Ich habe mich mit diesem Typ von Event noch nicht näher beschäftigt, aber dieser Typ wird unter der Smart Home Skill API in einem neuen Unterbereich mit dem Namen "Reference for Entertainment Device Control" aufgeführt.

    Welches Alexa-Device ist bei dir im Einsatz?
    Du startest dir Gerätesuche über die Alexa App und den Smart Home Skill?

    Ein von meinen Echo's geloggter JSON EVENT für das Smart Home Discovery sieht wie nachfolgend aus:

    Code:
    [COLOR=#444444][FONT=monaco][SIZE=12px]2017-07-26T05:39:41.970Z cf6a7b2d-71c4-11e7-b407-e3ed80b3f166 *** EVENT***:[/SIZE][/FONT][/COLOR]
    { [COLOR=#444444]"header":[/COLOR] { [COLOR=#444444]"namespace":[/COLOR] [COLOR=#009933]"Alexa.ConnectedHome.Discovery"[/COLOR], [COLOR=#444444]"name":[/COLOR] [COLOR=#009933]"DiscoverAppliancesRequest"[/COLOR], [COLOR=#444444]"payloadVersion":[/COLOR] [COLOR=#009933]"2"[/COLOR], [COLOR=#444444]"messageId":[/COLOR] [COLOR=#009933]"XXX"[/COLOR] }, [COLOR=#444444]"payload":[/COLOR] { [COLOR=#444444]"accessToken":[/COLOR] [COLOR=#009933]"XXX"[/COLOR] } }
    Viele Grüße
    Werner

    P.S.: Wie ich gerade festgestellt habe, gibt es jetzt die Payload-Version als weitere Einstellungsmöglichkeit bei der Konfiguration des Smart Home Skills. Für meinen Skill müsstest du hier "v2 (other devices)" wählen.
    Zuletzt geändert von wernerL; 26.07.2017, 08:57.

    Einen Kommentar schreiben:


  • Tachy
    antwortet
    Hallo Werner, hallo tunneltruppe,

    zuerst mal ein Lob für die tolle Anleitung durch das Dickicht des Amazon-Geraffels... Man versteht auch die Zusammenhänge - gute Idee auch mit dem Installationsformular. Selten so eine gute Anleitung gesehen!

    Bei mir hat die Einrichtung so weit auch funktioniert, Test der Gira-Installation funktioniert, Test AWS-Anbindung ebenfalls (Geräte also eingerichtet).

    Nur erkennt die App keine Geräte, wenn ich danach suchen lasse und die Spracherkennung kennt die Gerätenamen demnach auch nicht. An welcher Stelle muss ich jetzt schauen?

    Bei der Geräteerkennung über die App spuckt das Cloudlog von Amazon folgendes aus:

    Code:
    2017-07-25T12:31:59.885Z 40f4f4c6-7135-11e7-96f7-ab3465e2eed3 *** EVENT***:
    { "directive": { "header": { "namespace": "Alexa.Discovery", "name": "Discover", "payloadVersion": "3", "messageId": "unkenntlichgemacht" }, "payload": { "scope": { "type": "BearerToken", "token": "unkenntlichgemacht" } } } }
    ....und daraufhin:

    Code:
    2017-07-25T12:31:59.965Z 40f4f4c6-7135-11e7-96f7-ab3465e2eed3 TypeError: Cannot read property 'type' of undefined
    at handleCustomSkill (/var/task/index.js:555:13)
    at exports.handler (/var/task/index.js:107:3)

    Gruß Johannes
    Zuletzt geändert von Tachy; 25.07.2017, 15:44.

    Einen Kommentar schreiben:


  • chris_s
    antwortet
    Hallo Werner,

    besten Dank. Genau das war´s.
    Ich Idiot habe die Portweiterleitung auf den EchoDot gemacht und nicht auf den Gira HS. Habe das jetzt nur durch deinen Tip Prüfung Punkt 2 und nachsehen in der FritzBox bemerkt.

    Am einfachsten gescheitert

    Chris

    Einen Kommentar schreiben:


  • wernerL
    antwortet
    Hallo Chris,

    die Lamba-Funktion kann scheinbar keine Verbindung zu dem Service deines Logikbausteins aufbauen.
    Sieht für mich nach einem Problem mit der Portweiterleitung oder dem SSL-Zertifikat aus.

    Prüfe bitte folgende Punkte:
    1. Der Zugriff per http bzw. nach Einrichtung von SSL mit https und lokaler IP des Homeservers funktioniert? (siehe auch Punkt 1.1 Test der Gira Installation im Wiki)
    2. Falls ja, das Gleiche nochmal mit externer IP bzw. Dyndns-Namen testen.

    Viele Grüße
    Werner

    Einen Kommentar schreiben:


  • chris_s
    antwortet
    Nachdem ich nun eigentlich soweit alles nach der sehr ausführlichen und perfekten Anleitung hinbekommen habe, bekomme ich keine Geräte angezeigt.

    Im Log habe ich einen Serverfehler. Hatte hier evtl. schon jemand sowas ähnliches?

    Danke

    Chris
    Angehängte Dateien
    Zuletzt geändert von chris_s; 15.07.2017, 23:27.

    Einen Kommentar schreiben:

Lädt...
X