Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Bei Betätigung eines HM Tasters abspielen eines bestimmten MP3s per sayit+sonos möglich?

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Bei Betätigung eines HM Tasters abspielen eines bestimmten MP3s per sayit+sonos möglich?

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

      Im Admin (iobroker) findest du ganz oben ein Reiter mit Skripte

      1 Reply Last reply Reply Quote 0
      • Q
        Qlink last edited by

        Aaaaah jetzt hab ichs. 🙂 Den Reiter hatte ich total übersehen … :roll:

        Danke für den Hinweis.

        Ich habe jetzt das Script von Jey Cee testweise kopiert und die IP Adresse bzw. die HM ID angepasst. Die Datei maus.mp3 hab ich nach

        C:\Program Files\ioBroker\iobroker-data\files\sayit.0\tts.userfiles kopiert.

        Wenn ich http://192.168.xxx.xxx:8082/sayit.0/tts ... s/maus.mp3 im Browser aufrufe, dann kommt das "Speichern Unter..." Fenster. Ich gehe davon aus, dass das bestätigt, dass die Eingabe so richtig ist oder ?

        Wenn ich auf den entsprechenden Taster drücke wird das Script laut Log auch ausgeführt, wenn ich das richtig interpretiere:

        sonos-0 2016-02-16 18:07:03 info Restore state: volume - 60, mute: false, uri: http://192.168.xxx.xxx:8082/sayit.0/tts ... s/gong.mp3

        sonos-0 2016-02-16 18:07:00 info Play on sonos[RINCON_000E5828E4E601400]: http://192.168.xxx.xxx:8082/sayit.0/tts … s/maus.mp3, Volume: null

        javascript-0 2016-02-16 18:07:00 info sendTo "send" to system.adapter.sonos from system.adapter.javascript.0: "http://192.168.xxx.xxx:8082/sayit.0/tts ... s/maus.mp3"

        sayit-0 2016-02-16 18:06:52 info Upload announce mp3 files

        sayit-0 2016-02-16 18:06:52 info starting. Version 0.3.17 in C:/Program Files/ioBroker/node_modules/iobroker.sayit

        host-Cray 2016-02-16 18:06:51 info instance system.adapter.sayit.0 started with pid 4836

        Nur leider ist nichts über Sonos zu hören. 😞

        Wo liegt hier der Hund begraben ?

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

          > sonos-0 2016-02-16 18:07:00 info Play on sonos[RINCON_000E5828E4E601400]: [http://192.168.xxx.xxx:8082/sayit.0/tts](http://192.168.xxx.xxx:8082/sayit.0/tts) … s/maus.mp3, Volume: null

          Kann es sein das du bei Volume eine Variable genommen hast? "null" deutet auf eine variable ohne gesetzen wert hin. Das könnte der Grund sein warum du nichts hörst.

          P.S.: Wenn du dein script postest ist es einfacher zu helfen.
          9364_alexa.png

          1 Reply Last reply Reply Quote 0
          • Q
            Qlink last edited by

            Nicht das ich wüsste. Wie hätte ich das gemacht mit der Variable bzw. wo kann ich das überprüfen ? :roll:

            Ich habe 1:1 das Script von deinem Post genommen. Deswegen habe ichs auch nicht gepostet.

            Ich habe nur die Object ID, die Ip Adresse und das mp3 file abgeändert…

            on({id: "hm-rpc.1.MEQ0xxxxxx.6.PRESS_SHORT", val: true}, function(obj) {
            sendTo('sonos', 'send', 'http://192.168.xxx.xxx:8082/sayit.0/tts.userfiles/maus.mp3');
            });
            
            1 Reply Last reply Reply Quote 0
            • Jey Cee
              Jey Cee Developer last edited by

              Füg mal noch die Zeile hier oberhalb ein:

              setState (volSayIt, 30);
              

              6305_log1.jpg

              1 Reply Last reply Reply Quote 0
              • Q
                Qlink last edited by

                Wenn ich setState (volSayIt, 30); oberhalb einfüge kommt folgende FM im Log:

                hm-rpc-2	2016-02-16 22:37:45	info	xmlrpc -> listDevices 0
                javascript-0	2016-02-16 22:35:07	error	at script.js.Script1:1:11
                javascript-0	2016-02-16 22:35:07	error	script.js.Script1: ReferenceError: volSayIt is not defined
                javascript-0	2016-02-16 22:35:07	info	Start javascript script.js.Script1
                
                

                In einem anderen Post habe ich folgendes gefunden:

                var vol ="sayit.1.tts.volume";

                setState (vol,40);

                Wenn ich das oberhalb einfüge kommt folgende FM im Log:

                sonos-0	2016-02-16 22:38:58	info	Restore state: volume - 60, mute: false, uri: http://192.168.222.35:8082/sayit.0/tts.userfiles/gong.mp3
                sonos-0	2016-02-16 22:38:55	info	Play on sonos[RINCON_000E5828E4E601400]: http://192.168.222.35:8082/sayit.0/tts.userfiles/maus.mp3, Volume: null
                javascript-0	2016-02-16 22:38:55	info	sendTo "send" to system.adapter.sonos from system.adapter.javascript.0: "http://192.168.222.35:8082/sayit.0/tts.userfiles/maus.mp3"
                javascript-0	2016-02-16 22:38:47	info	script.js.Script1: registered 1 subscription and 0 schedules
                javascript-0	2016-02-16 22:38:47	warn	State "sayit.1.tts.volume" not found
                javascript-0	2016-02-16 22:38:47	info	Start javascript script.js.Script1
                javascript-0	2016-02-16 22:38:47	info	Stop script script.js.Script1
                javascript-0	2016-02-16 22:38:45	info	script.js.Script1: registered 1 subscription and 0 schedules
                javascript-0	2016-02-16 22:38:45	warn	State "sayit.1.tts.volume" not found
                javascript-0	2016-02-16 22:38:45	info	Start javascript script.js.Script1
                javascript-0	2016-02-16 22:38:45	info	Stop script script.js.Script1
                javascript-0	2016-02-16 22:35:05	error	at script.js.Script1:1:11
                javascript-0	2016-02-16 22:35:05	error	script.js.Script1: ReferenceError: volSayIt is not defined
                javascript-0	2016-02-16 22:35:05	info	Start javascript script.js.Script1
                
                1 Reply Last reply Reply Quote 0
                • Q
                  Qlink last edited by

                  Ich habs jetzt heute morgen nach einem Neustart des PCs auf dem iobroker läuft einfach nochmal probiert mit folgendem Skript:

                  var vol ="sayit.1.tts.volume";
                  setState (vol,40);
                  on({id: "hm-rpc.1.MEQxxxxxx.6.PRESS_SHORT", val: true}, function(obj) {
                  sendTo('sonos', 'send', 'http://192.168.xxx.xxx:8082/sayit.0/tts.userfiles/maus.mp3');
                  });
                  

                  Plötzlich habe ich keine FM mehr im Log, sondern das hier:

                  sonos-0	2016-02-17 09:36:48	info	Restore state: volume - 60, mute: false, uri: http://192.168.xxx.xxx:8082/sayit.0/tts.userfiles/gong.mp3
                  sonos-0	2016-02-17 09:36:46	info	Play on sonos[RINCON_000E5828E4E601400]: http://192.168.xxx.xxx:8082/sayit.0/tts.userfiles/maus.mp3, Volume: null
                  javascript-0	2016-02-17 09:36:46	info	sendTo "send" to system.adapter.sonos from system.adapter.javascript.0: "http://192.168.xxx.xxx:8082/sayit.0/tts.userfiles/maus.mp3"
                  hm-rpc-2	2016-02-17 09:35:20	info	xmlrpc -> listDevices 0
                  

                  Die Datei maus.mp3 wird nicht abgespielt, aber gong.mp3 wird über die Lausprecher abgespielt ?!?

                  Wie kann das sein, obwohl in meinem Skript die gong.mp3 Datei gar nicht vorkommt ?

                  Und wieso wird maus.mp3 nicht abgespielt ?

                  1 Reply Last reply Reply Quote 0
                  • coyote
                    coyote Most Active last edited by

                    Schätze mal du willst den falschen Datenpunkt beschreiben.

                    var vol ="sayit.1.tts.volume";
                    ````versuche mal
                    
                    

                    var vol ="sayit.0.tts.volume";

                    1 Reply Last reply Reply Quote 0
                    • Q
                      Qlink last edited by

                      Hi coyote,

                      danke für den Hinweis.

                      Hab ich soeben geändert im Skript auf var vol ="sayit.0.tts.volume";

                      Leider hat es keine Veränderung gebracht.

                      Es wird nach wie vor nur der gong.mp3 abgespielt.

                      maus.mp3 ist nicht zu hören und auch die Log Meldung hat sich nicht verändert. 😞

                      Hat es eventuell damit zu tun, dass unter "Objekte" beim sayit Volume-Datenpunkt eine rote 80 steht ? Ich kann die 80 aber leider auch nicht verändern …

                      Was mich auch wundert, dass unter Objekte beim sonos current title Datenpunkt gong.mp3 steht?! Spielt er deswegen immer den Gong ab, obwohl ich den in meinem Skript gar nicht aufrufe ?

                      Hier der Screenshot:

                      415_objects.png

                      1 Reply Last reply Reply Quote 0
                      • coyote
                        coyote Most Active last edited by

                        Hast du hier: http://forum.iobroker.de/viewtopic.php?f=20&t=793 mal etwas rumgelesen?

                        Ich habe letztens auch versucht eine MP3 abzuspielen, hat bei mir auch nicht funktioniert, habe aber auch momentan nicht weiter danach geschaut. Muss ich bei Gelegenheit nochmal probieren.

                        Die rote 80 ist die aktuelle Lautstärke, die sollte sich aber damit

                        var vol ="sayit.1.tts.volume";
                        setState (vol,40);
                        

                        auf 40 einstellen.

                        Der Gong ist die Ankündigung, die kannst du im sayit Adapter direkt, an/ab stellen

                        536_sayit.png

                        1 Reply Last reply Reply Quote 0
                        • Q
                          Qlink last edited by

                          Ja, den Thread hab ich auch schon durch…

                          Das Problem von mir hat leider keiner dort. 😞

                          Den Gong hab ich im Sayit Adapter abgedreht.

                          Das ist ja das merkwürdige, dass er trotzdem abgespielt wird ...

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

                            Wenn der wert eines objects rot ist wurde die Änderung nicht an das Gerät übertragen oder die Änderung wurde vom Gerät nicht bestätigt. ein Adapter neustart sollte dafür sorgen das der richtige status oder wert zu sehen ist, dann sollte es auch möglich sein einen neuen wert zu übertragen.

                            Das dürfte der Grund für die Meldung "…Volume: null" im log sein.

                            Gesendet von meinem Jolla mit Tapatalk

                            1 Reply Last reply Reply Quote 0
                            • Q
                              Qlink last edited by

                              Ich habe sogar mehrmals den PC komplett neugestartet, auf dem iobroker läuft. Damit sollte doch eigentlich auch jedes Mal alle Adapter neu geladen werden oder ?

                              Ich habe jetzt testweise meinen Sonos Zoneplayer stromlos gemacht und siehe da, auf einmal spielt er maus.mp3 ab. 😄

                              Es scheint jetzt also endlich soweit mal zu funktionieren, ganz normal auf Knopfdruck ein mp3 file abzuspielen 🙂

                              Im Log habe ich allerdings nach wie vor volume null und was jetzt neu dazugekommen ist, ist volume undefined:

                              sonos-0	2016-02-17 21:45:31	info	Restore state: volume - 60, mute: false, uri:
                              hm-rpc-2	2016-02-17 21:45:30	info	xmlrpc -> listDevices 0
                              sonos-0	2016-02-17 21:45:09	info	Play on sonos[RINCON_000E5828E4E601400]: http://192.168.xxx.xxx:8082/sayit.0/tts.userfiles/maus.mp3, Volume: undefined
                              sonos-0	2016-02-17 21:45:09	info	Restore state: volume - 60, mute: false, uri:
                              sonos-0	2016-02-17 21:44:48	info	Queue on sonos[RINCON_000E5828E4E601400]: http://192.168.xxx.xxx:8082/sayit.0/tts.userfiles/maus.mp3, Volume: null
                              javascript-0	2016-02-17 21:44:48	info	sendTo "send" to system.adapter.sonos from system.adapter.javascript.0: "http://192.168.xxx.xxx:8082/sayit.0/tts.userfiles/maus.mp3"
                              sonos-0	2016-02-17 21:44:47	info	Play on sonos[RINCON_000E5828E4E601400]: http://192.168.xxx.xxx:8082/sayit.0/tts.userfiles/maus.mp3, Volume: undefined
                              sonos-0	2016-02-17 21:44:47	info	Restore state: volume - 60, mute: false, uri:
                              sonos-0	2016-02-17 21:44:32	info	Queue on sonos[RINCON_000E5828E4E601400]: http://192.168.xxx.xxx:8082/sayit.0/tts.userfiles/maus.mp3, Volume: null
                              javascript-0	2016-02-17 21:44:32	info	sendTo "send" to system.adapter.sonos from system.adapter.javascript.0: "http://192.168.xxx.xxx:8082/sayit.0/tts.userfiles/maus.mp3"
                              

                              Unter Objekte habe ich ebenfalls noch die rote 80 beim sayit Datenpunkt und auch sonst einige rote Werte bei diversen Datenpunkten (siehe Screenshot): 415_objects.png

                              Wie sieht denn bei euch das Log aus nachdem per sayit Adapter ein mp3 file abgespielt wurde ?

                              Und wie sieht bei euch die Objekte Ansicht aus ? Ist da gar nichts rot ?

                              Kann ich die volume null bzw. volume undefined Meldung ignorieren, oder habt ihr noch Ideen wo der Fehler liegen könnte ?

                              1 Reply Last reply Reply Quote 0
                              • Q
                                Qlink last edited by

                                Es ist zum aus der Haut fahren !!! :evil:

                                Ich habe heute nachdem auf meinem Testrechner der Abspielen der MP3 soweit funktioniert hat, iobroker nochmal komplett neu auf meinem Server installiert (Hyper-V VM).

                                Ich habe alles 1:1 wieder genau so installiert wie auf meinem Testrechner.

                                Selbes Skript, selbe Einstellungen.

                                Jetzt geht das Abspielen wieder nicht. Weder auf meinem Testrechner, noch auf meinem Server.

                                Was geht denn hier ab ?

                                Neustart vom Testrechner bzw. vom Server und stromlos machen vom Sonos Player haben ebenfalls nichts mehr genutzt.

                                Im Log siehts auch etwas anders aus:

                                sonos-0 2016-02-18 20:41:11 info Play on sonos[RINCON_000E5828E4E601400]: http://192.168.xxx.xxx:8082/sayit.0/tts.userfiles/maus.mp3, Volume: null  
                                javascript-0 2016-02-18 20:41:11 info sendTo "send" to system.adapter.sonos from system.adapter.javascript.0: "http://192.168.xxx.xxx:8082/sayit.0/tts.userfiles/maus.mp3"  
                                
                                

                                Was mir auch aufgefallen ist: Wenn ich nebenbei auf meinem Handy oder auf meinem PC die Sonos Controller App laufen habe und ich versuche per Tasterdruck/Skript die Datei maus.mp3 abzuspielen, erscheint folgende FM:

                                415_sonos.png

                                Schön langsam verzweifel ich… 😢 😢 😢

                                Bitte helft mir den Fehler zu finden.

                                Gerne auch per Teamviewer oder Skype oder so ...

                                1 Reply Last reply Reply Quote 0
                                • Q
                                  Qlink last edited by

                                  @Jey Cee:

                                  Kannst du mir bitte Screenshots von deinem Log und deiner "Objekte-Ansicht" posten, nachdem du dieses MP3 Skript ausgeführt hast.

                                  Das würde mir schon helfen, damit ich bei der Fehlersuche zumindest etwas eingrenzen kann…

                                  Danke

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

                                    Falls du im Browser http://192.168.xxx.xxx:8082/sayit.0/tts … s/maus.mp3 aufrufst, kannst du was hören?

                                    Übrigens deine 192 IP Adresse kannst du ruhig zeigen, die ist nur von deiner Zuhause erreichbar und ansprechbar.

                                    Stimmt die IP Adresse, die auf dem SONOS siehst (auf dem Bild) mit 192.168.xxx.xxx ?

                                    1 Reply Last reply Reply Quote 0
                                    • Q
                                      Qlink last edited by

                                      Wenn ich http://192.168.xxx.xxx:8082/sayit.0/tts … s/maus.mp3 im Browser aufrufe, dann kommt das "Speichern Unter..." Fenster.

                                      Sprich ich kann die mp3 Datei dann per Browser herunterladen.

                                      Abgespielt wird hier nichts...

                                      1 Reply Last reply Reply Quote 0
                                      • Q
                                        Qlink last edited by

                                        @Qlink:

                                        @Jey Cee:

                                        Kannst du mir bitte Screenshots von deinem Log und deiner "Objekte-Ansicht" posten, nachdem du dieses MP3 Skript ausgeführt hast.

                                        Das würde mir schon helfen, damit ich bei der Fehlersuche zumindest etwas eingrenzen kann…

                                        Danke `

                                        Wäre wirklich toll wenn du mir das posten könntest…

                                        @Bluefox: Ist das mit dem Download Fenster normal wenn ich den Link von dir in der Adresszeile eingebe ?

                                        Mein Problem ist, dass ich weder im Forum etwas über meine Fehler finde, noch in der Doku genaueres nachlesen kann.

                                        Ich bin daher auf euch angewiesen bei der Fehlersuche... 😞

                                        1 Reply Last reply Reply Quote 0
                                        • Q
                                          Qlink last edited by

                                          Ich glaube ich habs jetzt hinbekommen.

                                          Das Problem ist anscheinend wenn man abwechselnd von 2 verschiedenen io-broker Installationen (unterschiedliche IP Adressen) versucht per sayit Adapter auf Sonos ein mp3 file abzuspielen, dann mag das Sonos nicht so wirklich.

                                          Spiele ich von iobroker Installation A das file ab, funktioniert es.

                                          Stoppe ich iobroker A und starte iobroker B und versuche das file abzuspielen, erfolgt keine Ausgabe am Sonos.

                                          Erst nach reboot vom Sonos System funktioniert dann die Ausgabe von iobroker B.

                                          Wechsel ich dann wieder auf iobroker A, funktioniert es wieder nicht.

                                          Fazit: Nach jedem Wechsel zwischen den iobroker Installationen ist leider ein Reboot von Sonos notwendig…

                                          Das geht übrigens mit folgendem Kommando:

                                          http://SONOS_IP:1400/reboot

                                          Beste Grüße
                                          5264_5f6da6b8619f8015800b027954eed8bd.png

                                          1 Reply Last reply Reply Quote 0
                                          • Q
                                            Qlink last edited by

                                            Da die Grundfunktion nun endlich gegeben ist (Bei Tastendruck ein MP3 File abspielen) möchte ich das Ganze nun möglichst WAF tauglich gestalten.

                                            Ich habe in einem anderen Thread ein Skript gefunden, welches bei Radiobetrieb und Unterbrechung einer Sayit Ausgabe, nach einer bestimmten Zeit den Radio wieder startet.

                                            Dieses Skript hätte ich wie folgt auf meine Klingelanwendung angepasst:

                                            var vol ="sayit.0.tts.volume";
                                            setState (vol,80);
                                            
                                            on({id: "hm-rpc.0.LEQxxxxxx.1.PRESS_SHORT"/*Taster_Haustuer_Klingel.PRESS_SHORT*/, val: true}, function(obj) {                //Auslöser
                                                var idSonosfav = getState("sonos.0.root.192_168_222_17.favorites_set").val;      //speichern des aktuellen Senders
                                                var idSonosplay = getState ("sonos.0.root.192_168_222_17.state_simple").val;     //Status des Speakers
                                                if (idSonosplay) {                                                     //Wenn Radio läuft
                                                    sendTo('sonos', 'send', 'http://192.168.222.9:8082/sayit.0/tts.userfiles/maus.mp3');                                  //Ausgabe
                                                    setState ("sonos.0.root.192_168_222_17.favorites_set", idSonosfav);          //nach 23 Sekunden gespeicherten Favoriten Sender wieder stellen
                                                    setStateDelayed ("sonos.0.root.192_168_222_17.state_simple", idSonosplay, 23000);          //nach 23 Sekunden wieder starten
                                                } else {                                               //Wenn Radio nicht läuft
                                                    sendTo('sonos', 'send', 'http://192.168.222.9:8082/sayit.0/tts.userfiles/maus.mp3');
                                                }
                                            });
                                            

                                            Folgende 2 Probleme hab ich damit:

                                            Problem 1: Die Lautstärke mit der das MP3 File abgespielt wird ist nicht der vorgegebene Wert 80, sondern der Wert auf dem Sonos aktuell gerade läuft.

                                            Problem 2: Läuft kein Radio und das Skript wird ausgeführt, passt alles.(bis auf die Lautstärke, siehe Problem 1) maus.mp3 wird einmal abgespielt

                                            Läuft Radio auf Sonos und es wird das Skript aufgerufen, dann stoppt die Radiowiedergabe und maus.mp3 wird 2x nacheinandner abgespielt. Nachdem maus.mp3 2x durchgelaufen ist, fängt der Radio nicht wieder von selbst an zu spielen, sprich es bleibt danach ruhig und man muss ihn manuell aufrufen.

                                            Hier die Log Ausgabe bei Problem 2:

                                            sonos.0	2016-02-28 11:17:40	info	sonos.0 try to control id sonos.0.root.192_168_222_17.state_simple with {"val":true,"ack":false,"ts":1456654661,"q":0,"from":"system.adapter.javascript.0","lc":1456654661}
                                            sonos.0	2016-02-28 11:17:40	info	sonos.0 Restore state: volume - 52, mute: false, uri: x-sonosapi-stream:s15580?sid=254&flags=32
                                            sonos.0	2016-02-28 11:17:17	info	sonos.0 Play on sonos[RINCON_000E5828E4E601400]: http://192.168.222.9:8082/sayit.0/tts.userfiles/maus.mp3, Volume: null
                                            sonos.0	2016-02-28 11:17:17	info	sonos.0 try to control id sonos.0.root.192_168_222_17.favorites_set with {"val":"","ack":false,"ts":1456654638,"q":0,"from":"system.adapter.javascript.0","lc":1455819037}
                                            javascript.0	2016-02-28 11:17:17	info	javascript.0 sendTo "send" to system.adapter.sonos from system.adapter.javascript.0: "http://192.168.222.9:8082/sayit.0/tts.userfiles/maus.mp3"
                                            
                                            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

                                            738
                                            Online

                                            32.0k
                                            Users

                                            80.4k
                                            Topics

                                            1.3m
                                            Posts

                                            6
                                            27
                                            4654
                                            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