NEWS
Neuer Adapter: Yamaha MusicCast
-
So Leute, habs rausgefunden.
Mit
http://192.168.xxx.xxx/YamahaExtendedControl/v1/system/getFeatures
liest man die gültigen Funktionen aus (siehe mein Beitrag oben)Und setzen kannst du dies mit:
http://192.168.xxx.xxx/YamahaExtendedControl/v1/main/setLinkAudioDelay?delay=yyy
wobei als yyy natürlich nur die Werte gehen die das Gerät auch mitbringt.In meinem Fall wie oben ersichtlich.
mfg
Dieter -
Hallo Dieter,
Vielen Dank! Das klappt tatsächlich. Damit kann ich einen Workaround bauen. Super!
Da lag ich mit meiner obigen Vermutung falsch.
Es wäre natürlich trotzdem gut, wenn wir jemanden finden, der es auch im Adapter reparieren kann und der sich künftig um den Adapter kümmern könnte. Yamaha braucht ja nur mal was an der MusicCast-App/API zu ändern und dann stehen wir da.
Schönen Abend.
Frank
-
Daumen hoch wäre gut gewesen, aber naja.
-
Wo macht man das?
-
-
@frank2604
Moin Frank und frohes neues an dich und alle Leser!
Sorry für die späte Antwort. War Skifahren und aus irgendeinem Grund verliere ich auf meinem PC ständig die Connection zum Forum hierAaalsoo: ich bin zwar FiSi aber auch kein io-Pro. Schön zu hören dass ich nicht der Einzige mit dieser Frage zum Thema MusicCast bin.
Um erst mal deine Fragen zu beantworten:
Yamaha MusicCast Custom Skill ist aktiv, der MusicCast Adapter der neusten Version ist in Iobroker installiert und meine fritzbox vergibt immer die selben IPs für die bekannten Geräte.Der Adapter “Szenen” sagte mir bisher gar nichts. Bin grade am installieren und sicher mich da mal rein. Wie kann der Adapter beim Verbinden von Räumen mit MusicCast nützlich sein?
LG
-
@Coffeelover
Danke für die prompte Antwort. Tatsächlich funktioniert das verbinden der Räume, was man in der MusicCast App auch nachvollziehen kann. Allerdings stoppt dann die Wiedergabe.Ich habe den Thread natürlich schon weiter gelesen und die Lösung von @bahnuhr versucht umzusetzen. Bin vermutlich nur zu blöd dafûr. Hab mit Java und dem Umgang von json-Dateien / Listen etc. ziemlich wenig Ahnung.
Kann mir nochmal jemand auf dein Sprünge helfen?
Ich möchte dass mein EchoFlex-Bewegungssensor im Bad, Wohnzimmer und Badezimmer verbindet sobald er eine Bewegung registriert. Das kopple ich natürlich an einen State welcher prüft, ob im Wohnzimmer überhaupt Musik läuft.
Danke für eure Tipps!
(Geiler Haufen btw! Hätte nie gedacht dass man so schnell Antworten und Anregungen bekommt! Daumen hoch ) -
@ioJoe Hast du mal ganz easy beiden händischen Wege geprüft?
- Per MC die Box verbinden und den Datenpunkt ansehen.
- Die IP händisch in den DP eintragen.
Bei mir stoppt die Wiedergabe da eigentlich nicht. Hat es ggf etwas mit deiner Play Prüfung zu tun?
Vg
-
@Coffeelover
Hey geil, es funktioniert. Ich hatte die “Client”-Ip auf dem “Master” eingegeben, das war der Fehler ️War ja easy! Danke für den Tipp und die schnelle Reaktion -
Sorry, das ich lange nicht aktiv war.
Mit dem Tapatalk fand ich es besser, da ich da Nachrichten auf dem Handy bekam.
Nun denn, die Zeit ist arg begrenzt, aber die Funktion für audio_delay und audio_quality hab ich in der Version 0.1.3 auf github eingebaut.
Ich hoffe die Datenpunkte sind jetzt nicht nur schreibbar, sondern senden auch an die Geräte.Gruß
Klaus -
Hallo Klaus,
schön, dass Du zurück bist und das Du Dich dem Problem mit dem Datenpunkt angenommen hast. Leider hatte ich heute keine Zeit für einen Test, werde mich aber spätestens nächstes Wochenende damit befassen.
Grüße
Frank
-
Hallo Klaus,
besser spät als garnicht - habe eben die 0.1.3 von GitHub installiert.
audio_delay lässt sich aber noch nicht setzten. Folgendes steht im Log:
musiccast.0 2020-01-26 19:43:01.220 warn at processImmediate (timers.js:658:5) musiccast.0 2020-01-26 19:43:01.220 warn at tryOnImmediate (timers.js:676:5) musiccast.0 2020-01-26 19:43:01.220 warn at runCallback (timers.js:705:18) musiccast.0 2020-01-26 19:43:01.220 warn at Immediate.setImmediate [as _onImmediate] (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInRedis.js:226:41) musiccast.0 2020-01-26 19:43:01.220 warn at change (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:4745:37) musiccast.0 2020-01-26 19:43:01.220 warn at Object.stateChange (/opt/iobroker/node_modules/iobroker.musiccast/main.js:257:28) musiccast.0 2020-01-26 19:43:01.220 warn (6160) TypeError: yamaha.setlinkAudioDelay is not a function musiccast.0 2020-01-26 19:43:01.206 warn (6160) States pmessage musiccast.0.RX-A1080_0DA87303.main.link_audio_delay {"val":"lip_sync","ack":false,"ts":1580064181183,"q":0,"from":"system.adapter.admin.0","user":"system.user.admin","lc":15800
Zu Info:
mit den folgenden http-Aufrufen funktioniert es - siehe oben Beitrag von Dieter:
http://192.168.2.50/YamahaExtendedControl/v1/main/setLinkAudioDelay?delay=audio_sync
http://192.168.2.50/YamahaExtendedControl/v1/main/setLinkAudioDelay?delay=lip_sync
Gruß Frank
-
Ich habe mich für die harte Tour entschieden. Da mich die ständig einschlafende API genervt hat und vis häufig für die Yamaha die falschen Status angezeigt hat, habe ich nun im Adapter einen Restart des Adapters alle 30 Minuten eingerichtet. Das funktioniert bisher recht gut. Vielleicht möchte sich ja jemand inspirieren lassen.
VG -
@frank2604 sagte in Neuer Adapter: Yamaha MusicCast:
Hallo Klaus,
besser spät als garnicht - habe eben die 0.1.3 von GitHub installiert.
audio_delay lässt sich aber noch nicht setzten. Folgendes steht im Log:
musiccast.0 2020-01-26 19:43:01.220 warn at processImmediate (timers.js:658:5) musiccast.0 2020-01-26 19:43:01.220 warn at tryOnImmediate (timers.js:676:5) musiccast.0 2020-01-26 19:43:01.220 warn at runCallback (timers.js:705:18) musiccast.0 2020-01-26 19:43:01.220 warn at Immediate.setImmediate [as _onImmediate] (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInRedis.js:226:41) musiccast.0 2020-01-26 19:43:01.220 warn at change (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:4745:37) musiccast.0 2020-01-26 19:43:01.220 warn at Object.stateChange (/opt/iobroker/node_modules/iobroker.musiccast/main.js:257:28) musiccast.0 2020-01-26 19:43:01.220 warn (6160) TypeError: yamaha.setlinkAudioDelay is not a function musiccast.0 2020-01-26 19:43:01.206 warn (6160) States pmessage musiccast.0.RX-A1080_0DA87303.main.link_audio_delay {"val":"lip_sync","ack":false,"ts":1580064181183,"q":0,"from":"system.adapter.admin.0","user":"system.user.admin","lc":15800
Zu Info:
mit den folgenden http-Aufrufen funktioniert es - siehe oben Beitrag von Dieter:
http://192.168.2.50/YamahaExtendedControl/v1/main/setLinkAudioDelay?delay=audio_sync
http://192.168.2.50/YamahaExtendedControl/v1/main/setLinkAudioDelay?delay=lip_sync
Gruß Frank
Hallo Frank,
die http-Aufrufe habe ich in meinem node-modul schon drin.
Es gab einen Schreibfehler im iobroker.musiccast (l ->L), jetzt sollte es funktionieren und nicht abstürzen.
Danke fürs Testen und Rückmelden.Gruß
Klaus -
Hallo Klaus,
ich habe neu von Github installiert, bekomme aber weiterhin die 0.1.3 und der Fehler ist auch noch unverändert.
Muss ich noch etwas beachten oder anders installieren?
Danke und Gruß
Frank
-
@frank2604
Hallo Frank,ist ein wenig komisch,
wenn dort immer noch "TypeError: yamaha.setlinkAudioDelay is not a function" im log steht, dann ist die Version noch nicht aktuell.
Da hilft ggf. ein sudo iobroker update musiccastWenn dort jetzt yamaha.setLinkAudioDelay (mit großem L) steht, dann müsstest du überprüfen ob yamaha-yxc-nodejs im node_modules die Version 0.0.11 hat. Das wäre die Version wo ich die neuen Funktionen aufgenommen habe.
Gruß
Klaus -
Prima, nach 'sudo iobroker update musiccast' funktioniert es.
Ganz lieben Dank für die Fehlerbehebung. Jetzt kann ich nach Umzug ins neue Haus im Sommer alles mit dem musiccast-Adapter so steuern, wie ich es benötige.
Grüße
Frank
-
@frank2604 je nach Anwendungsszenario bitte beachten, dass der Adapter ohne aktive Eingabe irgendwann einschläft und nicht mehr aktualisiert. Mein Workaround ist ein zyklisches Neustarten des Adapters. Ich freue mich ständig, wenn ich sehe, dass er die tatsächlichen Status anzeigt.
-
Danke für den Hinweis. Ich hatte das schon im Verlauf des Threads gelesen und auch Deinen letzten Beitrag bzgl. regelmäßigem Adapterneustart.
In meinem Szenario steuere ich immer von ioBroker an MusicCast und benötige keine refreshten Status aus der anderen Richtung. Wenn das mal so wäre habe ich Deinen Workaround im Hinterkopf.
Grüße
Frank
-
@Coffeelover
Wobei richtigerweise nicht der Adapter einschläft, sondern das Yamaha Gerät keine updates mehr schickt. Das scheint eine Systemeigenschaft zu sein, die man nicht parametrieren kann.