Ankündigung

Einklappen
Keine Ankündigung bisher.

Amazon Alexa Plugin

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

  • hotzen
    antwortet
    Ansonsten ist "
    Could not connect to xxx.ddns.net" doch sehr deutlich?

    Einen Kommentar schreiben:


  • hotzen
    antwortet
    fehlt da die Freigabe des well-known dirs für das letsencrypt Challenge response Verfahrens?

    Einen Kommentar schreiben:


  • Roho0303
    antwortet
    Hmmm, wenn ich den Port in der Fritzbox als "Expended Host" freischalte dann sagt mir certbot das hier....


    Code:
    IMPORTANT NOTES:
     - The following errors were reported by the server:
    
       Domain: xxxxxx.ddns.net
       Type:   unauthorized
       Detail: Invalid response from
       http://xxxxxx.ddns.net/.well-known/acme-challenge/9aLgODwMqe-hyLgL0afwbU8ccUXez0F9IQiiaD9IdPE:
       "<html>
       <head><title>404 Not Found</title></head>
       <body bgcolor="white">
       <center><h1>404 Not Found</h1></center>
       <hr><center>"
    
       To fix these errors, please make sure that your domain name was
       entered correctly and the DNS A record(s) for that domain
       contain(s) the right IP address.

    Hier nochmal meine Config der your-home:



    Code:
    # Alexa
    server {
        listen 8089 ssl;
        server_name xxxx.ddns.net;
        access_log /var/log/nginx/alexa.log combined;
        error_log /var/log/nginx/alexa.err debug;
        auth_basic "Alexa";
        auth_basic_user_file /etc/nginx/htpasswd.alexa;
        include /etc/nginx/conf.d/common;
    
        location / {
            proxy_pass http://192.168.178.168:8089/;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        }
    }

    Einen Kommentar schreiben:


  • Roho0303
    antwortet
    Also irgendwie bekomme ich es nicht auf die Reihe... :-(

    Ich habe jetzt alles angelegt, aber immer noch einen Fehler in AWS Console. Das einzige was nicht so richtig geklappt hat war das Anlegen des Zertifikates da hat certbot gemeckert.

    Noch jemand ne Idee?


    Code:
    Domain: xxxx.ddns.net
       Type:   connection
       Detail: Could not connect to xxx.ddns.net
    
       To fix these errors, please make sure that your domain name was
       entered correctly and the DNS A record(s) for that domain
       contain(s) the right IP address. Additionally, please check that
       your computer has a publicly routable IP address and that no
       firewalls are preventing the server from communicating with the
       client. If you're using the webroot plugin, you should also verify
       that you are serving files from the webroot path you provided.

    Einen Kommentar schreiben:


  • Roho0303
    antwortet
    Ok, dann schlage ich mich mal durch ngix... Ich dachte es wäre für den ersten Test nicht zwingend erforderlich...#

    Einen Kommentar schreiben:


  • Roho0303
    antwortet
    hmmm ok, habe jetzt einen anderen Port genommen und den über die Fritzbox an den Smarthome Server geleitet.

    Fehler sieht jetzt so aus:
    Code:
     
     {   "errorMessage": "write EPROTO",   "errorType": "Error",   "stackTrace": [     "Object.exports._errnoException (util.js:870:11)",     "exports._exceptionWithHostPort (util.js:893:20)",     "WriteWrap.afterWrite (net.js:763:14)"   ] }
    In der Plugin Config habe ich wie folgt configuriert:

    Code:
    [alexa]
        class_name = Alexa
        class_path = plugins.alexa
    #   service_host = "0.0.0.0"
        service_port = 8089
    Noch ne Idee? Was ist der Pfad genau? ist der so korrekt? '/usr/local/smarthome'

    Einen Kommentar schreiben:


  • hotzen
    antwortet
    hört sich übrigens an als hättest du keinen nginx installiert und hättest damit keine ssl Terminierung, sondern eine einfache Port Weiterleitung eingerichtet.
    aws braucht in der derzeitigen impl, und weil es security mäßig notwendig ist, einen ssl Endpunkt.
    durch eine Port Weiterleitung von Fritz auf smarthomeNG alexa hast du aber noch keinen ssl Endpunkt, nicht mal wenn du den Standard Port 443 von ssl für deine Port Weiterleitung Missbrauchst

    Einen Kommentar schreiben:


  • hotzen
    antwortet
    Alexa hört standardmäßig auf 9000, du kannst also in der fritzbox einen beliebigen Port wie 8000 auf 9000 weiterleiten. aws muss dann auf 8000 connecten

    Einen Kommentar schreiben:


  • psilo
    antwortet
    Roho0303 wieso gehst du auf den https (443) port? Warum nicht einen unbelegten 4stelligen nehmen?
    den den du im plugin konfiguriert hast musst du nehmen..

    Einen Kommentar schreiben:


  • Roho0303
    antwortet
    Hallo,
    So, irgendwie komme ich hier nicht weiter. Ich bekomme in der Alexa App das Gerät welches ich in der Item Conf. angelegt habe nichgt zu gesicht. Wenn ich einen Test in der AWS umgebung mache kommt der folgende fehler: (IP - mit xx unkenntlich gemacht)
    Code:
    { "errorMessage": "connect ECONNREFUSED xx.xx.xx.xx:443", "errorType": "Error", "stackTrace": [ "Object.exports._errnoException (util.js:870:11)", "exports._exceptionWithHostPort (util.js:893:20)", "TCPConnectWrap.afterConnect [as oncomplete] (net.js:1062:14)" ] }
    Ich habe so das Gefühl das irgendwas mit meinem Port oder dem Verzeichnis nicht stimmt welches ich in der Lambda Funktion hinterlegt habe. Kann mir jemand mal nen Tipp geben?

    Also: Port 443 an Fritzbox weitergeleitet richtung Smarthome 443 -> Ist das richtig? Muss ich im Smarthome Server den Port noch irgendwo öffnen?
    Welchen Pfad muß ich der Funktion angeben?

    Danke für eure Hilfe.

    Einen Kommentar schreiben:


  • hotzen
    antwortet
    Du könntest ja theoretisch soviele lambda calls haben, dass es was kostet. aws ist ja für echte produktive Nutzung mit entsprechenden realen Zugriffen als cloud service keine kostenlose Veranstaltung. Amazon will also deine Kreditkarte um im eigentlichen Normalfall abrechnen zu können.
    ab wann lambda wieviel kostet, kannst du den preistabellen entnehmen. Aber es wird für dich kostenfrei sein weil lächerlich wenig Zugriffe

    Einen Kommentar schreiben:


  • Roho0303
    antwortet
    Servus,
    Kurze Frage:
    In dem Teil der Einrichtung auf Amazon in dem es aud die AWS Seiten geht ist eine weitere Registrierung inkl. Kreditkartennummer notwendig.
    Ist den der Service seitens Amazon kostenpflichtig? Da dort überall steht das die Nutzungsdauer nur 12 Monate ist.

    Danke für die Info....

    Einen Kommentar schreiben:


  • OsLee540i
    antwortet
    So,
    also folgender Vorgang ist ist erforderlich um z.B. einen bestimmten Radiosender von Alexa ohne Spracheingabe abspielen zu lassen:

    Ich hab das ganze mit Chrome gestartet, geht bei anderen Browsern bestimmt ähnlich.

    Anleitung vom Noob für Noobs.

    1. Chrome öffnen
    2. alexa.amazon.de öffnen und einloggen
    3. Musik und Bücher wählen
    4. Radiosender aussuchen (noch nicht draufklicken)
    5. Entwicklerkonsole öffnen (Rechts oben 3 Punkte --> weitere Tools --> Entwicklertools)
    6. Oben in der Konsole Network wählen.
    7. Auf gewünschten Radiosender klicken.
    8. Jetzt sollte in der Entwicklerkonsole einiges passieren, es sollte auch etwas mit queue-and-play erscheinen. (Siehe Bild)
    queue-and-play.png
    9. Rechtklick auf die Zeile mit queue-and-play ---> Copy ---> Copy as CUrl (cmd)
    10. https://curl.trillworks.com/ aufrufen ---> linke Spalte das eben Kopierte einfügen.
    11. In der rechten Spalte erscheint der fertige Python request
    (die Seite macht ab und zu get, obwohl es ein post befehl ist, einfach links unten post wählen und noch einmal einfügen)

    12. Den Request in die gewünschte Logik kopieren und weiter verwurschten.
    Mit der Stümperhaften Logik von mir:

    https://gist.github.com/OsLee540i/f957b5a08d5eb04f04db75e273c26a97

    kann nun der Radiosender über SH.py direkt auf Alexa abgespielt werden.

    Lautstärke Verstellung:

    Schritte 1 - 6 gleichbleibend
    7. Lautsprechersymbol anklicken und Lautstärke verstellen.
    8. In der Console erscheint Command?Device....
    Schritte 9 - 12 gleichbleibend

    Das Pause Kommando hab ich auch gleich mal in die Logik geschrieben.

    Probiert habe ich auch noch Bluetooth koppeln, entkoppeln. Das funktioniert aber nicht zuverlässig.


    Viel Spass

    Gruß Wolfi

    Einen Kommentar schreiben:


  • hotzen
    antwortet
    klar, immer her mit. danke!
    gerne als https://gist.github.com/ oder ähnlich verlinkt

    Einen Kommentar schreiben:


  • OsLee540i
    antwortet
    Servus,
    ich hätt eine Frage:
    besteht Interesse daran, Alexa über Smarthome.py zu steuern?
    Also der umgekehrte Weg.
    Ich hab einen relativ einfachen Weg gefunden z.B. einen bestimmten Radiosender abzuspielen, die Lautstärke direkt zu verstellen etc.
    Ich bin über das Alexa Forum und den Beitrag von Thorsten Gehrig darauf gestossen.
    Wenn es Interessenten gibt, würd ich eine kleine Anleitung und meine unprofessionelle Logik posten.
    Die Pro's können da bestimmt was basteln, wenns nicht sowieso schon passiert ist.

    Gruß Wolfi

    Einen Kommentar schreiben:

Lädt...
X