NEWS
WiiM Multiroom Audio mit iobroker steuern
-
nur weil eine datei im dteibereich des iobrokers liegt weiß der webserver des iobroker noch nix davon.
die datei muss per writeFile Befehl geschrieben werden.den befehl gibt es in verschiedenen ausfertigungen
im javascript adapter
https://github.com/ioBroker/ioBroker.javascript/blob/master/docs/en/javascript.md#writefile
per kommandozeile
iob file write --help -
@qlink Hallo qlink,
Versuch bitte mal, die Datei per IoBroker Front End hochzuladen. Ich denke, dass der ioBroker dann genau die con Oliver beschriebenen Schritte automatisch durchführt.
Viel Erfolg! -
Ich hätte es per
iobroker file write /files/vis.0/maus.mp3 /files/mp3/maus.mp3
versucht bzw. in allen möglichen Abwandlungen beim Pfad, (mit /opt/iobroker/iobroker-data/files/ davor usw.) aber ich erhalte immer:
"Please provide a valid file name as source file: "file write /opt/SOURCE/script.js /vis-2/DESTINATION/script.js"
@kai-brendel Was meinst du mit Front End genau ? Ich hätte es schon mit der Upload Funktion per vis Datei Manager versucht.
Die Datei wird mir auch entsprechend angezeigt im Manager
Wenn ich aber per File Station auf der Synology in dem Verzeichnis schaue, dann ist dort keine Datei namens maus.mp3
-
@qlink ich meine die Standard Iobroker Ansicht:
-
@Kai-Brendel
oha, das kannte ich noch gar nicht
Wenn ich auf den Ordner Benutzerdaten doppelklicke, dann erhalte ich
""0_userdata.0" kann nicht gelesen werden"
Allerdings liegt in der Ansicht unter vis.0 die Datei maus.mp3
Wie kriege ich jetzt den korrekten Link zu der Datei raus, damit ich sie per play_URL abspielen kann ?
-
@qlink rechts in der Dateiliste ist der Download Link. Den mit rechter Maustaste kopieren. Den kannst Du dann z.B. per Blockly Script auf den play_URL schreiben.
Wenn Du Blockly noch nicht gemacht hast, kann ich heute Abend einen Screenshot schicken. -
@kai-brendel
Perfekt! Mit dem Link vom Downloadbutton klappts dann auch mit dem Abspielen per http!
Der Port war falsch...
Ich hab immer 8082 anstatt 8081 versuchtJetzt funktioniert auch die Klingel per Blockly:
Hat zwar immer noch 2-3 Sekunden Verzögerung, aber damit kann ich leben, bzw. vermute ich dass man diese Verzögerung auch nicht wegbekommen wird oder ?
Zusätzlich hätte ich noch eine Frage bzw. ein Anliegen:
Gibt es eine Möglichkeit, wenn der WiiM gerade Musik abspielt während jemand die Klingel drückt, dass er nach dem Klingelton die zuvor gespielte Musik wieder weiterabspielt ?
-
@qlink das freut mich!
Das Rückspringen sollte möglich sein, wenn ich einen "Current_URL" Datenpunkt und einen "Position" Datenpunkt im Adapter bereitstelle. Die kannst Du dann beim Klingeln auslesen und nach dem Klingeln wieder zurücksvhteiben.
Ich werde mal versuchen, das im nächste Update unterzubringen. Melde mich
Funktioniert sonst alles gut mit dem Adapter?
-
@kai-brendel
Das wäre top!
Ansonsten scheint alles gut zu funktionieren
Im Log ist mir nur aufgefallen, dass wenn man die Klingel drückt, das o.g. Skript scheinbar zweimal aufgerufen wird:
wiim.0 2025-01-06 12:23:28.796 info [object Object] wiim.0 2025-01-06 12:23:28.793 info [object Object] wiim.0 2025-01-06 12:23:28.786 info [object Object] wiim.0 2025-01-06 12:23:28.785 info [object Object] wiim.0 2025-01-06 12:23:28.775 info setPlayerCmd:play:http://192.168.30.90:8081/files/vis.0/maus.mp3 wiim.0 2025-01-06 12:23:28.768 info setPlayerCmd:play:http://192.168.30.90:8081/files/vis.0/maus.mp3 javascript.0 2025-01-06 12:23:28.764 info script.js.KlingelV4-Wiim: Türklingel javascript.0 2025-01-06 12:23:28.758 info script.js.KlingelV4-Wiim: Türklingel
Kann aber sein, dass es an meinem Skript liegt...
Haben die [object Object] Einträge im Log irgendeinen speziellen Grund ?Die unexpected token Einträge alle 15 Sekunden tauchen heute auch nicht mehr auf
Cool wäre noch wenn du den WiiM als Output für den sayit Adapter hinzufügen könntest.
So könnte man auch diverse Ansagen wie Kalendereinträge, Temperatur, Nachrichten etc. per iobroker auf den WiiM Playern im Haus ausgeben: -
@qlink ich sehe keine Notwendigkeit, den Say-it Adapter zu erweitern
Wenn ich es richtig verstehe, legt Say-it die Ausgabe als mp3 ab, wo sie unter der URL hrrp://myiobrokerip/state/Say-it.0.tts.mp3 aufrufbar ist.
Die URL musst Du in deinem Skript nur in paly_URL schreiben, dann sollte Dein Wiim sprechen.
Gruß
Kai -
@kai-brendel said in WiiM Multiroom Audio mit iobroker steuern:
@qlink ich sehe keine Notwendigkeit, den Say-it Adapter zu erweitern
Wenn ich es richtig verstehe, legt Say-it die Ausgabe als mp3 ab, wo sie unter der URL hrrp://myiobrokerip/state/Say-it.0.tts.mp3 aufrufbar ist.
Die URL musst Du in deinem Skript nur in paly_URL schreiben, dann sollte Dein Wiim sprechen.
Gruß
KaiHabe es jetzt getestet und es funktioniert, der Link muss allerdings lauten: http://iobrokeripadresse:8081/files/sayit.0/tts.mp3
Damit solltest Du eine Lösung haben, oder?
-
@qlink Einfach Admin - Files und dann dort hochladen
-
@qlink hi qlink,
noch zwei Rückmeldungen zu Deinen Punkten/Fragen:
1.) Doppelter Aufruf des Skripts
Ich vermute, dass es daran liegt, dass Dein Trigger "wurde aktualisiert" ist. Wahrscheinlich ändert sich Dein Klingeldatenpunkt zu Beginn des Drückens und beim Loslassen => zwei Aufrufe des Skripts2.) Die Objekt Info Meldung
Ich weiß, wo sie verursacht wird, werde das im näxhsten Update dann hoffentlich beheben.Dann mal viel Spaß mit Deinem Wiim!
Hast Du eigentlich mehrere Wiims? Ich besitze nur einen, kann daher nichts zur Gruppierung testen....
-
das klingt plausibel werde ich am WE mal testen mit "auf true" triggern
Noch nicht, sobald ich die sayit Ausgabe über Wiim und noch ein paar andere Sachen getestet habe, möchte ich Zug um Zug alle meine Sonos Geräte gegen Wiim austauschen...