Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. MP3 Datei verschieben (Sayit)

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    MP3 Datei verschieben (Sayit)

    This topic has been deleted. Only users with topic management privileges can see it.
    • J
      Joker971 last edited by

      Hi Forum,

      ist es möglich mit Sayit eine Mp3 Datei in einen bestimmten Ordner speichern zu lassen ? Ich habe vor mir diese Datei automatisiert auf einen anderen Rechner mit freigegeben Ordner verschieben zu lassen um sie dann von meine Squeezebox ausgeben zu lassen. Dazu müsste ich die Datei mit einem Skript verschieben. Ist sowas mit IO Broker möglich?

      Oder hat vielleicht jemand eine bessere Idee wie man sowas realisieren könnte ?

      1 Reply Last reply Reply Quote 0
      • Jey Cee
        Jey Cee Developer last edited by

        Prinzipiell geht das mit 'mv' in JavaScript.

        var mv = require('mv'); mv('source', 'dest', function(err) { // handle the error });
        

        Gesendet von Unterwegs

        1 Reply Last reply Reply Quote 0
        • J
          Joker971 last edited by

          Hi,

          danke für deine Antwort aber könntest du das noch ein bischen erläutern ? Wenn ich das so einfüge bekomme ich im Log folgendes angezeigt: Cannot find module 'C:\ioBroker\node_modules\iobroker.javascript/node_modules/mv'

          1 Reply Last reply Reply Quote 0
          • Jey Cee
            Jey Cee Developer last edited by

            'MV' scheint standard mässig nicht installiert zu sein. Das heißt du musst es in der JavaScript Adapter Konfiguration eintragen, da ist ein Feld für zusätzliche Pakete. Dort einfach: mv reinschreiben. Der Rest passiert automatisch. Dann sollte es funktionieren.

            Gesendet von Unterwegs

            1 Reply Last reply Reply Quote 0
            • J
              Joker971 last edited by

              Hi,

              danke, die Fehlermeldung ist jetzt weg….aber kopieren tuts trotzdem nicht 😞

              Folgendes hab ich geschrieben:

              mv('C:\ioBroker\node_modules\iobroker.sayit\say.mp3', '\\192.168.123.15\music\Durchsagen\say.mp3', function(err) { });
              

              Stimmt da vielleicht etwas mit den Pfaden nicht ?

              Im Log sieht alles gut aus…keine Fehler.

              1 Reply Last reply Reply Quote 0
              • Jey Cee
                Jey Cee Developer last edited by

                Sehr wahrscheinlich hat es was mit den Pfaden zu tun. Ich denke es liegt am Zielpfad kann dir hier aber nicht helfen, da musst du einfach probieren und Google befragen.

                Fehlermeldung bekommst du mit: log(err) innerhalb der function.

                Gesendet von Unterwegs

                1 Reply Last reply Reply Quote 0
                • J
                  Joker971 last edited by

                  Hi,

                  ja danke soweit. Tja so wie ich lesen musste ist es wohl ziemlich aussichtslos mit Java eine Datei auf einen anderen Rechner zu kopieren 😞

                  Hat vielleicht jemand eine andere Lösung wie ich squeezebox diese MP3 zukommen lassen könnte ?

                  1 Reply Last reply Reply Quote 0
                  • Jey Cee
                    Jey Cee Developer last edited by

                    Wenn du den Ordner der squeezbox als netzlaufwerk einbindest geht es auch nicht?

                    Gesendet von Unterwegs

                    1 Reply Last reply Reply Quote 0
                    • uweklatt
                      uweklatt last edited by

                      Hallo,@Joker971:

                      Hat vielleicht jemand eine andere Lösung wie ich squeezebox diese MP3 zukommen lassen könnte ? ` Wenn vorhanden, kannst Du evtl. das Systemkommando "ftpput" oder "scp" verwenden.

                      Tschau

                      Uwe

                      1 Reply Last reply Reply Quote 0
                      • Bluefox
                        Bluefox last edited by

                        @Joker971:

                        Hi,

                        danke, die Fehlermeldung ist jetzt weg….aber kopieren tuts trotzdem nicht 😞

                        Folgendes hab ich geschrieben:

                        mv('C:\ioBroker\node_modules\iobroker.sayit\say.mp3', '\\192.168.123.15\music\Durchsagen\say.mp3', function(err) { });
                        

                        Stimmt da vielleicht etwas mit den Pfaden nicht ?

                        Im Log sieht alles gut aus…keine Fehler. `
                        Ich denke es liegt am Zielverzeichnis. Wenn du so was machst

                        mv('C:\ioBroker\node_modules\iobroker.sayit\say.mp3', 'C:\ioBroker\node_modules\iobroker.sayit\say1.mp3', function(err) {console.error(err)});

                        Geht es dann?

                        1 Reply Last reply Reply Quote 0
                        • J
                          Joker971 last edited by

                          murks

                          1 Reply Last reply Reply Quote 0
                          • J
                            Joker971 last edited by

                            @Bluefox:

                            Ich denke es liegt am Zielverzeichnis. Wenn du so was machst

                            mv('C:\ioBroker\node_modules\iobroker.sayit\say.mp3', 'C:\ioBroker\node_modules\iobroker.sayit\say1.mp3', function(err) {console.error(err)});

                            Geht es dann? `

                            Wenn ich das so mache spuckt er das aus:

                            javascript.0 script.js.TTS.Testprogramm: Error: ENOENT: no such file or directory, rename 'C:\ioBroker ode_modulesiobroker.sayitsay.mp3' -> 'C:\ioBroker ode_modulesiobroker.sayitsay1.mp3'

                            Irgendwie haut der da alles durcheinander….

                            Drehe ich aber die Slashes um sieht es besser aus:

                            javascript.0 script.js.TTS.Testprogramm: Error: ENOENT: no such file or directory, rename 'C:\ioBroker\node_modules\iobroker.sayit\say.mp3' -> 'C:\ioBroker\node_modules\iobroker.sayit\say1.mp3'

                            Zwar immernoch ein Fehler aber kein verwirrter :lol:

                            1 Reply Last reply Reply Quote 0
                            • J
                              Joker971 last edited by

                              Hi Leute, nach einigem rumsuchen bin ich auf eine Lösung gekommen. Für alle die sich über Sayit eine MP3 Datei generieren möchten um diese dann auf eine Netzwerkfreigabe zu kopieren!

                              Ihr müsst die Module 'fs' und 'smb2' einbinden. Das ist meine erste Version…sicherlich noch verbesserungswürdig aber sie funktioniert!

                              var idSayIt         = "sayit.0.tts.text";
                              var ansage          = "";
                              var sourcefile      = "C:/ioBroker/node_modules/iobroker.sayit/say.mp3";
                              var destinationfile = "Durchsagen\\say.mp3";
                              var ansage          = "Das ist ein neuer Testtext. Dieser dauert auch schon etwas länger! leider hab ich etwas langeweile daher spiele ich so rum. Kannst du das verstehen ? Ja ich habe es schon nicht leicht.";
                              
                              setState (idSayIt, ansage);
                              setTimeout(function (){while(getState("sayit.0.tts.playing"/*Is now speaking*/).val === true){console.error("speaking")}},500);
                              
                              var fs = require("fs");
                              var smb2 = require("smb2");
                              var smb2Client = new smb2({share:'\\\\Datastore\\music', domain:'', username:'XXXXXX', password:'XXXXXX'});
                              
                              fs.exists(sourcefile, function(exists){
                                 if(exists){ // results true
                                    fs.readFile(sourcefile, function(err, data){
                                       if(err){
                                          console.error(err)
                                          smb2Client.close ()
                                       }              
                                       //console.log(data);
                                       smb2Client.writeFile(destinationfile, data, function (err) {
                                       if(err){
                                         console.error(err)
                                         smb2Client.close ()  
                                       }
                                       console.log('It\'s saved!');
                              
                                       setState("squeezebox.0.PIWohnz.power"/*PIWohnz.power*/,true); 
                                       setTimeout(function(){setState("squeezebox.0.PIWohnz.volume",70)},200);
                                       setTimeout(function (){SendHTTP("http://192.168.123.15:9002/status.html?p0=playlist&p1=play&p2=MP3Durchsagen&player=b8:27:eb:41:0f:a6")}, 400); 
                                       setTimeout(function (){setState("squeezebox.0.PIWohnz.power",false)},15000);
                                       });
                                    })
                                 }
                              });
                              
                              function SendHTTP(text) {
                                 setTimeout(function(){request = require('request')(text);}, 200);
                                 }
                              
                              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

                              643
                              Online

                              32.0k
                              Users

                              80.5k
                              Topics

                              1.3m
                              Posts

                              4
                              13
                              1839
                              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