Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • 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

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Error/Bug
  4. [gelöst] BUG: sayit funktioniert bei win nicht zuverlässig.

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.0k

[gelöst] BUG: sayit funktioniert bei win nicht zuverlässig.

Geplant Angeheftet Gesperrt Verschoben Ungelöst Error/Bug
bugsayit
95 Beiträge 6 Kommentatoren 6.6k Aufrufe 5 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • bahnuhrB Online
    bahnuhrB Online
    bahnuhr
    Forum Testing Most Active
    schrieb am zuletzt editiert von bahnuhr
    #75

    ach, mist auch:

    jetzt hab ichs wieder:

    sayit.2	2020-07-28 15:17:01.239	debug	(6764) Duration "testxyz": 0
    sayit.2	2020-07-28 15:17:01.239	error	(6764) File error: Error: EBUSY: resource busy or locked, open 'C:\iobroker\iobroker-data\sayit/sayit.2.say.mp3'
    sayit.2	2020-07-28 15:16:59.902	debug	(6764) Status code: 200
    sayit.2	2020-07-28 15:16:59.697	debug	(6764) Cache File C:\iobroker\cache\107eab35c9bd3e4d332655f0ea83ab40.mp3 for "de-DE_CLOUD_Female;testxyz" not found
    sayit.2	2020-07-28 15:16:59.697	info	(6764) saying: testxyz
    

    Ich hatte mal wmp angeklickt.
    Vielleicht hat wmp die Datei geblockt.


    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 Antwort Letzte Antwort
    0
    • bahnuhrB bahnuhr

      noch ne Frage:

      Bei Objekt: sayit.2.tts.mp3
      ist ein Link genannt; der bei klick die mp3 abspielt.

      Kann man diesen Link auch per Script irgendwie als Datei (also die mp3) speichern?

      Wäre ja dann auch eine Möglichkeit an die mp3 zu kommen.

      apollon77A Offline
      apollon77A Offline
      apollon77
      schrieb am zuletzt editiert von
      #76

      @bahnuhr Hm ... vllt kopiert er nicht wenn er ein gecachtes File nutzt ... ich schaue mal

      Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

      • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
      • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
      1 Antwort Letzte Antwort
      0
      • apollon77A Offline
        apollon77A Offline
        apollon77
        schrieb am zuletzt editiert von
        #77

        Ääähm ja genau ... Das Copy file" macht er nur um das Ergebnisfile in den Cache zu kopieren das man nicht jedes mal beim gleichen Text das File neu generieren muss.

        AM End eist die Grundfrage ob da nicht ein gewisses Missverständnis herrscht: Ich glaube das C:\iobroker\iobroker-data\sayit/sayit.2.say.mp3 file ist nie wirklich dazu gedacht genutzt zu werden oder?! Da sist nur ein "Intermediate" FIle und wird ausgegeben. Sonst wird das gecachte File ausgegeben ...

        Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

        • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
        • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
        bahnuhrB 1 Antwort Letzte Antwort
        0
        • apollon77A apollon77

          Ääähm ja genau ... Das Copy file" macht er nur um das Ergebnisfile in den Cache zu kopieren das man nicht jedes mal beim gleichen Text das File neu generieren muss.

          AM End eist die Grundfrage ob da nicht ein gewisses Missverständnis herrscht: Ich glaube das C:\iobroker\iobroker-data\sayit/sayit.2.say.mp3 file ist nie wirklich dazu gedacht genutzt zu werden oder?! Da sist nur ein "Intermediate" FIle und wird ausgegeben. Sonst wird das gecachte File ausgegeben ...

          bahnuhrB Online
          bahnuhrB Online
          bahnuhr
          Forum Testing Most Active
          schrieb am zuletzt editiert von
          #78

          @apollon77 sagte in BUG: sayit funktioniert unter win nicht zuverlässig.:

          Ääähm ja genau ... Das Copy file" macht er nur um das Ergebnisfile in den Cache zu kopieren das man nicht jedes mal beim gleichen Text das File neu generieren muss.

          Kann man das ändern; und zwar so, dass das mp3 immer erzeugt wird.

          Habe festgestellt, dass das mp3 auch nicht erzeugt wird, wenn der gleiche Text etwas zurück liegt; und nicht wie gedacht nur das letzte mal.


          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

          apollon77A 1 Antwort Letzte Antwort
          0
          • bahnuhrB bahnuhr

            @apollon77 sagte in BUG: sayit funktioniert unter win nicht zuverlässig.:

            Ääähm ja genau ... Das Copy file" macht er nur um das Ergebnisfile in den Cache zu kopieren das man nicht jedes mal beim gleichen Text das File neu generieren muss.

            Kann man das ändern; und zwar so, dass das mp3 immer erzeugt wird.

            Habe festgestellt, dass das mp3 auch nicht erzeugt wird, wenn der gleiche Text etwas zurück liegt; und nicht wie gedacht nur das letzte mal.

            apollon77A Offline
            apollon77A Offline
            apollon77
            schrieb am zuletzt editiert von
            #79

            @bahnuhr Ok, dann nochmal: Was willst Du mit exakt diesem File tun? Warum sollte es da sein? Ich glaube wirklich das es um ein fundamentales Missverständnis geht wie der Adapter funktionieren soll.

            Der Adapter ist quasi zweigeteilt:
            1.) Text to Speech File ... also ein MP3 (nicht unbediengt das sondern ggf auch ein gecachtes auswählen
            2.) Ausgabe der Datei. Hier landet es in einem Binary State und wird ggf im browser, per mpd oder Sonos oder whatever ausgegeben.

            An sich musst Du nicht an das File ran - und wenn ist denke der saubere Weg es sich aus dem State zu holen.

            Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

            • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
            • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
            bahnuhrB 1 Antwort Letzte Antwort
            0
            • apollon77A apollon77

              @bahnuhr Ok, dann nochmal: Was willst Du mit exakt diesem File tun? Warum sollte es da sein? Ich glaube wirklich das es um ein fundamentales Missverständnis geht wie der Adapter funktionieren soll.

              Der Adapter ist quasi zweigeteilt:
              1.) Text to Speech File ... also ein MP3 (nicht unbediengt das sondern ggf auch ein gecachtes auswählen
              2.) Ausgabe der Datei. Hier landet es in einem Binary State und wird ggf im browser, per mpd oder Sonos oder whatever ausgegeben.

              An sich musst Du nicht an das File ran - und wenn ist denke der saubere Weg es sich aus dem State zu holen.

              bahnuhrB Online
              bahnuhrB Online
              bahnuhr
              Forum Testing Most Active
              schrieb am zuletzt editiert von
              #80

              @apollon77 sagte in BUG: sayit funktioniert unter win nicht zuverlässig.:

              Was willst Du mit exakt diesem File tun?

              Hatte ich oben schon geschrieben.
              Ich möchte eine mp3 kopieren um Sie dann Yamaha musiccast zur Verfügung zu stellen.
              Also: Ansage eines Textes über Yamaha Lautsprecher.

              Dies funktioniert auch soweit. Nur brauche ich halt zuverlässig die mp3.

              @apollon77 sagte in BUG: sayit funktioniert unter win nicht zuverlässig.:

              denke der saubere Weg es sich aus dem State zu holen.

              Ok, das wäre doch ein Weg. (Du meinst doch dieses Objekt, oder ?: sayit.2.tts.mp3)
              Kannst du mir sagen, wie man dies macht. Wenn ich auf den State klicke wird die Datei ja wiedergegeben.
              Als konkrete Frage:
              Wie speichere ich den Statte als mp3?

              mfg
              Dieter


              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

              sigi234S 1 Antwort Letzte Antwort
              0
              • bahnuhrB bahnuhr

                @apollon77 sagte in BUG: sayit funktioniert unter win nicht zuverlässig.:

                Was willst Du mit exakt diesem File tun?

                Hatte ich oben schon geschrieben.
                Ich möchte eine mp3 kopieren um Sie dann Yamaha musiccast zur Verfügung zu stellen.
                Also: Ansage eines Textes über Yamaha Lautsprecher.

                Dies funktioniert auch soweit. Nur brauche ich halt zuverlässig die mp3.

                @apollon77 sagte in BUG: sayit funktioniert unter win nicht zuverlässig.:

                denke der saubere Weg es sich aus dem State zu holen.

                Ok, das wäre doch ein Weg. (Du meinst doch dieses Objekt, oder ?: sayit.2.tts.mp3)
                Kannst du mir sagen, wie man dies macht. Wenn ich auf den State klicke wird die Datei ja wiedergegeben.
                Als konkrete Frage:
                Wie speichere ich den Statte als mp3?

                mfg
                Dieter

                sigi234S Online
                sigi234S Online
                sigi234
                Forum Testing Most Active
                schrieb am zuletzt editiert von
                #81

                @bahnuhr sagte in BUG: sayit funktioniert unter win nicht zuverlässig.:

                Also: Ansage eines Textes über Yamaha Lautsprecher.

                Geht das nicht direkt via XML Command?
                Welchen Yamaha Lautsprecher hast du?

                Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                Immer Daten sichern!

                bahnuhrB 1 Antwort Letzte Antwort
                0
                • sigi234S sigi234

                  @bahnuhr sagte in BUG: sayit funktioniert unter win nicht zuverlässig.:

                  Also: Ansage eines Textes über Yamaha Lautsprecher.

                  Geht das nicht direkt via XML Command?
                  Welchen Yamaha Lautsprecher hast du?

                  bahnuhrB Online
                  bahnuhrB Online
                  bahnuhr
                  Forum Testing Most Active
                  schrieb am zuletzt editiert von
                  #82

                  @sigi234 sagte in BUG: sayit funktioniert unter win nicht zuverlässig.:

                  @bahnuhr sagte in BUG: sayit funktioniert unter win nicht zuverlässig.:

                  Also: Ansage eines Textes über Yamaha Lautsprecher.

                  Geht das nicht direkt via XML Command?
                  Welchen Yamaha Lautsprecher hast du?

                  Text vielleicht.
                  Sound nein.

                  Lautsprecher: 10, 20, 30


                  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 Antwort Letzte Antwort
                  0
                  • bahnuhrB bahnuhr

                    @sigi234 sagte in BUG: sayit funktioniert unter win nicht zuverlässig.:

                    @bahnuhr sagte in BUG: sayit funktioniert unter win nicht zuverlässig.:

                    Also: Ansage eines Textes über Yamaha Lautsprecher.

                    Geht das nicht direkt via XML Command?
                    Welchen Yamaha Lautsprecher hast du?

                    Text vielleicht.
                    Sound nein.

                    Lautsprecher: 10, 20, 30

                    F Offline
                    F Offline
                    fastfoot
                    schrieb am zuletzt editiert von
                    #83

                    @bahnuhr sagte in BUG: sayit funktioniert unter win nicht zuverlässig.:

                    Wie speichere ich den Statte als mp3?

                    evtl. musst du noch den timeout anpassen, je nach Länge deines Textes

                    const fs = require('fs');
                    const url = 'http://ip:8082/state/sayit.0.tts.mp3';
                    const outfile = './Test.mp3';
                    setState('sayit.0.tts.text','Hallo, dies ist ein ziemlich unnützer Text');
                    setTimeout(function(){
                        request(url, {encoding:'binary'}, function(error, response, body) {
                            fs.writeFile(outfile, body, 'binary', function (err) {
                                if(err) log('Fehler!');
                            });                
                        });
                    }, 2000);
                    

                    iobroker läuft unter Docker auf QNAP TS-451+
                    SkriptRecovery: https://forum.iobroker.net/post/930558

                    bahnuhrB F 2 Antworten Letzte Antwort
                    1
                    • F fastfoot

                      @bahnuhr sagte in BUG: sayit funktioniert unter win nicht zuverlässig.:

                      Wie speichere ich den Statte als mp3?

                      evtl. musst du noch den timeout anpassen, je nach Länge deines Textes

                      const fs = require('fs');
                      const url = 'http://ip:8082/state/sayit.0.tts.mp3';
                      const outfile = './Test.mp3';
                      setState('sayit.0.tts.text','Hallo, dies ist ein ziemlich unnützer Text');
                      setTimeout(function(){
                          request(url, {encoding:'binary'}, function(error, response, body) {
                              fs.writeFile(outfile, body, 'binary', function (err) {
                                  if(err) log('Fehler!');
                              });                
                          });
                      }, 2000);
                      
                      bahnuhrB Online
                      bahnuhrB Online
                      bahnuhr
                      Forum Testing Most Active
                      schrieb am zuletzt editiert von
                      #84

                      @fastfoot sagte in BUG: sayit funktioniert unter win nicht zuverlässig.:

                      @bahnuhr sagte in BUG: sayit funktioniert unter win nicht zuverlässig.:

                      Wie speichere ich den Statte als mp3?

                      evtl. musst du noch den timeout anpassen, je nach Länge deines Textes

                      const fs = require('fs');
                      const url = 'http://ip:8082/state/sayit.0.tts.mp3';
                      const outfile = './Test.mp3';
                      setState('sayit.0.tts.text','Hallo, dies ist ein ziemlich unnützer Text');
                      setTimeout(function(){
                          request(url, {encoding:'binary'}, function(error, response, body) {
                              fs.writeFile(outfile, body, 'binary', function (err) {
                                  if(err) log('Fehler!');
                              });                
                          });
                      }, 2000);
                      

                      Super,cool.
                      Das probier ich heute abend gleich aus.
                      Danke.


                      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 Antwort Letzte Antwort
                      0
                      • F fastfoot

                        @bahnuhr sagte in BUG: sayit funktioniert unter win nicht zuverlässig.:

                        Wie speichere ich den Statte als mp3?

                        evtl. musst du noch den timeout anpassen, je nach Länge deines Textes

                        const fs = require('fs');
                        const url = 'http://ip:8082/state/sayit.0.tts.mp3';
                        const outfile = './Test.mp3';
                        setState('sayit.0.tts.text','Hallo, dies ist ein ziemlich unnützer Text');
                        setTimeout(function(){
                            request(url, {encoding:'binary'}, function(error, response, body) {
                                fs.writeFile(outfile, body, 'binary', function (err) {
                                    if(err) log('Fehler!');
                                });                
                            });
                        }, 2000);
                        
                        F Offline
                        F Offline
                        fastfoot
                        schrieb am zuletzt editiert von
                        #85

                        @fastfoot sagte in BUG: sayit funktioniert unter win nicht zuverlässig.:

                        evtl. musst du noch den timeout anpassen, je nach Länge deines Textes

                        hier noch eine Version für die Blockly Fraktion
                        Sayit.PNG

                        <xml xmlns="https://developers.google.com/blockly/xml">
                         <variables>
                           <variable id="W~_^HE%Iga5n.*fPdW;B">outfile</variable>
                           <variable id="z_pVL7.qbcGrbBrmTenF">url</variable>
                           <variable id="]^eO7?rtWHTfOD)d{,je">cmd</variable>
                           <variable type="timeout" id="timeout">timeout</variable>
                         </variables>
                         <block type="variables_set" id="K!1=]xXNLcV%_;O8_moY" x="45" y="78">
                           <field name="VAR" id="W~_^HE%Iga5n.*fPdW;B">outfile</field>
                           <value name="VALUE">
                             <block type="text" id="D~q[!co?DcpN8GJ^Gm]E">
                               <field name="TEXT">./tst.mp3</field>
                             </block>
                           </value>
                           <next>
                             <block type="variables_set" id="UbHJQ7(P?2U*Y39|s_wx">
                               <field name="VAR" id="z_pVL7.qbcGrbBrmTenF">url</field>
                               <value name="VALUE">
                                 <block type="text" id="Y9N`m/ks7.Lh^~NFl{`)">
                                   <field name="TEXT">localhost:8082/state/sayit.0.tts.mp3</field>
                                 </block>
                               </value>
                               <next>
                                 <block type="variables_set" id="!Rv8i+YxzgFe|-!vV43%">
                                   <field name="VAR" id="]^eO7?rtWHTfOD)d{,je">cmd</field>
                                   <value name="VALUE">
                                     <block type="text_join" id="mPNwYvTJ@8l:/Db*G*R2" inline="true">
                                       <mutation items="4"></mutation>
                                       <value name="ADD0">
                                         <block type="text" id="L[7r6VHfZH5DFuXa:ssB">
                                           <field name="TEXT">curl -sL </field>
                                         </block>
                                       </value>
                                       <value name="ADD1">
                                         <block type="variables_get" id="`$*khLv1k;:oTW]_f8Qv">
                                           <field name="VAR" id="z_pVL7.qbcGrbBrmTenF">url</field>
                                         </block>
                                       </value>
                                       <value name="ADD2">
                                         <block type="text" id="4DPjK%Ap5|n:LQ^2C0t=">
                                           <field name="TEXT"> &gt; </field>
                                         </block>
                                       </value>
                                       <value name="ADD3">
                                         <block type="variables_get" id="{x:z]6MCBt`v`$mRN?rh">
                                           <field name="VAR" id="W~_^HE%Iga5n.*fPdW;B">outfile</field>
                                         </block>
                                       </value>
                                     </block>
                                   </value>
                                   <next>
                                     <block type="control" id="T9GI)E(k5$yyI;?/r;%?">
                                       <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                       <field name="OID">sayit.0.tts.text</field>
                                       <field name="WITH_DELAY">FALSE</field>
                                       <value name="VALUE">
                                         <block type="text" id="!}aB{aNW!yhWO|KPonc=">
                                           <field name="TEXT">Hallo, dies ist ein echt unnützer Text</field>
                                         </block>
                                       </value>
                                       <next>
                                         <block type="timeouts_settimeout" id="se9)rFor]=weJDW=dYd%">
                                           <field name="NAME">timeout</field>
                                           <field name="DELAY">2000</field>
                                           <field name="UNIT">ms</field>
                                           <statement name="STATEMENT">
                                             <block type="exec" id=";f7mWOxP)C:ATEQq=CCc">
                                               <mutation xmlns="http://www.w3.org/1999/xhtml" with_statement="false"></mutation>
                                               <field name="WITH_STATEMENT">FALSE</field>
                                               <field name="LOG"></field>
                                               <value name="COMMAND">
                                                 <shadow type="text" id="u-?64-sg%3,3/7HCl.-r">
                                                   <field name="TEXT"></field>
                                                 </shadow>
                                                 <block type="variables_get" id="[bCY$YRq2es63B$Q`NPQ">
                                                   <field name="VAR" id="]^eO7?rtWHTfOD)d{,je">cmd</field>
                                                 </block>
                                               </value>
                                             </block>
                                           </statement>
                                         </block>
                                       </next>
                                     </block>
                                   </next>
                                 </block>
                               </next>
                             </block>
                           </next>
                         </block>
                        </xml>
                        

                        iobroker läuft unter Docker auf QNAP TS-451+
                        SkriptRecovery: https://forum.iobroker.net/post/930558

                        1 Antwort Letzte Antwort
                        0
                        • apollon77A Offline
                          apollon77A Offline
                          apollon77
                          schrieb am zuletzt editiert von
                          #86

                          ein getBinaryState ist denke einfacher als der http Request (ok macht am Ende das gleiche)

                          Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                          • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                          • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                          bahnuhrB 1 Antwort Letzte Antwort
                          1
                          • apollon77A apollon77

                            ein getBinaryState ist denke einfacher als der http Request (ok macht am Ende das gleiche)

                            bahnuhrB Online
                            bahnuhrB Online
                            bahnuhr
                            Forum Testing Most Active
                            schrieb am zuletzt editiert von
                            #87

                            @apollon77 sagte in BUG: sayit funktioniert unter win nicht zuverlässig.:

                            getBinaryState

                            Gib uns mal ein Beispiel.


                            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 Antwort Letzte Antwort
                            0
                            • bahnuhrB bahnuhr

                              @fastfoot sagte in BUG: sayit funktioniert unter win nicht zuverlässig.:

                              @bahnuhr sagte in BUG: sayit funktioniert unter win nicht zuverlässig.:

                              Wie speichere ich den Statte als mp3?

                              evtl. musst du noch den timeout anpassen, je nach Länge deines Textes

                              const fs = require('fs');
                              const url = 'http://ip:8082/state/sayit.0.tts.mp3';
                              const outfile = './Test.mp3';
                              setState('sayit.0.tts.text','Hallo, dies ist ein ziemlich unnützer Text');
                              setTimeout(function(){
                                  request(url, {encoding:'binary'}, function(error, response, body) {
                                      fs.writeFile(outfile, body, 'binary', function (err) {
                                          if(err) log('Fehler!');
                                      });                
                                  });
                              }, 2000);
                              

                              Super,cool.
                              Das probier ich heute abend gleich aus.
                              Danke.

                              F Offline
                              F Offline
                              fastfoot
                              schrieb am zuletzt editiert von
                              #88

                              @bahnuhr sagte in BUG: sayit funktioniert unter win nicht zuverlässig.:

                              Das probier ich heute abend gleich aus.

                              funktioniert es denn jetzt wie gewünscht?

                              iobroker läuft unter Docker auf QNAP TS-451+
                              SkriptRecovery: https://forum.iobroker.net/post/930558

                              bahnuhrB 1 Antwort Letzte Antwort
                              0
                              • F fastfoot

                                @bahnuhr sagte in BUG: sayit funktioniert unter win nicht zuverlässig.:

                                Das probier ich heute abend gleich aus.

                                funktioniert es denn jetzt wie gewünscht?

                                bahnuhrB Online
                                bahnuhrB Online
                                bahnuhr
                                Forum Testing Most Active
                                schrieb am zuletzt editiert von bahnuhr
                                #89

                                @fastfoot sagte in BUG: sayit funktioniert unter win nicht zuverlässig.:

                                @bahnuhr sagte in BUG: sayit funktioniert unter win nicht zuverlässig.:

                                Das probier ich heute abend gleich aus.

                                funktioniert es denn jetzt wie gewünscht?

                                Also folgendes Fazit nach meinen Tests:

                                a) Datei sayit.2.say.mp3
                                Die Datei wird ja jetzt gespeichert unter: C:\iobroker\iobroker-data\sayit
                                Dies funktioniert aber nicht zuverlässig. Manchmal wird sie nicht gespeichert.

                                b) cache Datei
                                Hier wird ja auch die mp3 gespeichert; als Zufallszahl.mp3
                                Deshalb hab ich probiert immer die neueste Datei zu lesen (siehe anderer Thread).
                                Die neueste Datei hab ich auch ermittelt bekommen; jedoch ist es durch den Adapter nicht gesagt, dass zuverlässig die aktuell gewollte neueste Version gespeichert ist. Also auch nicht zuverlässig.

                                c) state: sayit.2.tts.mp3
                                Unter diesem objekt ist ein Link gespeichert. Und dieser enthält zuverlässig !!! die aktuelle mp3.
                                Durch o.g. Script von @fastfoot konnte ich zuverlässig die mp3 kopieren und damit weiter arbeiten.

                                Gesamt:
                                a und b ist nicht zuverlässig.
                                c hat zuverlässig geklappt.

                                Noch ein Problem hatte ich:
                                Ich benutze den Windows Media Player zum streamen ins Netz. Die Datei wurde dann per Script gelöscht. Diese Löschung hat auch nicht zuverlässig gelöscht. WMP hat die Datei offensichtlich für x Sek./Min. geblockt.
                                Also Alternative gesucht und gefunden:
                                Programm: universal media server
                                Das Programm ist kostenlos und funktioniert bisher einwandfrei. die Datei wird auch sofort frei gelassen und man kann sie per script sofort löschen.

                                Insgesamt Danke an alle die hier mit gelesen und zur Lösung beigetragen haben. Bin da jetzt schon mehrere Monate/Jahre dran.
                                Aber wie immer: wenn man weiß wie es geht, ist es einfach.

                                Nochmals Danke.
                                (Thread kennzeichne ich mal als gelöst und issue bei sayit nehm ich auch raus.

                                mfg
                                Dieter


                                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 apollon77A 2 Antworten Letzte Antwort
                                0
                                • bahnuhrB bahnuhr

                                  @fastfoot sagte in BUG: sayit funktioniert unter win nicht zuverlässig.:

                                  @bahnuhr sagte in BUG: sayit funktioniert unter win nicht zuverlässig.:

                                  Das probier ich heute abend gleich aus.

                                  funktioniert es denn jetzt wie gewünscht?

                                  Also folgendes Fazit nach meinen Tests:

                                  a) Datei sayit.2.say.mp3
                                  Die Datei wird ja jetzt gespeichert unter: C:\iobroker\iobroker-data\sayit
                                  Dies funktioniert aber nicht zuverlässig. Manchmal wird sie nicht gespeichert.

                                  b) cache Datei
                                  Hier wird ja auch die mp3 gespeichert; als Zufallszahl.mp3
                                  Deshalb hab ich probiert immer die neueste Datei zu lesen (siehe anderer Thread).
                                  Die neueste Datei hab ich auch ermittelt bekommen; jedoch ist es durch den Adapter nicht gesagt, dass zuverlässig die aktuell gewollte neueste Version gespeichert ist. Also auch nicht zuverlässig.

                                  c) state: sayit.2.tts.mp3
                                  Unter diesem objekt ist ein Link gespeichert. Und dieser enthält zuverlässig !!! die aktuelle mp3.
                                  Durch o.g. Script von @fastfoot konnte ich zuverlässig die mp3 kopieren und damit weiter arbeiten.

                                  Gesamt:
                                  a und b ist nicht zuverlässig.
                                  c hat zuverlässig geklappt.

                                  Noch ein Problem hatte ich:
                                  Ich benutze den Windows Media Player zum streamen ins Netz. Die Datei wurde dann per Script gelöscht. Diese Löschung hat auch nicht zuverlässig gelöscht. WMP hat die Datei offensichtlich für x Sek./Min. geblockt.
                                  Also Alternative gesucht und gefunden:
                                  Programm: universal media server
                                  Das Programm ist kostenlos und funktioniert bisher einwandfrei. die Datei wird auch sofort frei gelassen und man kann sie per script sofort löschen.

                                  Insgesamt Danke an alle die hier mit gelesen und zur Lösung beigetragen haben. Bin da jetzt schon mehrere Monate/Jahre dran.
                                  Aber wie immer: wenn man weiß wie es geht, ist es einfach.

                                  Nochmals Danke.
                                  (Thread kennzeichne ich mal als gelöst und issue bei sayit nehm ich auch raus.

                                  mfg
                                  Dieter

                                  F Offline
                                  F Offline
                                  fastfoot
                                  schrieb am zuletzt editiert von
                                  #90

                                  @bahnuhr sagte in [gelöst] BUG: sayit funktioniert bei win nicht zuverlässig.:

                                  Durch o.g. Script von @fastfoot konnte ich zuverlässig die mp3 kopieren und damit weiter arbeiten.

                                  Schön dass es endlich funktioniert, hier dann noch die Version mit getBinaryState(), die hat den Vorteil, dass man keine URL braucht sondern direkt mit dem DP arbeiten kann, ausserdem muss bei den beiden anderen Versionen jeweils der WEB-Adapter laufen, das ist hier nicht nötig.

                                  const fs = require('fs');
                                  const idMP3 = 'sayit.0.tts.mp3';
                                  const outfile = '/opt/iobroker/Test.mp3';
                                  
                                  setState('sayit.0.tts.text','Hallo, dies ist ein ziemlich unnützer Text');
                                  
                                  setTimeout(function(){
                                      getBinaryState(idMP3, function (err, data) {
                                          fs.writeFile(outfile, data, function (err) {
                                              if(err) log('Fehler!');
                                          });                
                                      });
                                  }, 2000);
                                  

                                  iobroker läuft unter Docker auf QNAP TS-451+
                                  SkriptRecovery: https://forum.iobroker.net/post/930558

                                  1 Antwort Letzte Antwort
                                  0
                                  • bahnuhrB bahnuhr

                                    @fastfoot sagte in BUG: sayit funktioniert unter win nicht zuverlässig.:

                                    @bahnuhr sagte in BUG: sayit funktioniert unter win nicht zuverlässig.:

                                    Das probier ich heute abend gleich aus.

                                    funktioniert es denn jetzt wie gewünscht?

                                    Also folgendes Fazit nach meinen Tests:

                                    a) Datei sayit.2.say.mp3
                                    Die Datei wird ja jetzt gespeichert unter: C:\iobroker\iobroker-data\sayit
                                    Dies funktioniert aber nicht zuverlässig. Manchmal wird sie nicht gespeichert.

                                    b) cache Datei
                                    Hier wird ja auch die mp3 gespeichert; als Zufallszahl.mp3
                                    Deshalb hab ich probiert immer die neueste Datei zu lesen (siehe anderer Thread).
                                    Die neueste Datei hab ich auch ermittelt bekommen; jedoch ist es durch den Adapter nicht gesagt, dass zuverlässig die aktuell gewollte neueste Version gespeichert ist. Also auch nicht zuverlässig.

                                    c) state: sayit.2.tts.mp3
                                    Unter diesem objekt ist ein Link gespeichert. Und dieser enthält zuverlässig !!! die aktuelle mp3.
                                    Durch o.g. Script von @fastfoot konnte ich zuverlässig die mp3 kopieren und damit weiter arbeiten.

                                    Gesamt:
                                    a und b ist nicht zuverlässig.
                                    c hat zuverlässig geklappt.

                                    Noch ein Problem hatte ich:
                                    Ich benutze den Windows Media Player zum streamen ins Netz. Die Datei wurde dann per Script gelöscht. Diese Löschung hat auch nicht zuverlässig gelöscht. WMP hat die Datei offensichtlich für x Sek./Min. geblockt.
                                    Also Alternative gesucht und gefunden:
                                    Programm: universal media server
                                    Das Programm ist kostenlos und funktioniert bisher einwandfrei. die Datei wird auch sofort frei gelassen und man kann sie per script sofort löschen.

                                    Insgesamt Danke an alle die hier mit gelesen und zur Lösung beigetragen haben. Bin da jetzt schon mehrere Monate/Jahre dran.
                                    Aber wie immer: wenn man weiß wie es geht, ist es einfach.

                                    Nochmals Danke.
                                    (Thread kennzeichne ich mal als gelöst und issue bei sayit nehm ich auch raus.

                                    mfg
                                    Dieter

                                    apollon77A Offline
                                    apollon77A Offline
                                    apollon77
                                    schrieb am zuletzt editiert von
                                    #91

                                    @bahnuhr hey, ich kann am Ende mur wiederholen was ich oben schon zu a gesagt habe: diese Datei ist niemals für eine direkte Benutzung gedacht gewesen. Auch die Cache files nicht.

                                    Von daher ist Lösung c die sinnvollste und richtige.

                                    Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                                    • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                                    • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                                    1 Antwort Letzte Antwort
                                    0
                                    • bahnuhrB Online
                                      bahnuhrB Online
                                      bahnuhr
                                      Forum Testing Most Active
                                      schrieb am zuletzt editiert von
                                      #92

                                      @apollon77
                                      @fastfoot

                                      Ja, nochmals Danke an euch beide.
                                      Ohne den Input hätte ich dies nicht geschafft.


                                      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

                                      apollon77A 1 Antwort Letzte Antwort
                                      0
                                      • bahnuhrB bahnuhr

                                        @apollon77
                                        @fastfoot

                                        Ja, nochmals Danke an euch beide.
                                        Ohne den Input hätte ich dies nicht geschafft.

                                        apollon77A Offline
                                        apollon77A Offline
                                        apollon77
                                        schrieb am zuletzt editiert von
                                        #93

                                        Bitte testet mal 1.11.0 ob noch alles tut wie bisher

                                        Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                                        • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                                        • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                                        F 1 Antwort Letzte Antwort
                                        0
                                        • apollon77A apollon77

                                          Bitte testet mal 1.11.0 ob noch alles tut wie bisher

                                          F Offline
                                          F Offline
                                          fastfoot
                                          schrieb am zuletzt editiert von
                                          #94

                                          @apollon77 sagte in [gelöst] BUG: sayit funktioniert bei win nicht zuverlässig.:

                                          Bitte testet mal 1.11.0 ob noch alles tut wie bisher

                                          aus meiner Sicht ok unter linux(Docker, buanet, qnap)

                                          • Browser: funktioniert
                                          • System: mpg321 habe ich nicht installiert, aber das im LOG genannte file in /opt/iobroker/cache/ lässt sich abspielen
                                          • Sonos: ok
                                          • die gezeigten Methoden mit request() und getBinaryState() funktionieren
                                          • im Ordner iobroker-data/sayit taucht kein file auf(hatte ich erwartet wg. Änderungshistorie)

                                          iobroker läuft unter Docker auf QNAP TS-451+
                                          SkriptRecovery: https://forum.iobroker.net/post/930558

                                          1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          596

                                          Online

                                          32.6k

                                          Benutzer

                                          82.0k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe