Yamaha-_Receiver einschalten, Netradio-Lesezeichen

Begonnen von Bartimaus, 07 Februar 2014, 19:32:44

Vorheriges Thema - Nächstes Thema

Markus Bloch

Zitat von: knopf_piano am 18 Dezember 2015, 16:46:20
loglevel 5:

set AV_Receiver navigateListMenu Lesezeichen/My__Favorites/Morow

response gibt die liste der Lesezeichen schon zurück (habs markiert---)
receiver schaltet nicht auf den angegebenen Zielsender  :-[

2015.12.18 16:37:15 5: YAMAHA_AVR (AV_Receiver) - set AV_Receiver navigateListMenu Lesezeichen/My__Favorites/Morow
2015.12.18 16:37:15 4: YAMAHA_AVR (AV_Receiver) - append to queue "navigateListMenu Lesezeichen/My__Favorites/Morow": <?xml version="1.0" encoding="utf-8"?><YAMAHA_AV cmd="GET"><[CURRENT_INPUT_TAG]><List_Info>GetParam</List_Info></[CURRENT_INPUT_TAG]></YAMAHA_AV>
2015.12.18 16:37:15 5: YAMAHA_AVR (AV_Receiver) - no commands currently running, but queue has pending commands. preparing new request
2015.12.18 16:37:15 5: YAMAHA_AVR (AV_Receiver) - checking cmd queue item: 0 (cmd: navigateListMenu, arg: Lesezeichen/My__Favorites/Morow, data: 1, priority: -, at_first: 0, not_before: 0)
2015.12.18 16:37:15 5: YAMAHA_AVR (AV_Receiver) - choosed item 0 as next command
2015.12.18 16:37:15 4: YAMAHA_AVR (AV_Receiver) - send command "navigateListMenu Lesezeichen/My__Favorites/Morow": <?xml version="1.0" encoding="utf-8"?><YAMAHA_AV cmd="GET"><NET_RADIO><List_Info>GetParam</List_Info></NET_RADIO></YAMAHA_AV>
2015.12.18 16:37:15 4: HttpUtils url=http://192.168.50.81/YamahaRemoteControl/ctrl
2015.12.18 16:37:15 5: Triggering AV_Receiver (1 changes)
2015.12.18 16:37:15 5: Notify loop for AV_Receiver navigateListMenu Lesezeichen/My__Favorites/Morow
2015.12.18 16:37:15 5: Update structure 'AVRX_Power' to on because device AV_Receiver has changed
2015.12.18 16:37:15 4: http://192.168.50.81/YamahaRemoteControl/ctrl: HTTP response code 200
2015.12.18 16:37:15 4: HttpUtils http://192.168.50.81/YamahaRemoteControl/ctrl: Got data, length: 862
2015.12.18 16:37:15 5: YAMAHA_AVR (AV_Receiver) - received HTTP code 200 for command "navigateListMenu Lesezeichen/My__Favorites/Morow"
--- 2015.12.18 16:37:15 5: YAMAHA_AVR (AV_Receiver) - got response for "navigateListMenu Lesezeichen/My__Favorites/Morow": <YAMAHA_AV rsp="GET" RC="0"><NET_RADIO><List_Info><Menu_Layer>3</Menu_Layer><Menu_Name>My__Favorites</Menu_Name><Current_List><Line_1><Txt>Morow</Txt><Attribute>Item</Attribute></Line_1><Line_2><Txt>181.fm - 80's Hairband</Txt><Attribute>Item</Attribute></Line_2><Line_3><Txt>Bayern 1 Mainfranken</Txt><Attribute>Item</Attribute></Line_3><Line_4><Txt>LiveIreland 1 Traditional &amp; Folk</Txt><Attribute>Item</Attribute></Line_4><Line_5><Txt>181.fm - Salsa</Txt><Attribute>Item</Attribute></Line_5><Line_6><Txt>4U Classic Rock</Txt><Attribute>Item</Attribute></Line_6><Line_7><Txt>Progman laut.fm</Txt><Attribute>Item</Attribute></Line_7><Line_8><Txt>Radio Bossa Nova Hits</Txt><Attribute>Item</Attribute></Line_8></Current_List><Cursor_Position><Current_Line>3</Current_Line><Max_Line>37</Max_Line></Cursor_Position></List_Info></NET_RADIO></YAMAHA_AV>
2015.12.18 16:37:15 4: YAMAHA_AVR (AV_Receiver) - append to queue "statusRequest basicStatus": <?xml version="1.0" encoding="utf-8"?><YAMAHA_AV cmd="GET"><Main_Zone><Basic_Status>GetParam</Basic_Status></Main_Zone></YAMAHA_AV>
2015.12.18 16:37:15 5: YAMAHA_AVR (AV_Receiver) - no commands currently running, but queue has pending commands. preparing new request
2015.12.18 16:37:15 5: YAMAHA_AVR (AV_Receiver) - checking cmd queue item: 0 (cmd: statusRequest, arg: basicStatus, data: 1, priority: -, at_first: 0, not_before: 0)
2015.12.18 16:37:15 5: YAMAHA_AVR (AV_Receiver) - choosed item 0 as next command



Welches Modell genau hast du? Dein Receiver antwortet:

Zitat<YAMAHA_AV rsp="GET" RC="0"><NET_RADIO><List_Info><Menu_Layer>3</Menu_Layer><Menu_Name>My__Favorites</Menu_Name><Current_List><Line_1><Txt>Morow</Txt><Attribute>....

Das Modul erwartet aber:
Zitat<YAMAHA_AV rsp="GET" RC="0"><NET_RADIO><List_Info><Menu_Status>Ready</Menu_Status><Menu_Layer>3</Menu_Layer><Menu_Name>My__Favorites</Menu_Name><Current_List><Line_1><Txt>Morow</Txt><Attribute>.....

Hast du die aktuellste Firmware installiert? Bitte mal ein Firmware-Update ausführen.
Developer für Module: YAMAHA_AVR, YAMAHA_BD, FB_CALLMONITOR, FB_CALLLIST, PRESENCE, Pushsafer, LGTV_IP12, version

aktives Mitglied des FHEM e.V. (Technik)

knopf_piano

Server: AV_Receiver/3.1 (RX-V671)
FW 1.76/2.01 (ist die "latest")

zotac nano mit proxmox und ganz viel zeug drauf

Markus Bloch

#62
In der Yamaha Schnittstellendokumentation ist das für deine Modellreihe tatsächlich so gelistet, dass <Menu_Status> nicht zurückgegeben wird. Dieser Parameter ist jedoch wichtig um zu erkennen, ob das Menü vollständig aufgebaut und geladen wurde.

Um zu schauen wie sich dein Receiver verhält, sobald man das Menü durchbrowst und das Menü sich noch aufbaut, bitte mal ab Zeile 1555 folgenden Inhalt:


            if($data =~ /<Menu_Status>(.+?)<\/Menu_Status><Menu_Layer>(.+?)<\/Menu_Layer><Menu_Name>(.+?)<\/Menu_Name><Current_List>(.+?)<\/Current_List><Cursor_Position><Current_Line>(\d+)<\/Current_Line><Max_Line>(\d+)<\/Max_Line><\/Cursor_Position>/)
            {
                my $menu_status = $1;
                my $menu_layer = $2;
                my $menu_name = $3;
                my $current_list = $4;
                my $current_line = $5;
                my $max_line = $6;


bitte ändern in:


            if($data =~ /(.)<Menu_Layer>(.+?)<\/Menu_Layer><Menu_Name>(.+?)<\/Menu_Name><Current_List>(.+?)<\/Current_List><Cursor_Position><Current_Line>(\d+)<\/Current_Line><Max_Line>(\d+)<\/Max_Line><\/Cursor_Position>/)
            {
                my $menu_status = "Ready";
                my $menu_layer = $2;
                my $menu_name = $3;
                my $current_list = $4;
                my $current_line = $5;
                my $max_line = $6;


Dann anschließend bitte FHEM neustarten und nochmal auf die selbe Weiße versuchen den Radio-Sender zu starten und das log mit verbose 5 bitte wieder posten.

Vielen Dank

Gruß
Markus
Developer für Module: YAMAHA_AVR, YAMAHA_BD, FB_CALLMONITOR, FB_CALLLIST, PRESENCE, Pushsafer, LGTV_IP12, version

aktives Mitglied des FHEM e.V. (Technik)

knopf_piano

no success...
an die stelle bin ich auch gekommen
log:

2015.12.18 18:18:26 4: http://192.168.50.81/YamahaRemoteControl/ctrl: HTTP response code 200
2015.12.18 18:18:26 4: HttpUtils http://192.168.50.81/YamahaRemoteControl/ctrl: Got data, length: 862
2015.12.18 18:18:26 5: YAMAHA_AVR (AV_Receiver) - received HTTP code 200 for command "navigateListMenu Lesezeichen/My__Favorites/Morow"
2015.12.18 18:18:26 5: YAMAHA_AVR (AV_Receiver) - got response for "navigateListMenu Lesezeichen/My__Favorites/Morow": <YAMAHA_AV rsp="GET" RC="0"><NET_RADIO><List_Info><Menu_Layer>3</Menu_Layer><Menu_Name>My__Favorites</Menu_Name><Current_List><Line_1><Txt>Morow</Txt><Attribute>Item</Attribute></Line_1><Line_2><Txt>181.fm - 80&apos;s Hairband</Txt><Attribute>Item</Attribute></Line_2><Line_3><Txt>Bayern 1 Mainfranken</Txt><Attribute>Item</Attribute></Line_3><Line_4><Txt>LiveIreland 1 Traditional &amp;amp; Folk</Txt><Attribute>Item</Attribute></Line_4><Line_5><Txt>181.fm - Salsa</Txt><Attribute>Item</Attribute></Line_5><Line_6><Txt>4U Classic Rock</Txt><Attribute>Item</Attribute></Line_6><Line_7><Txt>Progman laut.fm</Txt><Attribute>Item</Attribute></Line_7><Line_8><Txt>Radio Bossa Nova Hits</Txt><Attribute>Item</Attribute></Line_8></Current_List><Cursor_Position><Current_Line>2</Current_Line><Max_Line>37</Max_Line></Cursor_Position></List_Info></NET_RADIO></YAMAHA_AV>
2015.12.18 18:18:26 5: YAMAHA_AVR (AV_Receiver) - return to start of menu to begin menu browsing
2015.12.18 18:18:26 4: YAMAHA_AVR (AV_Receiver) - append to queue "navigateListMenu Lesezeichen/My__Favorites/Morow": <?xml version="1.0" encoding="utf-8"?><YAMAHA_AV cmd="PUT"><[CURRENT_INPUT_TAG]><List_Control><Cursor>Return to Home</Cursor></List_Control></[CURRENT_INPUT_TAG]></YAMAHA_AV>
2015.12.18 18:18:26 5: YAMAHA_AVR (AV_Receiver) - no commands currently running, but queue has pending commands. preparing new request
zotac nano mit proxmox und ganz viel zeug drauf

Markus Bloch

Zitat von: knopf_piano am 18 Dezember 2015, 18:23:12
no success...
an die stelle bin ich auch gekommen
log:

2015.12.18 18:18:26 4: http://192.168.50.81/YamahaRemoteControl/ctrl: HTTP response code 200
2015.12.18 18:18:26 4: HttpUtils http://192.168.50.81/YamahaRemoteControl/ctrl: Got data, length: 862
2015.12.18 18:18:26 5: YAMAHA_AVR (AV_Receiver) - received HTTP code 200 for command "navigateListMenu Lesezeichen/My__Favorites/Morow"
2015.12.18 18:18:26 5: YAMAHA_AVR (AV_Receiver) - got response for "navigateListMenu Lesezeichen/My__Favorites/Morow": <YAMAHA_AV rsp="GET" RC="0"><NET_RADIO><List_Info><Menu_Layer>3</Menu_Layer><Menu_Name>My__Favorites</Menu_Name><Current_List><Line_1><Txt>Morow</Txt><Attribute>Item</Attribute></Line_1><Line_2><Txt>181.fm - 80&apos;s Hairband</Txt><Attribute>Item</Attribute></Line_2><Line_3><Txt>Bayern 1 Mainfranken</Txt><Attribute>Item</Attribute></Line_3><Line_4><Txt>LiveIreland 1 Traditional &amp;amp; Folk</Txt><Attribute>Item</Attribute></Line_4><Line_5><Txt>181.fm - Salsa</Txt><Attribute>Item</Attribute></Line_5><Line_6><Txt>4U Classic Rock</Txt><Attribute>Item</Attribute></Line_6><Line_7><Txt>Progman laut.fm</Txt><Attribute>Item</Attribute></Line_7><Line_8><Txt>Radio Bossa Nova Hits</Txt><Attribute>Item</Attribute></Line_8></Current_List><Cursor_Position><Current_Line>2</Current_Line><Max_Line>37</Max_Line></Cursor_Position></List_Info></NET_RADIO></YAMAHA_AV>
2015.12.18 18:18:26 5: YAMAHA_AVR (AV_Receiver) - return to start of menu to begin menu browsing
2015.12.18 18:18:26 4: YAMAHA_AVR (AV_Receiver) - append to queue "navigateListMenu Lesezeichen/My__Favorites/Morow": <?xml version="1.0" encoding="utf-8"?><YAMAHA_AV cmd="PUT"><[CURRENT_INPUT_TAG]><List_Control><Cursor>Return to Home</Cursor></List_Control></[CURRENT_INPUT_TAG]></YAMAHA_AV>
2015.12.18 18:18:26 5: YAMAHA_AVR (AV_Receiver) - no commands currently running, but queue has pending commands. preparing new request


Die Zeile, die mich interessiert, kommt leider erst später. Bitte die gesamten Logausgaben posten und keine Ausschnitte.

Developer für Module: YAMAHA_AVR, YAMAHA_BD, FB_CALLMONITOR, FB_CALLLIST, PRESENCE, Pushsafer, LGTV_IP12, version

aktives Mitglied des FHEM e.V. (Technik)

knopf_piano

#65
- service fhem stop
- service fhem start
- frischer fhem-log
hab mal als anhang beides rangehängt
zotac nano mit proxmox und ganz viel zeug drauf

Markus Bloch

#66
Zitat von: knopf_piano am 18 Dezember 2015, 20:00:37
- service fhem stop
- service fhem start
- frischer fhem-log
hab mal als anhang beides rangehängt

Ok. prinzipiell reicht nur ein verbose 5 auf die Definition "AV_Receiver". Mit "global verbose 5" wird es sonst teilweise sehr unübersichtlich.

Die RX-Vx71'er Reihe hat noch eine Änderung gegenüber allen anderen Modellen.

Bitte nochmal in Zeile 1580 die Zeile:

                            YAMAHA_AVR_SendCommand($hash,"<YAMAHA_AV cmd=\"PUT\"><[CURRENT_INPUT_TAG]><List_Control><Cursor>Return to Home</Cursor></List_Control></[CURRENT_INPUT_TAG]></YAMAHA_AV>", $cmd, $arg);

ändern in:

                            YAMAHA_AVR_SendCommand($hash,"<YAMAHA_AV cmd=\"PUT\"><[CURRENT_INPUT_TAG]><List_Control><Cursor>Back to Home</Cursor></List_Control></[CURRENT_INPUT_TAG]></YAMAHA_AV>", $cmd, $arg);

Und dann nochmal einen neustart und sobald FHEM gestartet ist, wieder versuchen den Radio-Sender zu starten und das Log posten. Reicht, wenn du ab dem Neustart bis aktuell das Log postest.

Danke

Gruß
Markus
Developer für Module: YAMAHA_AVR, YAMAHA_BD, FB_CALLMONITOR, FB_CALLLIST, PRESENCE, Pushsafer, LGTV_IP12, version

aktives Mitglied des FHEM e.V. (Technik)

knopf_piano

right!
that's it ->   ;) VIELEN DANK Markus!
verzögerung ca. 5-10s, bis der Sender nach cmd-Abschicken wechselt. ich vermute, dass ist dem Datenaustausch und pl-scripting geschuldet.
Hab die regex vorher nochmal geprüft und verschiedenes beim $data-match probiert und schon an mir gezweifelt, da eigentlich an der Codestelle alles klar ist.
Dass der Hund dort beim letzten Hinweis von dir begraben ist konnt ich nicht wissen, da bist du tiefer im Modul drin als Autor.

Noch Frage:
Wo bekomm ich die API-description her?
ich hab in vorigen FWs mal durch Zufall das xml-scheme abrufen können, allerdings kommt da jetzt nix raus...
- http://<ip-avrx>/YamahaRemoteControl/UnitDesc.xml
- http://<ip-avrx>//YamahaRemoteControl/ctrl

att'd: geändertes modul, log-avrx-verbose=5
Hat zumindest zur Fehlerfindung für die gößeren AVRX-Modelle beigetragen!
Schöne Weihnachten, auf bald

Viele Grüße
Steffen
zotac nano mit proxmox und ganz viel zeug drauf

Markus Bloch

Zitat von: knopf_piano am 18 Dezember 2015, 22:48:30
right!
that's it ->   ;) VIELEN DANK Markus!
verzögerung ca. 5-10s, bis der Sender nach cmd-Abschicken wechselt. ich vermute, dass ist dem Datenaustausch und pl-scripting geschuldet.
Hab die regex vorher nochmal geprüft und verschiedenes beim $data-match probiert und schon an mir gezweifelt, da eigentlich an der Codestelle alles klar ist.
Dass der Hund dort beim letzten Hinweis von dir begraben ist konnt ich nicht wissen, da bist du tiefer im Modul drin als Autor.

Die Verzögerung ist normal. Da kann ich noch was optimieren. Aber erst nach der Weihnachtszeit. ;-)

Zitat von: knopf_piano am 18 Dezember 2015, 22:48:30
Noch Frage:
Wo bekomm ich die API-description her?


Bei YAMAHA im Support direkt danach Fragen (Stichwort: "YNC Specification"). Die geben die nur raus, wenn man explizit danach fragt.

URL: http://usa.yamaha.com/support/contact/audio_visual/

Zitat von: knopf_piano am 18 Dezember 2015, 22:48:30
ich hab in vorigen FWs mal durch Zufall das xml-scheme abrufen können, allerdings kommt da jetzt nix raus...
- http://<ip-avrx>/YamahaRemoteControl/UnitDesc.xml
- http://<ip-avrx>//YamahaRemoteControl/ctrl

att'd: geändertes modul, log-avrx-verbose=5
Hat zumindest zur Fehlerfindung für die gößeren AVRX-Modelle beigetragen!
Schöne Weihnachten, auf bald

Viele Grüße
Steffen

Ich habe die Änderungen in sauberer Form bei mir lokal schonmal übernommen. Werde ich nach Weihnachten einchecken, da ich jetzt unterwegs bin.

Viele Grüße und schöne Weihnachten.

Markus
Developer für Module: YAMAHA_AVR, YAMAHA_BD, FB_CALLMONITOR, FB_CALLLIST, PRESENCE, Pushsafer, LGTV_IP12, version

aktives Mitglied des FHEM e.V. (Technik)

Markus Bloch

Änderungen sind nun eingecheckt und stehen ab morgen offiziell via update zur Verfügung.

Viele Grüße und frohe Weihnachten

Markus
Developer für Module: YAMAHA_AVR, YAMAHA_BD, FB_CALLMONITOR, FB_CALLLIST, PRESENCE, Pushsafer, LGTV_IP12, version

aktives Mitglied des FHEM e.V. (Technik)

knopf_piano

#70
Hi Markus,
danke, die Weihnachts-Fresserei hat ein Ende...
log anbei mit aktueller version von dir.
wechsel der Sender über fhem-cmd-line:
teilweise ohne Reaktion,
Im Yamaha-Web-IF ist auch kein Senderwechsel mehr möglich. Nach Avrx on/off war wieder Wechsel möglich
:-\
Ich war im log (nicht diesem angehängten) bei einer cmd-queue von 51 angelangt. läuft hier der cmd-puffer zu voll und er AVrx- bekommts nicht los?

Noch eine Beobachtung:
Wenn ich in fhem Senderwechsel durchführe, dann im Yahama-Web-IF ein reload + klick auf main-zone durchführe läuft der Senderwechsel mit gestarteter Menü-Wechselei durch...

Grüße
Steffen
zotac nano mit proxmox und ganz viel zeug drauf

Markus Bloch

#71
Hallo Steffen,

in deinem Log kann ich nur erkennen, dass du direkt nach dem hochfahren sofort ein navigateListMenu absetzt, obwohl das Modul noch nicht vollständig die Initialisierung abgeschlossen hat. Der erste Versuch auf "Bayern" zu schalten, schlägt daher sofort fehl. Ich habe daher vor dem ersten Kommando zur Navigation nochmal einen kleinen Status-Request eingebaut um den aktuellen Eingang wirklich zu kennen.

Bei deinem 2. Versuch eine Navigation "Live" zu starten macht er, aber der Receiver gibt dem Modul nach durchgeführter Auswahl des ersten Ordners "Favoriten" wieder das Hauptmenü geben, wo dann wieder "Favoriten" vorhanden ist. Trotz erfolgter Auswahl scheint der Receiver also nicht weiterzuschalten. Nach erfolgter Auswahl wird erst nach 1 Sekunde der Menü-Status neu abgefragt. Der Receiver sagt dann, er ist nachwievor auf der 1. Menüebene (Wurzel) und bietet "Favoriten" als Ordner an. Das Modul wählt dann wieder Favoriten aus, und so geht das endlos.

Warum das so ist, weis ich nicht, da der Receiver hier irgendwie spinnt.

Viele Grüße

Markus
Developer für Module: YAMAHA_AVR, YAMAHA_BD, FB_CALLMONITOR, FB_CALLLIST, PRESENCE, Pushsafer, LGTV_IP12, version

aktives Mitglied des FHEM e.V. (Technik)

knopf_piano

Hi Markus,
geht mit der Version
$Id: 71_YAMAHA_AVR.pm 10267 2015-12-26 14:33:57Z markusbloch $
Das Umschalten dauert die berühmten ca. 10s.

Grazie mille!
Werd's weiter beobachten und berichten

Grüße
Steffen
zotac nano mit proxmox und ganz viel zeug drauf

MegaData

Hi hi !

Also ich kann berichten dass es mit einem RXV 2067 leider nicht funktioniert die Sender um zu stellen. Ich bekomme im Log folgenden Fehler ausgespuckt:

2016.01.02 22:18:27.413 3: YAMAHA_AVR (AV_Receiver) - Could not execute "navigateListMenu Lesezeichen\My__Favorites\Radio Dresden 103.5 FM": received return code 3
2016.01.02 22:18:27.815 3: YAMAHA_AVR (AV_Receiver) - Could not execute "navigateListMenu Lesezeichen/My__Favorites/Radio Dresden": received return code 3


Gibt es Ideen dazu ?

Markus Bloch

Bitte mal bei deinem AV_Receiver das Attribut verbose auf 5 setzen. Dann nochmal ein set AV_Receiver navigateListMenu Lesezeichen/My__Favorites/Radio Dresden ausführen und das Log bitte posten.

Vielen Dank

Gruß
Markus
Developer für Module: YAMAHA_AVR, YAMAHA_BD, FB_CALLMONITOR, FB_CALLLIST, PRESENCE, Pushsafer, LGTV_IP12, version

aktives Mitglied des FHEM e.V. (Technik)