Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Längenbegrenzung im Datenpunkt alexa2.0....Commands.speak ?

    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

    Längenbegrenzung im Datenpunkt alexa2.0....Commands.speak ?

    This topic has been deleted. Only users with topic management privileges can see it.
    • M
      MCU @derrapf last edited by MCU

      @derrapf
      e511b4b8-63e6-4a50-a1f4-e5e0aafdfe79-image.png

      <speak> Amtliche WARNUNG vor STARKEM GEWITTER. Es treten Gewitter auf. Dabei gibt es Sturmböen mit Geschwindigkeiten bis 70 k m h (20 Meter pro Sekunde , 38 Knoten , Beaufort 8) sowie Starkregen mit Niederschlagsmengen bis 25 Liter pro Quadratmeter pro Stunde und kleinkörnigen Hagel. </speak>
      

      in den DP ssml:
      2723739b-333e-4d0d-bfe5-6823babbf3ba-image.png

      Dort ist die Grenze ~ 10000 Zeichen.

      D 1 Reply Last reply Reply Quote 0
      • D
        derrapf @MCU last edited by derrapf

        @mcu
        Den ssml Datenpukt verwende ich nicht.
        Bisher habe ich es so gemacht und das funktiniert auch (also ohne die xml-Tags)
        18d3c4e4-bc8d-46c6-817e-bac7823260a4-grafik.png
        Wenn ich den Text von oben versuche einzugeben, also so:
        396d3eb3-1ff4-478f-b6da-3e61d2d3b4b1-grafik.png
        Dann wird (wenn ich den String manuell wie oben eingebe) der Datenpunkt zwar beschrieben, aber der Echo-Dot bleibt still:
        3472e399-d7ae-41da-8ab4-62429ddee649-grafik.png
        Wenn ich den Datenpunkt über Java-Script setzen würde, dann würde gar nichts passieren und es steht weiterhin der erste Text (der mit der Waschmaschine) im Datenpunkt.
        Ich habe manuell auch mal versucht die xml-Tags mit einzubauen, aber gleiches Ergebnis.

        So ich habe mal rumexperimentiert.
        Der Datenpunkt ...command.speak kann scheinbar tatsächlich nur 255 Zeichen.
        Das war früher definitiv anders (ich verwende die aktuelle Alexa2 Version)
        @apollon77: Kann man das wieder ändern? Also den Datenpunkt von der Stringlänge her erweitern?
        Oder anders gefragt: Wie bekomme ich diese langen Texte durchgesagt?
        Ich könnte die zwar splitten, aber ich muss dann den Dot nacheinander mit den Textfragmenten ansteuern und weiss ja dann nicht wann er mit dem Ersten fertig ist. Es wird in keinem Fall einen Satz ohne Unterbrechung ergeben...

        Ich könnte jetzt alle Scripte auf ssml umstellen habe, aber keine Erfahrung mit dem Datenpunkt und laufe vielleicht in neue Probem. Ist DP identisch mit speak?
        Bzw. was macht der Anders? Wie kann ich hier die Lautstärke mitgeben?
        Gruss Ralf

        apollon77 M 2 Replies Last reply Reply Quote 0
        • apollon77
          apollon77 @derrapf last edited by

          @derrapf sagte in Längenbegrenzung im Datenpunkt alexa2.0....Commands.speak ?:

          @apollon77: Kann man das wieder ändern? Also den Datenpunkt von der Stringlänge her erweitern?

          Also ich zitiere mal aus der Adapter Readme:

          Detailed information Speak and Announcement: Type in here what you want Alexa to say. You can also adjust the volume of Alexa by giving a percentage before your text. Example: 10;Alexa is saying Alexa with 10% volume, while 100;Alexa is 100% volume. Normally you only can send 250 characters per speak command. By using the semicolon it is possible to write as much as you want, as long as you separate 250 characters with a semicolon. Alexa will then speak the text after each other with a small break. You also can use the volume together with more 255 blocks by writing #Volume;#Block1;#Block2, a.s.o A volume set here will be used over a defined speak-volume.

          Und das ist schon immer so. Frage damit beantwortet?

          D 1 Reply Last reply Reply Quote 2
          • M
            MCU @derrapf last edited by

            @derrapf ssml Volume mitgeben:

            // mögliche Werte
            // silent, x-soft, soft, medium, loud, x-loud
            <speak><prosody volume="loud">Test Nachricht</prosody></speak>
            
            1 Reply Last reply Reply Quote 0
            • D
              derrapf @apollon77 last edited by

              @apollon77 sagte in Längenbegrenzung im Datenpunkt alexa2.0....Commands.speak ?:

              Und das ist schon immer so. Frage damit beantwortet?

              Im Grunde ja. Nur frage ich mich warum das früher ohne die Semikolons geklappt hat. Der Adapter hat ja jahrelang die DWD Nachrichten an den Echo-dot geschickt und der hat diese riesigen Texte auch brav vorgelesen. Irgend wann mal hat das dann aufgehört.
              Da komme ich natürlich nicht auf die Idee die Syntax des zu sprechenden Textes zu hinterfragen.
              Aber Ok.
              Ich versuch dann mal die Scripte umzustellen und diese Blöcke zu generieren.
              Danke
              Gruss Ralf

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

                @derrapf Das kann ich Dir gerade nicht sagen.

                D 1 Reply Last reply Reply Quote 0
                • D
                  derrapf @apollon77 last edited by

                  @apollon77
                  Funktioniert.
                  By the way: Hab mal versuchsweise die Funktion zum Splitten des Texts und einbauen der Semikolons von ChatGPT machen lassen. Was soll ich sagen: Das hat auf Anhieb funktioniert. Spooky das Ding.

                  Gruss Ralf

                  D 1 Reply Last reply Reply Quote 1
                  • D
                    derrapf @derrapf last edited by

                    @derrapf Auch an @MCU danke für die Tipps

                    1 Reply Last reply Reply Quote 2
                    • M
                      MCU last edited by MCU

                      @derrapf Stellst du dann auch bitte das Script rein von ChatGPT, damit andere es nutzen können. Danke.

                      D 1 Reply Last reply Reply Quote 0
                      • D
                        derrapf @MCU last edited by

                        @mcu Gerne hier ist es

                        function prepareTextforAlexa(text) {
                          if (typeof text !== 'string') {
                            throw new Error('Input must be a string.');
                          }
                          const maxLength = 250;
                          const words = text.match(/\S+/g);
                        
                          let combinedText = '';
                          let currentPart = '';
                        
                          for (let i = 0; i < words.length; i++) {
                            const word = words[i];
                            if ((currentPart.length + word.length + 1) <= maxLength) {
                              currentPart += word + ' ';
                            } else {
                              combinedText += currentPart.trim() + '; ';
                              currentPart = word + ' ';
                            }
                          }
                        
                          combinedText += currentPart.trim();
                         return combinedText;
                        }
                        

                        Gruss Ralf

                        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

                        882
                        Online

                        31.9k
                        Users

                        80.2k
                        Topics

                        1.3m
                        Posts

                        alexa.2
                        3
                        11
                        503
                        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