Ankündigung

Einklappen
Keine Ankündigung bisher.

Alexa Text to Speech

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

  • Cannon
    antwortet
    Irgendwie funktioniert das plugin bei mir wieder nicht. Das die Anmeldung nicht klappt habe ich irgendwie ständig. Meistens gehts dann mit ein paar mal hin- und her wieder. Aber jetzt gar nicht. Das steht im protocol:

    Code:
    2023-03-05 13:33:58 cookieFile- Step 6 - creation done
    2023-03-05 13:33:58 check CSRF- Step 5 - got no CSRF
    2023-03-05 13:33:58 HTTP : 200- Step 4 - get csrf
    2023-03-05 13:33:58 HTTP : 404- Step 3 - login with credentials
    2023-03-05 13:33:58 MFA  : use MFA/OTP - Login OTP : 188284
    2023-03-05 13:33:58 HTTP : 404- Step 2 - login blank to get referer
    2023-03-05 13:33:58 HTTP : 200- Step 1 - get Session-ID
    2023-03-05 13:27:46 login state : False​
    Eingerichtet habe ich das über das MFA-Login, wo ich eben alle Schritte durchgegangen sind. Der Haken leuchtet da auch grün, aber der Login scheint dennoch nicht zu klappen.

    Einen Kommentar schreiben:


  • henfri
    antwortet
    Zitat von AndreK Beitrag anzeigen
    Hallo henfri,

    ich habe das JSON oben nochmal geändert, da waren noch hart kodierte Daten für Customer usw. drin.
    Bitte nochmal versuchen
    Danke, das klappt soweit.

    gruß,
    Hendrik

    Einen Kommentar schreiben:


  • Jürgen
    antwortet
    Held des Tages!

    Ja, manchmal braucht man vier Augen, die typische Betriebsblindheit. Hatte Samstag die Dateien neu aus dem Git gezogen, dabei aber ein zusätzliche Unterverzeichnis erzeugt.
    Im "richtigen" Verzeichnis war die cmd Datei erneuert, warum auch immer...

    ​Nun läuft es wieder DANKE!!!

    Gruß Jürgen
    Zuletzt geändert von Jürgen; 06.03.2023, 06:32.

    Einen Kommentar schreiben:


  • AndreK
    antwortet
    Hi Jürgen,

    der Pfad stimmt glaube ich nicht. Ausser Du hast sonst noch etwas verbogen ?

    Bei Dir :

    "/usr/local/smarthome/plugins/alexarc4shng/alexarc4shng/cmd"

    korrekt müsste sein

    "/usr/local/smarthome/plugins/alexarc4shng/cmd"

    Gruss Andre

    Einen Kommentar schreiben:


  • Jürgen
    antwortet
    Hi,

    verhext...
    Also: Mit dem Code im Webif erfolgt eine Ausgabe, über Item geht nix, nach einem Refresh des WEBIF ist der Parameter wieder weg...

    Der steht aber auch so in der Text2Speech.cmd, die ich mir am Samstag noch mal vom GIT gezogen habe.

    apiurl|/api/behaviors/preview
    description|Text to speach
    json|{"status": "ENABLED", "sequenceJson": {"@type": "com.amazon.alexa.behaviors.model.Sequence", "startNode": {"@type": "com.amazon.alexa.behaviors.model.OpaquePayloa dOpe rationNode", "type": "Alexa.Speak", "operationPayload": {"textToSpeak": "<mValue>", "locale": "de-DE", "customerId": "<deviceOwnerCustomerId>", "deviceSerialNumber": "<serialNumber>", "deviceType": "<deviceType>"}}}, "behaviorId": "PREVIEW"}

    Noch ne idee, wie ich dem Plugin den Code unterschieben kann? Owner und Berechtigungen sollten stimmen:
    grafik.png
    Immer noch verzweifelte Grüße
    Jürgen


    PS: Warum sehe ich die Klingel nicht, obwohl als command enthalten?
    grafik.png

    Einen Kommentar schreiben:


  • AndreK
    antwortet
    Sorry,

    doch da fehlt die Variable die durch den Text ersetzt wird.

    an dieser Stelle muss das stehen :
    Code:
    "textToSpeak": "<mValue>"​,
    Das ist in der Payload-Vorlage irgendwie abhanden gekommen. Das Original von Git sieht so aus :

    Code:
    {
       "status":"ENABLED",
       "sequenceJson":{
          "@type":"com.amazon.alexa.behaviors.model.Sequence",
          "startNode":{
             "@type":"com.amazon.alexa.behaviors.model.OpaquePayloadOperationNode",
             "type":"Alexa.Speak",
             "operationPayload":{
                "textToSpeak":"<mValue>",
                "locale":"de-DE",
                "customerId":"<deviceOwnerCustomerId>",
                "deviceSerialNumber":"<serialNumber>",
                "deviceType":"<deviceType>"
             }
          }
       },
       "behaviorId":"PREVIEW"
    }​
    Am besten diesen Code nochmal einfügen und das Commandlet speichern. Dann neuer Test.

    VG
    Andre

    Einen Kommentar schreiben:


  • Jürgen
    antwortet
    Hi,

    nee, den habe ich ins Testfeld eingetragen, aber auch die normalen Meldungen über items kommen ja nicht, da ist der Text ja auch verdrahtet..

    grafik.png

    Ich boote den Beagle noch mal durch, hatte vorher nur den Smarthome service restartet...

    Jürgen
    Angehängte Dateien

    Einen Kommentar schreiben:


  • AndreK
    antwortet
    Hallo Jürgen,

    da fehlt der Text im Payload, textToSpeak : "", dann wird der Show wohl auch nichts sagen.

    Code:
    {
       "behaviorId":"PREVIEW",
       "sequenceJson":{
          "@type":"com.amazon.alexa.behaviors.model.Sequence",
          "startNode":{
             "@type":" com.amazon.alexa.behaviors.model.OpaquePayloadOperationNode",
             "operationPayload":{
                "custom erId":"{id}",
                "deviceSerialNum ber":"{ECHO-Serial}",
                "deviceType ":"{ECHO-ID}",
                "locale":"de-DE",
                "textToSpeak":""
             },
             "type":"Alexa.Speak"
          }
       },
       "status":"ENABLED"
    }​
    Gruss
    Andre

    Einen Kommentar schreiben:


  • Jürgen
    antwortet
    Jepp, funzt, hab ich Samstag wohl überlesen...

    OK, die MFA Anmeldung funktioniert:

    2023-02-06 10:52:37 pyOTP installed you can use MFA
    2023-02-06 10:52:36 Login-State checked - Result: Logged ON
    2023-02-06 10:52:36 Status of check_login_state: 200
    2023-02-06 10:52:36 login state : True
    2023-02-06 10:52:36 cookieFile- Step 6 - creation done​

    Die Kartoffel grinst, ich kann meine Alexa Geräte abrufen.

    Es erfolgt aber keine Ausgabe :-(
    Weder über Item, noch über die Testfunktion im Webif...
    Bei "Test" kommt kurz das Popup, aber es passiert nichts. Anzeige ist http 200

    Im Protokoll steht:
    2023-02-06 11:00:53 Result of sending Command : 200
    2023-02-06 11:00:52 sending command to "Show" payload "{"behaviorId":"PREVIEW","sequenceJson":"{\ "@type":"com.amazon.alexa.behaviors.model. Sequence","startNode":{"@type":" com.amazon.alexa.behaviors.model.OpaquePayloadOper ationNode","operationPayload":{"custom erId":"{id}","deviceSerialNum ber":"{ECHO-Serial}","deviceType\\\ ":"{ECHO-ID}","locale":"de-DE","textToSpeak":""},"type": "Alexa.Speak"}}","status":"ENABLED"}"
    2023-02-06 10:58:23 Result of sending Command : 200

    Nachtrag: Volume set "0" im Testmodus funktioniert:
    2023-02-06 11:13:49 Result of sending Command : 200
    2023-02-06 11:13:49 sending command to "Show" payload "{"type":"VolumeLevelCommand","volumeLevel": 50}"
    2023-02-06 11:13:10 Result of sending Command : 200
    2023-02-06 11:13:09 sending command to "Show" payload "{"type":"VolumeLevelCommand","volumeLevel": 0}"
    2023-02-06 11:11:37 Result of sending Command : 200​

    Noch jemand eine Idee?

    Gruß Jürgen
    Zuletzt geändert von Jürgen; 06.02.2023, 11:15.

    Einen Kommentar schreiben:


  • AndreK
    antwortet
    Hi Jürgen,

    das ist die normale Anmeldung an der Amazon-Website die hier aufpoppt. Diese musst Du ganz normal durchführen.
    Hier bekommst Du eine SMS mit dem OTP für die Anmeldung, erst dann geht es mit der Standard-Prozedur per Web-IF und App-Erstellung weiter.

    Falls keine korrekte Nummer hinterlegt ist und Du keinen OTP auf dein Handy bekommst mußt Du wohl den Schritt der Kontowiederherstellung gehen.

    Gruss
    Andre

    Einen Kommentar schreiben:


  • Jürgen
    antwortet
    Hallo Andre,

    den Code habe ich geändert, zum Barcode komme ich immer noch nicht :-(

    Amazon1.jpg Amazon1.jpg
    Passwort eingegeben

    Amazon2.jpg

    OTP nicht erhalten

    Amazon3.jpg
    Und nun? Hab Firefox und Chrome probiert...

    Ratlose Grüße
    Jürgen
    Angehängte Dateien

    Einen Kommentar schreiben:


  • AndreK
    antwortet
    Hi henfri,

    die Endpoints für die Kommandos bleiben (aus meiner Sicht). Allerdings glaube ich, dass die Authentifizierung gegen die Web-Site irgendwann Geschichte sein wird.
    Das müsste dann genauso geschehen wie es die Alexa-App macht. Ich hatte hier schonmal Untersuchungen angestellt. Bin aber nicht wirklich weitergekommen - Zeit und so.

    Jetzt ist mir mein "Man in the Middle" noch abhanden gekommen (ein geliehener/zusätzlicher Raspi von einem Freund - der braucht ihn für ein PV-Wohnmobil-Projekt).
    Von daher, von meiner Seite, im Moment schwierig was zu untersuchen.

    Da aber alle (Edomi, iobroker, openhab, lötzimmer, .......) vor der gleichen Herausforderung stehen bin ich mir sicher es wird eine Lösung geben (früher oder später)

    Noch funktioniert es ja, also warten wir mal.

    Viele Grüße
    Andre

    Einen Kommentar schreiben:


  • henfri
    antwortet
    Hm, das hört sich ja nicht gut an.
    Bist du zuversichtlich, dass man die Funktionen weiter nutzen kann, auch wenn Amazon die Webseite nach und nach abschaltet?

    Einen Kommentar schreiben:


  • AndreK
    antwortet
    Hi Juergen,

    das Alexa-Remote-Control Plugin verwendet die AWS nicht. Daher kann die Gültigkeit deiner Zahlungsweise keine Rolle spielen.
    Ob die Zahlungsweise gültig ist kann eventuell eine Rolle beim alexa4p3-Plugin spielen, hier wird die AWS-Cloud genutzt.

    Es gibt wohl wieder Neuerungen bei Amazon, die Website "alexa.amazon.de" verweist nun direkt auf die Installation der Alexa-App per QR-Code.
    Man kann trotz allem noch die Seite aufrufen, die Funktionen sind aber sehr beschränkt. Über kurz oder lang wird die Seite sicher "down" sein.

    Bis heute hatte das Plugin bei mir noch funktioniert (Mit einem bestehenden Cookie). Bei der Erneuerung des Cookies war dann Schluss.
    Das Login via MFA funktioniert noch. Es muss für die Anmeldung eine andere URL aufgerufen werden.

    Workaround für das bestehende Plugin :
    In der "./plugins/alexarc4shng/__init__.py" in der Zeile 1102 die Url entsprechend ergänzen

    Code:
    myStatus,myRespHeader, myRespCookie, myContent,myLocation = self.send_get_request('https://'+self.host,myHeaders)​
    ändern in

    Code:
    myStatus,myRespHeader, myRespCookie, myContent,myLocation = self.send_get_request('https://'+self.host+'/spa/index.html',myHeaders)​
    der wichtige Teil ist dieser +'/spa/index.html'

    Ich bin insgesamt am Überarbeiten und möchte dann eine aktualisierte Version gegen Develop pullen. (Das mit der Lautstärke)

    Zum Login via MFA über das WebIF :

    Wenn die Amazon-Seite geöffnet wird (https://www.amazon.de/a/settings/approval) musst du dort eine neue "App" hinzufügen. (Achte hier bitte mal auf die Anzahl der bestehenden Apps.)

    Dann wird das Pop-Up mit dem Barcode geöffnet. Hier nun auf "Barcode kann nicht gescannt werden" klicken. Das MFA-Secret kopieren und im Web-IF eintragen. Im Web-IF weiter klicken. Der OTP-Code wird berechnet. Den berechneten OTP aus dem Web-IF nun auf der Amazon-Seite eintragen.
    Danach sollte die Anzahl deiner Apps auf der Amazon-Seite um eins erhöht worden sein und die restlichen Schritte im Web-IF können abgearbeitet werden.

    Viel Erfolg und viele Grüße
    Andre

    Einen Kommentar schreiben:


  • Jürgen
    antwortet
    Hallo Leuts,

    nun stehe ich mal wieder auf dem Schlauch: Seit Februar keine Sprachausgabe mehr, wobei Schalten noch geht.
    Mal bei AWS angemeldet und gesehen, dass meine hinterlegte Kreditkarte 2/23 ausläuft. (Also noch gültig?).
    Neue Kartendaten hinterlegt, Anmeldung geht aber nicht:

    2023-02-04 12:35:49 pyOTP installed you can use MFA
    2023-02-04 12:35:46 login state : False
    2023-02-04 12:35:46 cookieFile- Step 6 - creation done
    2023-02-04 12:35:46 check CSRF- Step 5 - got no CSRF
    2023-02-04 12:35:46 HTTP : 200- Step 4 - get csrf
    2023-02-04 12:35:46 HTTP : 404- Step 3 - login with credentials
    2023-02-04 12:35:46 MFA : use MFA/OTP - Login OTP : xxxxxx
    2023-02-04 12:35:46 HTTP : 404- Step 2 - login blank to get referer
    2023-02-04 12:35:46 HTTP : 200- Step 1 - get Session-ID
    2023-02-04 12:35:43 successfully logged off​

    Habe versucht das MFA Secretneu zu hinterlegen, aber ich komme am Punkt 3 nicht weiter: Webseite öffnen,OTP als SMS senden und dann angeben.
    Aber ich finde die Stelle nicht mehr, wo ich das Secret in das Webif eingebe (Fenster "Kann Barcode nicht lesen" kommt nicht), der sechser OTP Code wird nicht angenommen). Irgenwie ist dan der Stelle noch eine Lücke in der Doku.

    Ich habe übrigens noch die ältere Version ohne Klingel, aber die sollte doch trotzdem laufen, oder?

    Bei Grundsätzlichen Problemen ist ein Blick auf die hinterlegten Zahlungsdaten - auch wenn nichts abgebucht wird - auf jeden Fall eine Option.

    Nachtrag:

    Ich habe das Plugin nach #262 nochmal kopiert, ist die 1.0.3 noch aktuell?
    Auch nach einem Restar wird mir die Kligel nicht angezeigt (brauche ich auch gerade nicht)...
    Ich bin noch auf Master 1.8.3, liegt es daran?

    Eigentlich lief die Kiste ja bis Ende Januar.....




    Übrigens: Bis heute ewig nichts gemacht, lief einfach....

    beagle.jpg
    Gruß Jürgen
    Angehängte Dateien
    Zuletzt geändert von Jürgen; 04.02.2023, 18:31.

    Einen Kommentar schreiben:

Lädt...
X