rereadicons für einen einzelnen Ordner?

Begonnen von Reinerlein, 13 Februar 2014, 23:09:03

Vorheriges Thema - Nächstes Thema

Reinerlein

Hallo,

ich habe das Problem, dass ich für das Sonos-Modul Cover-Bilder aktualisieren muss.
Das tue ich momentan mittels "rereadicons".

Nun versuche ich das etwas zu optimieren, und würde dafür gerne nur den Ordner neu einlesen lassen, in dem sich auch etwas verändert hat.

Man könnte vielleicht einfach einen weiteren (optionalen) Parameter bei "FW_readIcons()" einbauen, der vorher den entsprechenden Hash-Eintrag entfernt, oder eine neue sub bauen.
Oder gäbe es eine andere Möglichkeit, die ich noch nicht gefunden habe?

Danke schon mal...

Grüße
Reiner

UliM

Hi, dafür gibt's nen Mechanismus im iTunes-Modul, schau's Dir dort mal an.
Wenn ich das richtig verstehe, wird das image abwechselnd als image1 und image2 benannt und angezeigt, damit zB longpoll den Wechsel mitbekommt.
Gruß, Uli
RPi4/Raspbian, CUL V3 (ca. 30 HomeMatic-devices), LAN (HarmonyHub, alexa etc.).  Fördermitglied des FHEM e.V.

rudolfkoenig

@Reinerlein: Ich weiss nicht, wozu du rereadicons brauchst, aber ich vermute, du brauchst es gar nicht.


justme1968

ich habe im itunes modul recht lange probiert bist ich etwas hatte das meistens funktioniert. inzwischen habe ich noch ein paar ideen mehr. bin aber noch nicht dazu gekommen das fertig umzusetzen. das eigentliche problem besteht aus zwei teilen:

- beim aller erstem mal nach dem das modul definiert ist kenn fhem das image file für das cover noch nicht. da hilf ein einfaches rereadicons aus dem modul heraus

- es reicht nicht einfach das file auszutauschen und den browser per longpoll zu informieren. da funkt dann der browser cache dazwischen. der file name muss sich auch ändern. (je nach browser ist das aber sehr unterschiedlich)

die kombination der beiden punkte hatte dann zum ergebnis zwei files zu verwenden und diese alternierend zu verwenden.

wenn du die album cover schon als url irgendwohin hast müsste es möglich sein direkt darauf zu verweisen.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Reinerlein

Hallo zusammen,

ich habe für die Darstellung einfach ein Image-Weblink erstellt. Da sich aber der Typ des Coverbilds (und damit auch die Endung) ab und zu ändert, habe ich im Weblink von der FhemWeb-Fähigkeit gebrauch gemacht, dass man Bilder-URIs ohne Endung angeben kann, und das Modul FhemWeb dann das richtige ausliefert.
Dazu muss FhemWeb aber über die aktuelle Lage auf dem Datenträger informiert sein, was zur Folge hat, dass ich bislang nach jedem Coverbildablegen im Dateisystem ein "rereadicons" ausführe...

Eine Lösung mit alternierenden Dateinamen finde ich allgemein nicht so glücklich, und an der Stelle auch übertrieben, da es zunächst nicht um eine Live-Aktualisierung auf der Oberfläche ging.

Alternativ könnte ich auch den Weblink jedesmal anpassen, das wäre sicherlich der "korrektere" Weg, da dort dann auch die richtige, aktuell gültige URL drinstehen würde. Das hätte ich persönlich jetzt aber für einen noch größeren Ausführungsaufwand innerhalb von Fhem gehalten, oder?

Grüße
Reiner

rudolfkoenig

ZitatBilder-URIs ohne Endung angeben kann

Das habe ich nie beabsichtigt, und habe leider geschlafen, waehrend es in FHEMWEB eingebaut wurde. /fhem/icon/XXX war nicht dazu gedacht, XXX.png zu laden, sondern das aktuelle Status-Bild fuer ein FHEM-Geraet mit dem Namen XXX. XXX.png laedt man mit /fhem/images/default/XXX.png

FHEMWEB liefert gerne alles aus, was unter www steht, wenn man den Pfad komplett spezifiziert.  rereadicons ist nur fuer Status->Icon mapping erforderlich.