itunes_artwork - Cover wird nicht aktualisiert

Begonnen von C0mmanda, 04 November 2016, 18:50:53

Vorheriges Thema - Nächstes Thema

C0mmanda

Mahlzeit,

bin gerade dabei mir mein TabletUI zusammen zu bauen und hänge jetzt beim itunes_artwork Widget.

Ich nutze Kodi und habe das Widget folgendermaßen eingebunden:

<div data-type="itunes_artwork"
    data-device="KUE_Kodi"
    data-get='["currentArtist","currentAlbum","currentTitle","currentArtist"]'
    data-opacity="0.9"
    data-size=200
    data-playstatus="playStatus"
    data-playstatus-stop="stopped"
    style="position:absolute;top:20px;left:10px;">
    </div>


Das funktioniert an sich auch wunderbar und zeigt mir das aktuelle Cover an.
Wenn ich nun jedoch zwischenzeitlich ein anderes Album abspiele dann aktualisiert das Widget das Cover leider nicht.
Erst ein Refresh ("F5") zeigt das neue Cover.

Auf "Stop" reagiert das Widget aktuell leider auch nicht.
(Readings von Kodi (Device: "KUE_Kodi") sind: "playStatus:stopped" "playStatus:playing").

Wo ist mein Fehler?

Vielen Dank.

grtz
CmdA

TWART016

Eventuell fehlt das event-on-change-reading oder event-on-update-reading beim device.


Gruß
TWART016

C0mmanda

Leider nein.

event-on-update-reading ist auf current.*
event-on-change-reading auf playStatus.

Kodi-Interval aktuell bei 30sec.

Werds trotzdem nochmal prüfen/testen.

Grtz
cmdA

C0mmanda

Moin,

ich vermute allmählich dass der Fehler im Widget liegt.

Nach etwas gut einer Stunde und allen möglichen Variationen mit event-on-change und event-on-update und keinerlei Fortschritt habe ich mir mal das widget selbst angesehen.

Dabei habe ich festgestellt dass die Attribute

    data-playstatus="playStatus"
    data-playstatus-stop="stopped"


bei der Definition des Widget im .html wirkungslos sind!
Erst nachdem ich im Widget selbst die Zeilen:

        // reading and reading-value that say "Player has stopped"
        elem.initData('get-playstatus'      ,'playStatus');
        elem.initData('get-playstatus-stop' ,'stopped');


auf die Kodi Readings angepasst habe funktioniert die Erkennung von "Stop".

So liegt es natürlich nahe dass itunes_artwork ebenfalls nicht mitbekommen das ein anderes Album abgespielt wird.
Wie ich das im Widget selbst anpassen kann erschliesst sich mir nur leider nicht da ich den Code nicht verstehe.
Das anpassen der Readings für "Stop" war Glück für mich.

Es wäre toll wenn jemand eine Idee hätte wie man itunes_artwork mit Kodi zusammenbringt.

Vielen Dank im voraus.

grtz
CmdA

Schlimbo

Hallo zusammen,
Bin gerade über diesen Thread gestoßen.

Laut nesges würde das beschalten der Attribute ja mal Implementiert:
Zitat von: nesges am 22 Mai 2015, 12:15:23
Mit dem letzten Update habe ich versucht das "Flackern" bei Pause->Play->Pause und einen Reload bei Stop->Play  unter einen Hut zu bekommen. Ich hoffe ich hab dabei nichts kaputt gemacht ;) Neu/Umbenannt sind die dafür benötigten Attribute:

data-playstatus="<reading>", Default: STATE. Reading in dem der Playstatus des Players zu finden ist.
data-playstatus-stop="<value>", Default: "stop". Wert für den Playstatus Stop.

Die Defaults passen für MPD, müssen für diesen Player daher nicht gesetzt werden.

Bei mir Funktioniert dies jedoch auch nicht.
Ich hatte auf dieses Problem auch schon mal hingewiesen:
Zitat von: Schlimbo am 21 November 2015, 00:23:14
Da ich das Widget nicht über ein "MPD" Device, sondern über "XBMC" mit Daten versorge,
funktioniert bei mir der Playstatus nicht, im Modul wird das Reading "STATE" auf "stop" ausgewertet:
22|        // reading and reading-value that say "Player has stopped"
23|       elem.data('get-playstatus',             elem.data('get-playstatus')         || 'STATE');
24|        elem.data('get-playstatus-stop',        elem.data('get-playstatus-stopp')   || 'stop');
25|        readings[elem.data('get-playstatus')] = true;

