Ankündigung

Einklappen
Keine Ankündigung bisher.

Alexa Text to Speech

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



    Dann bin ich ja froh das es nicht das Alexa-RC-Plugin war

    Gruss Andre

    Kommentar


      Zitat von AndreK Beitrag anzeigen
      Dann bin ich ja froh das es nicht das Alexa-RC-Plugin war
      Dennoch vielen Dank für die Mühe. :-)

      Kommentar


        Hallo,

        habt ihr Erfahrung mit den Kommandos Klingel und/oder VolumeAdj?

        Bei Klingel habe ich das Problem, dass danach die Lautstärke auf 100% ist (und bleibt).
        Bei VolumeAdj funktionieren nur positive Werte. Bei negativen Werten sehe ich keine Reaktion.

        Gruß,
        Hendrik

        Kommentar


          Hallo Hendrik,

          Volume habe ich noch nicht benutzt...
          Klingel irritiert mich gerade: Kenne ich noch nicht.....
          Scheint mir auch eher ein "Normales" Alexa Kommando zu sein, oder ist es wirklich Sprachausgabe?
          Erklär die Funktion doch mal ;-)

          Gruß Jürgen

          Kommentar


            Probiers einfach:
            image.png

            Kommentar


              Hi henfri, Juergen,

              da ist wohl irgendwas durcheinander gekommen. Mein Payload für Klingel sieht so aus und funktioniert :
              Ihr könnt ja einfach ein neues "Command-Let" mit diesem Payload erstellen.

              Code:
              {
                "behaviorId": "PREVIEW",
                "status": "ENABLED",
                "sequenceJson": {
                  "@type": "com.amazon.alexa.behaviors.model.Sequence",
                  "sequenceId": "amzn1.alexa.sequence.8d9b40ab-91a7-46c1-8d42-1cd53408874f",
                  "startNode": {
                    "@type": "com.amazon.alexa.behaviors.model.SerialNode",
                    "name": null,
                    "nodesToExecute": [
                      {
                        "@type": "com.amazon.alexa.behaviors.model.OpaquePayloadOperationNode",
                        "nodeState": null,
                        "name": null,
                        "type": "Alexa.DeviceControls.Volume",
                        "skillId": "amzn1.ask.1p.alexadevicecontrols",
                        "operationPayload": {
                          "customerId": "<deviceOwnerCustomerId>",
                          "deviceType": "<deviceType>",
                          "deviceSerialNumber": "<serialNumber>",
                          "value": 80,
                          "locale": "de-DE"
                        },
                        "presentationDataList": null,
                        "clientData": null,
                        "context": null,
                        "tag": null
                      },
                      {
                        "@type": "com.amazon.alexa.behaviors.model.OpaquePayloadOperationNode",
                        "nodeState": null,
                        "name": null,
                        "type": "Alexa.Sound",
                        "skillId": "amzn1.ask.1p.sound",
                        "operationPayload": {
                          "customerId": "<deviceOwnerCustomerId>",
                          "deviceType": "<deviceType>",
                          "deviceSerialNumber": "<serialNumber>",
                          "soundStringId": "amzn_sfx_doorbell_chime_02",
                          "locale": "de-DE"
                        },
                        "presentationDataList": null,
                        "clientData": null,
                        "context": null,
                        "tag": null
                      },
                      {
                        "@type": "com.amazon.alexa.behaviors.model.OpaquePayloadOperationNode",
                        "nodeState": null,
                        "name": null,
                        "type": "Alexa.DeviceControls.Volume",
                        "skillId": "amzn1.ask.1p.alexadevicecontrols",
                        "operationPayload": {
                          "customerId": "<deviceOwnerCustomerId>",
                          "deviceType": "<deviceType>",
                          "deviceSerialNumber": "<serialNumber>",
                          "value": 20,
                          "locale": "de-DE"
                        },
                        "presentationDataList": null,
                        "clientData": null,
                        "context": null,
                        "tag": null
                      }
                    ]
                  }
                }
              }​
              VG
              Andre
              Zuletzt geändert von AndreK; 29.01.2023, 15:24. Grund: JSON geändert

              Kommentar


                Hi Andre,

                danke für die schnelle Antwort.
                Wenn ich es richtig verstehe, füge ich den Code einfach unter Klingel ein und klicke "Save". Damit wir das Comandlet überschrieben. Richtig?
                Leider funktioniert es nicht. Es gibt ein 400 als return code.
                Im Log gibt es ein
                Code:
                WARNING  plugins.alexarc4shng itemStatus of send_cmd: 400: {"message":"Input failed to validate."}
                ​
                Der JSON Check war aber ok.
                image.png

                Hast du eine Idee, woran es liegt?

                Davon abgesehen: Die Lautstärken sind hier ja mit 80 und 20 hardgecoded. Kann man auch auf den vorherigen Wert zurück?

                Gruß,
                Hendrik

                Kommentar


                  Hallo henfri,

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

                  Nachtrag zum Thema Lautstärke auf die Vorherige zurück setzen :
                  Hier hat sich die API komplett geändert, der aktuelle Wert steht nun wo ganz anders. Das Ändern wurde von einem "POST" request auf einen "PUT" mit einer anderen URL geändert. Hier muss man wohl anpassen

                  Gruß
                  Andre
                  Zuletzt geändert von AndreK; 29.01.2023, 15:52. Grund: Nachtrag siehe Beitrag

                  Kommentar


                    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.

                    Kommentar


                      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

                      Kommentar


                        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?

                        Kommentar


                          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

                          Kommentar


                            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

                            Kommentar


                              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

                              Kommentar


                                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.

                                Kommentar

                                Lädt...
                                X