FHEM Forum

FHEM - Entwicklung => FHEM Development => Thema gestartet von: pizmus am 19 Oktober 2019, 13:58:47

Titel: Icon für SolarEdgeAPI Modul
Beitrag von: pizmus am 19 Oktober 2019, 13:58:47
Ich bin seit kurzem Maintainer von SolarEdgeAPI, siehe https://forum.fhem.de/index.php/topic,89939.60.html#lastPost . Ich habe das Modul übernommen, im FHEM SVN submitted und bin nun dabei es aufzuräumen. So weit so gut.

Das Modul basiert auf http Requests an das SolarEdge Monitoring Portal, siehe https://www.solaredge.com/sites/default/files/se_monitoring_api.pdf . Das API ist frei verfügbar und gut dokumentiert. Allerdings bin ich im API Handbuch auf folgende Bedingung gestoßen:

"Display requirements:When displaying information from the API, place the SolarEdge logo where it is clear to the user that the information source is SolarEdge's monitoring system."

Technisch sollte es kein Problem sein, das Logo, dass man auf der SolarEdge Homepage herunterladen kann, mit "attr ... icon ..." darzustellen. Allerdings ist mir nicht klar wo ich das Image hinlegen sollte. Was ist zu beachten? Gab es schon etwas ähnliches?

Gruss,
pizmus
Titel: Antw:Icon für SolarEdgeAPI Modul
Beitrag von: zap am 20 Oktober 2019, 08:34:24
Musst Du das Icon unbedingt lokal ablegen oder kannst Du es auch einfach per src=http.... vom SolarEdge Portal referenzieren?

Es gibt mehrere Module, die HTML Code und auch Bilder in der Detailseite ihrer Devices haben (zB der Sonos, wenn ich mich recht erinnere).

Eine Möglichkeit ist, bei der Initialisierung des Moduls eine DetailFunction zu definieren:

$hash->{FW_detailFn} = "MyDetailFunc";


Die MyDetailFunc gibt HTML Code zurück, der dann auf der Detailseite eines Device dargestellt wird. Ein Beispiel findest Du in meinem FULLY Modul.




Titel: Antw:Icon für SolarEdgeAPI Modul
Beitrag von: rudolfkoenig am 20 Oktober 2019, 12:36:32
Da das Bild laut pdf auf das Homepage der Firma verlinken muss, finde ich die Online-Variante auch besser.
Will nicht anfangen Firmen-Logos in der FHEM-Repository abzulegen, ganz zu schweigen von den Lizenzfragen.
Titel: Antw:Icon für SolarEdgeAPI Modul
Beitrag von: pizmus am 20 Oktober 2019, 21:49:47
Okay, dann ist die Richtung erst einmal klar.

Mein erster Versuch mit der Funktion FULLY_Detail als Vorbild war leider nicht erfolgreich. Es ist mir nicht gelungen, das Logo auf der Detail-Seite des Moduls darzustellen. Es wurde nur ein Text dargestellt, nicht das Logo. Ich kenne mich mit HTML nicht aus.

@zap, kannst Du helfen?
Das Logo auf der Homepage liegt hier:
https://www.solaredge.com/sites/default/files/SolarEdge_logo_header_new.png
Ausserdem gibt es im Download-Bereich eine rar-Datei mit Logos:
https://www.solaredge.com/sites/default/files/SolarEdge-Logo.rar
Ein Click auf das Logo soll auf www.solaredge.com verlinken.

Viele Grüße,
pizmus
Titel: Antw:Icon für SolarEdgeAPI Modul
Beitrag von: rudolfkoenig am 21 Oktober 2019, 16:20:22
Folgendes ist zwar nicht schoen, erfuellt aber die Anforderungen:
sub
SolarEdgeAPI_Initialize($)
{
[...]
  $hash->{FW_detailFn} = "SolarEdgeAPI_fhemwebFn";
}

sub
SolarEdgeAPI_fhemwebFn($$$)
{
  my ($FW_wname, $d, $room) = @_;
  return << 'EOF'
<br>
<a href="https://www.solaredge.com">
<img src="https://www.solaredge.com/sites/default/files/SolarEdge_logo_header_new.png">
</a>
<br>
EOF
}
Titel: Antw:Icon für SolarEdgeAPI Modul
Beitrag von: pizmus am 21 Oktober 2019, 21:36:13
Ich habe das so übernommen. Vielen Dank für die schnelle Hilfe!