XBMC nutzt aber das Reading "playStatus" und dies wird bei stop auf "stopped" gesetzt.
Ändere ich den Code auf das XBMC Reading, funktioniert auch der Playstatus:
22|        // reading and reading-value that say "Player has stopped"
23|       elem.data('get-playstatus',             elem.data('get-playstatus')         || 'playStatus');
24|        elem.data('get-playstatus-stop',        elem.data('get-playstatus-stopp')   || 'stopped');
25|        readings[elem.data('get-playstatus')] = true;


der Versuch den Playstatus von außen zu versorgen hat leider nicht geklappt:
<div data-type="itunes_artwork"
    data-device="raspbmc"
                data-get='["currentArtist","currentAlbum","currentTitle"]'
date-get-playstatus="playStatus"
date-get-playstatus-stopp="stopped"
                data-size=400
data-stoppedimg="http://..........stop.png"
</li>


Nutzt das "itunes_artwork" Widget sonnst noch jemand mit XBMC? Und Funktioniert es bei euch ohne Probleme?

Auch die Standard-Images für stopped, notfound und loading bekomme ich nicht über das Update:
Zitat von: nesges am 22 Mai 2015, 12:15:23
Die Standard-Images werden bereits per Fhem-Update-Mechanismus ausgeliefert und stehen nach einem Update im Verzeichnis www/tablet/images zur Verfügung. Können aber auch nach wie vor mit den Attributen data-loadingimg, -stoppedimg, -notfoundimg üebrschrieben werden.
Die Images können unter Nesges Seite heruntergeladen werden und müssen dann im Pfad "www/images/" abgelegt werden (unter "www/tablet/images/" wurden sie bei mir nicht erkannt):
https://github.com/nesges/Widgets-for-fhem-tablet-ui/tree/master/www/tablet/images

Wird das itunes_artwork Widget momentan noch gepflegt und besteht die Chance, dass dies noch gefixt wird?

Gruß Schlimbo

tomster

Zitat von: Schlimbo am 20 Februar 2017, 14:14:57
Auch die Standard-Images für stopped, notfound und loading bekomme ich nicht über das Update:Die Images können unter Nesges Seite heruntergeladen werden und müssen dann im Pfad "www/images/" abgelegt werden (unter "www/tablet/images/" wurden sie bei mir nicht erkannt):
https://github.com/nesges/Widgets-for-fhem-tablet-ui/tree/master/www/tablet/images

Wird das itunes_artwork Widget momentan noch gepflegt und besteht die Chance, dass dies noch gefixt wird?

Gruß Schlimbo

Yep, schaut so aus als ob an dem Widget nicht mehr wirklich was gefixt wird. Letzter Stand ist von Dezember 2016.
Bei der damaligen Code-Übernahme von nesges scheinen einige Funktionen rausgeflogen zu sein. So funktioniert die Angabe von einem Device-Reading innerhalb des z.B. data-notfoundimg tags leider auch nicht mehr. Die zu verwendenen Readings zu get-play-status und get-playstatus-stop auf Readingnamen eines z.B. SB-Players zu setzen ist noch recht einfach (siehe oben), aber der aktuelle Code erwartet eine fixe URL zu einem (notfound-)Bild, nicht aber ein DeviceReading, welches diese URL bereitstellt.
@setstate
Hast Du noch Pläne daran etwas zu ändern oder nutzt das Widget eh keiner mehr?

setstate

Zitat... nutzt das Widget eh keiner mehr?

keine Ahnung, ich zumindest nicht

Hast Du noch Pläne daran etwas zu ändern

die Chancen dazu stehen eher schlecht. Aber Freiwillige vor ...

Cruiser79

Zitat von: setstate am 04 Oktober 2018, 21:36:43


keine Ahnung, ich zumindest nicht

Hast Du noch Pläne daran etwas zu ändern

die Chancen dazu stehen eher schlecht. Aber Freiwillige vor ...

Gibt es denn eine Alternative zu diesem Plugin, die gepflegter ist?

Gruß,
Tim
FHEM auf Raspberry Pi
HM-CFG-LAN mit HM-TC-IT-WM-W-EU, HM-CC-RT-DN, HM-WDS10-TH-O, HM-LC-SW1-FM, HM-LC-Bl1-FM
Signalduino mit Elro AB440, LOGILINK WS0002, IT CMR-1000