Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. Sayit Adapter- Probleme nach Update

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    3.2k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.1k

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.4k

Sayit Adapter- Probleme nach Update

Scheduled Pinned Locked Moved ioBroker Allgemein
51 Posts 10 Posters 7.3k Views 6 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • F fvp

    @bahnuhr Danke für die Rückmeldung! Da habe ich aktuell noch keine Idee wie ich das geht. Bis jetzt habe ich einfach den Datenpunkt sayit.0.tts.text oder die Blockly-Funktion genutzt.

    bahnuhrB Online
    bahnuhrB Online
    bahnuhr
    Forum Testing Most Active
    wrote on last edited by
    #37

    @fvp sagte in Sayit Adapter- Probleme nach Update:

    keine Idee wie ich das geht.

    Man muss halt auch mal die Hilfe der Adapter lesen.
    Bringt manchmal Erleuchtung.

    Denn da steht alles was du gerade suchst.


    Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
    Danke.
    gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
    ScreenToGif :https://www.screentogif.com/downloads.html

    1 Reply Last reply
    0
    • bahnuhrB Online
      bahnuhrB Online
      bahnuhr
      Forum Testing Most Active
      wrote on last edited by
      #38

      per js so:

      setState('sayit.x.tts.text', '/opt/iobroker/iobroker-data/files/vis.0/mp3/xxx.mp3');
      setTimeout(function() { setState('sayit.x.tts.text', "Spülmaschine ist fertig.") } , 3000);
      

      Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
      Danke.
      gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
      ScreenToGif :https://www.screentogif.com/downloads.html

      F D 3 Replies Last reply
      0
      • bahnuhrB bahnuhr

        per js so:

        setState('sayit.x.tts.text', '/opt/iobroker/iobroker-data/files/vis.0/mp3/xxx.mp3');
        setTimeout(function() { setState('sayit.x.tts.text', "Spülmaschine ist fertig.") } , 3000);
        
        F Offline
        F Offline
        fvp
        wrote on last edited by
        #39

        @bahnuhr
        Erstmal vielen Dank für den Code.
        Das ich an dieser Stelle auch eine Datei angeben kann habe ich noch nicht gewusst.
        In der Hilfe steht hier

        sayit.N.tts.text: Phrase to be spoken.
        

        Hast du den Ankündigungston im Adapter abgeschaltet ?
        Ansonsten würde der Adapter in Zeile 2 ja versuchen diesen auszugeben ?

        1 Reply Last reply
        0
        • bahnuhrB bahnuhr

          per js so:

          setState('sayit.x.tts.text', '/opt/iobroker/iobroker-data/files/vis.0/mp3/xxx.mp3');
          setTimeout(function() { setState('sayit.x.tts.text', "Spülmaschine ist fertig.") } , 3000);
          
          F Offline
          F Offline
          fvp
          wrote on last edited by
          #40

          @bahnuhr
          Ich habe deinen Tipp gerade ausprobiert.
          Als Workaround kann man das so machen.

          Aber die Idee hinter dem Adapter ist doch eigentlich das man sich darum nicht kümmern muss

                  // place as first the announcement mp3
                  tasks.push({
                      text: announce,
                      language,
                      volume: Math.round((volume || 70) / 100 * (parseInt(annoVolume, 10) || 50)),
                      ts: task.ts,
                      testOptions
                  });
                  // and then text
                  tasks.push(task);
          
          bahnuhrB 1 Reply Last reply
          0
          • F fvp

            @bahnuhr
            Ich habe deinen Tipp gerade ausprobiert.
            Als Workaround kann man das so machen.

            Aber die Idee hinter dem Adapter ist doch eigentlich das man sich darum nicht kümmern muss

                    // place as first the announcement mp3
                    tasks.push({
                        text: announce,
                        language,
                        volume: Math.round((volume || 70) / 100 * (parseInt(annoVolume, 10) || 50)),
                        ts: task.ts,
                        testOptions
                    });
                    // and then text
                    tasks.push(task);
            
            bahnuhrB Online
            bahnuhrB Online
            bahnuhr
            Forum Testing Most Active
            wrote on last edited by
            #41

            @fvp

            Dein Script sagt jetzt aber absolut nix mit sayit.


            Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
            Danke.
            gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
            ScreenToGif :https://www.screentogif.com/downloads.html

            F 1 Reply Last reply
            0
            • bahnuhrB bahnuhr

              @fvp

              Dein Script sagt jetzt aber absolut nix mit sayit.

              F Offline
              F Offline
              fvp
              wrote on last edited by
              #42

              @bahnuhr
              Das ist nicht von mir.
              Ist ein Ausschnitt der Funktion addToQueue aus der main.js des Sayit Adapter.

              bahnuhrB 1 Reply Last reply
              0
              • F fvp

                @bahnuhr
                Das ist nicht von mir.
                Ist ein Ausschnitt der Funktion addToQueue aus der main.js des Sayit Adapter.

                bahnuhrB Online
                bahnuhrB Online
                bahnuhr
                Forum Testing Most Active
                wrote on last edited by
                #43

                @fvp sagte in Sayit Adapter- Probleme nach Update:

                Funktion addToQueue aus der main.js des Sayit Adapter.

                Uns was willst du jetzt damit ?

                mal kritisch von mir:
                Du weißt nicht wie man eine mp3 sendet.
                und dann beschäftigst du dich mit der main.js

                Passt m.E. nicht zusammen.

                Aber einen workflow von mir hast du ja jetzt.


                Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                Danke.
                gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                ScreenToGif :https://www.screentogif.com/downloads.html

                F 1 Reply Last reply
                0
                • bahnuhrB bahnuhr

                  @fvp sagte in Sayit Adapter- Probleme nach Update:

                  Funktion addToQueue aus der main.js des Sayit Adapter.

                  Uns was willst du jetzt damit ?

                  mal kritisch von mir:
                  Du weißt nicht wie man eine mp3 sendet.
                  und dann beschäftigst du dich mit der main.js

                  Passt m.E. nicht zusammen.

                  Aber einen workflow von mir hast du ja jetzt.

                  F Offline
                  F Offline
                  fvp
                  wrote on last edited by
                  #44

                  @bahnuhr
                  Ich möchte damit sagen: das von dir gezeigte Vorgehen, für das ich dankbar bin , geht daran vorbei wie der Adapter eigentlich konzipiert ist.

                  Zu deiner Kritik.
                  Du sendest ja keine MP3 sondern übergibst dem Adapter den Pfad zur Datei. Sorry das ich nicht wusste das der Adapter das unterstützt und das du dies mit senden meinst. Das heißt doch aber nicht das ich mich mit dem Thema nicht beschäftigt habe !?:thinking_face:

                  Mal kritisch von mir:
                  Warum eigentlich dieser "scharfe" Ton und kein konstruktives Zusammenarbeiten ? :v:

                  bahnuhrB 1 Reply Last reply
                  0
                  • F fvp

                    @bahnuhr
                    Ich möchte damit sagen: das von dir gezeigte Vorgehen, für das ich dankbar bin , geht daran vorbei wie der Adapter eigentlich konzipiert ist.

                    Zu deiner Kritik.
                    Du sendest ja keine MP3 sondern übergibst dem Adapter den Pfad zur Datei. Sorry das ich nicht wusste das der Adapter das unterstützt und das du dies mit senden meinst. Das heißt doch aber nicht das ich mich mit dem Thema nicht beschäftigt habe !?:thinking_face:

                    Mal kritisch von mir:
                    Warum eigentlich dieser "scharfe" Ton und kein konstruktives Zusammenarbeiten ? :v:

                    bahnuhrB Online
                    bahnuhrB Online
                    bahnuhr
                    Forum Testing Most Active
                    wrote on last edited by bahnuhr
                    #45

                    @fvp sagte in Sayit Adapter- Probleme nach Update:

                    "scharfe" Ton

                    War kein scharfer Ton.
                    Ganz im Gegenteil; habe dir sogar eine Script Vorlage frei Haus geliefert.

                    Aber ich habe dir am Anfang geschrieben du sollst du Hilfe lesen.
                    Was du nicht gemacht hast.
                    Und dann aber die main.js durchwühlen.

                    Und dies finde ich halt falsch.

                    Aber da du anscheinend empfinglich bist, bin ich jetzt raus.
                    keine Hilfe mehr von mir.
                    Schönen Abend dir.


                    Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                    Danke.
                    gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                    ScreenToGif :https://www.screentogif.com/downloads.html

                    F 1 Reply Last reply
                    0
                    • bahnuhrB bahnuhr

                      @fvp sagte in Sayit Adapter- Probleme nach Update:

                      "scharfe" Ton

                      War kein scharfer Ton.
                      Ganz im Gegenteil; habe dir sogar eine Script Vorlage frei Haus geliefert.

                      Aber ich habe dir am Anfang geschrieben du sollst du Hilfe lesen.
                      Was du nicht gemacht hast.
                      Und dann aber die main.js durchwühlen.

                      Und dies finde ich halt falsch.

                      Aber da du anscheinend empfinglich bist, bin ich jetzt raus.
                      keine Hilfe mehr von mir.
                      Schönen Abend dir.

                      F Offline
                      F Offline
                      fvp
                      wrote on last edited by
                      #46

                      Schade aber vielen Dank für deine Mühe @bahnuhr

                      F 1 Reply Last reply
                      0
                      • F fvp

                        Schade aber vielen Dank für deine Mühe @bahnuhr

                        F Offline
                        F Offline
                        fvp
                        wrote on last edited by
                        #47

                        Ich habe mir mal ein paar Logger-Ausgaben im Adapter erstellt und folgendes festgestellt:

                            let announce = testOptions && testOptions.announce !== undefined ? testOptions.announce : adapter.config.announce;
                            adapter.log.info(`announce : ${announce}`);
                            const annoTimeout = parseInt(testOptions && testOptions.annoTimeout !== undefined ? testOptions.annoTimeout : adapter.config.annoTimeout, 10);
                        
                            const task = {text, language, volume, onlyCache, ts: Date.now(), combined, testOptions};
                            // announce  = '/opt/iobroker/iobroker-data/files/sayit.0/tts.userfiles/gong.mp3'
                            // If more time than 15 seconds till last text, add announcement
                            if (!onlyCache && announce && !tasks.length && (!lastSay || (Date.now() - lastSay > annoTimeout * 1000))) {
                        

                        In Zeile 1 scheint 'announce' keinen Wert von der Adapter.config.announce zu erhalten. Dementsprechend ist das If in Zeile 8 nicht erfüllt. Dies wäre dann weiter dafür zuständig den Ankündigungston in die Queue zu bringen.

                        Wenn ich mit Zeile 6 "nachhelfe" funktioniert der Ankündigungston wie erwartet und ohne den Tipp von bahnuhr.

                        Damit vermute ich das der fileSelector keinen Wert liefert. Der sieht ja auch merkwürdig aus:
                        ed9a3608-90fd-40bc-865c-1d2b6f6cc0a9-grafik.png

                        Muss mich jetzt erst mal weiter einlesen ob bzw. wie ich das weiter debuggen kann.

                        M 1 Reply Last reply
                        0
                        • F fvp

                          Ich habe mir mal ein paar Logger-Ausgaben im Adapter erstellt und folgendes festgestellt:

                              let announce = testOptions && testOptions.announce !== undefined ? testOptions.announce : adapter.config.announce;
                              adapter.log.info(`announce : ${announce}`);
                              const annoTimeout = parseInt(testOptions && testOptions.annoTimeout !== undefined ? testOptions.annoTimeout : adapter.config.annoTimeout, 10);
                          
                              const task = {text, language, volume, onlyCache, ts: Date.now(), combined, testOptions};
                              // announce  = '/opt/iobroker/iobroker-data/files/sayit.0/tts.userfiles/gong.mp3'
                              // If more time than 15 seconds till last text, add announcement
                              if (!onlyCache && announce && !tasks.length && (!lastSay || (Date.now() - lastSay > annoTimeout * 1000))) {
                          

                          In Zeile 1 scheint 'announce' keinen Wert von der Adapter.config.announce zu erhalten. Dementsprechend ist das If in Zeile 8 nicht erfüllt. Dies wäre dann weiter dafür zuständig den Ankündigungston in die Queue zu bringen.

                          Wenn ich mit Zeile 6 "nachhelfe" funktioniert der Ankündigungston wie erwartet und ohne den Tipp von bahnuhr.

                          Damit vermute ich das der fileSelector keinen Wert liefert. Der sieht ja auch merkwürdig aus:
                          ed9a3608-90fd-40bc-865c-1d2b6f6cc0a9-grafik.png

                          Muss mich jetzt erst mal weiter einlesen ob bzw. wie ich das weiter debuggen kann.

                          M Offline
                          M Offline
                          maxpd
                          wrote on last edited by maxpd
                          #48

                          deleteddd

                          Gruß
                          maxpd

                          Raspi 4 8gb | iobroker + pivccu3 | 46 Adapter | 68 Scripte, 120 Devices

                          1 Reply Last reply
                          0
                          • F Offline
                            F Offline
                            fvp
                            wrote on last edited by
                            #49

                            Leider hänge ich immer noch an dem fileSelector. Im Dev-Server funktioniert das eigentlich gut. Am Testsystem aber nicht.
                            Ich habe den Adapter ganz leicht modifiziert so das ich statt dem fileSelector ein Eingabefeld verwende.
                            Damit funktioniert dann auch die Ankündigung wie vorgesehen.
                            e8db19b3-0443-4251-a3c6-0d28a46b8b8f-grafik.png

                            1 Reply Last reply
                            0
                            • bahnuhrB bahnuhr

                              per js so:

                              setState('sayit.x.tts.text', '/opt/iobroker/iobroker-data/files/vis.0/mp3/xxx.mp3');
                              setTimeout(function() { setState('sayit.x.tts.text', "Spülmaschine ist fertig.") } , 3000);
                              
                              D Offline
                              D Offline
                              drapo
                              wrote on last edited by
                              #50

                              @bahnuhr sagte in Sayit Adapter- Probleme nach Update:

                              setState('sayit.x.tts.text', '/opt/iobroker/iobroker-data/files/vis.0/mp3/xxx.mp3');

                              vielen dank für diesen Ansatz der hat mir gerade sehr weitergeholfen und ist um ehrlich zu sein die einzige methode die wirklich funktioniert mit sayit und meinem sonos system.

                              da ich alle meine Skripte als Blockly am Laufen hab, wie würde das aussehen ein file zu übergeben? weisst du das allenfalls?

                              D 1 Reply Last reply
                              0
                              • D drapo

                                @bahnuhr sagte in Sayit Adapter- Probleme nach Update:

                                setState('sayit.x.tts.text', '/opt/iobroker/iobroker-data/files/vis.0/mp3/xxx.mp3');

                                vielen dank für diesen Ansatz der hat mir gerade sehr weitergeholfen und ist um ehrlich zu sein die einzige methode die wirklich funktioniert mit sayit und meinem sonos system.

                                da ich alle meine Skripte als Blockly am Laufen hab, wie würde das aussehen ein file zu übergeben? weisst du das allenfalls?

                                D Offline
                                D Offline
                                drapo
                                wrote on last edited by drapo
                                #51

                                @drapo @drapo so gehts mittels blockly

                                f6bd29b7-6c16-49f6-8aca-1ec5196e16d5-grafik.png

                                1 Reply Last reply
                                0
                                Reply
                                • Reply as topic
                                Log in to reply
                                • Oldest to Newest
                                • Newest to Oldest
                                • Most Votes


                                Support us

                                ioBroker
                                Community Adapters
                                Donate
                                FAQ Cloud / IOT
                                HowTo: Node.js-Update
                                HowTo: Backup/Restore
                                Downloads
                                BLOG

                                573

                                Online

                                32.7k

                                Users

                                82.3k

                                Topics

                                1.3m

                                Posts
                                Community
                                Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                ioBroker Community 2014-2025
                                logo
                                • Login

                                • Don't have an account? Register

                                • Login or register to search.
                                • First post
                                  Last post
                                0
                                • Home
                                • Recent
                                • Tags
                                • Unread 0
                                • Categories
                                • Unreplied
                                • Popular
                                • GitHub
                                • Docu
                                • Hilfe