Project

General

Profile

Widgets

Seit Version 0.5.0 gibt es die Widgets.
Es gibt interne und externe Widgets. Die internen Widgets funktionieren out-of-the-box, da Sie innerhalb des VDR implementiert sind.
Externe Widgets sind externe Programme/Scripte, hier sind (teilweise) manuelle Anpassungen notwendig damit diese laufen.

Die Widgets werden auf der rechten Seite des Hauptmenüs angezeigt. In der Höhe ist nur begrenzt Platz, deshalb kann es passieren das nicht alle Widgets angezeigt werden können (da einfach kein Platz mehr ist). Hier muss du selbst entscheiden welches Widget auf welcher Position angezeigt werden soll.

Interne Widgets

DVB Geräte

Zeigt die DVB Geräte an, wer dieses benutzt und auf welchem Kanel das Gerät gerade ist. Über die Plugineinstellungen kann konfiguriert werden ob "unbekannte" und/oder "nicht benutzte" Geräte ausgeblendet werden sollen.
Leider ist es derzeit nicht möglich 100% herauszufinden wer das Gerät derzeit nutzt. Z.B. gibt es Fälle wie den EPG-Scan welcher nicht erkannt wird.

Aktive Timer

Zeit die aktiven Timer an. Über die Plugineinstellungen kann die max. Anzahl der Timer konfiguriert werden welche angezeigt wird. Weiter kann konfiguriert werden, dass das Widget ausgeblendet wird, wenn keine aktiven Timer existieren.

Timer Konflikte

Zeigt die Anzahl der Timer-Konflikte an. Es ist in Plannung das auch die eigentlichen Konflikte und nicht nur die Anzahl angezeigt wird. Es kann wieder konfiguriert werden das das Widget ausgeblendet wird wenn keine Timer Konflikte vorhanden sind.

Letzte Aufnahmen

Zeigt die letzten Aufnahmen nach Datum sortiert an. Über die Plugineinstellungen kann die max. Anzahl der Elemente konfiguriert werden.

Externe Widgets

Externe Scripte werden (wenn nicht anders konfiguriert) in das LIBDIR installiert. Normalerweise sollte dies folgender Pfad sein.

/usr/local/lib/vdr/skinflatplus/widgets/

Alle Ausgaben der Scripte sind unter

/tmp/skinflatplus/widgets/

Wetter-Widget

Zeigt das aktuelle Wetter und eine Vorschau an. Die Ansicht der Vorschau kann konfiguriert werden. Es existiert eine Lang- und eine Kurzansicht. Bei der langen Ansicht gibt es pro Tag eine Zeile bei der kurzen Ansicht wird alles in einer Zeile dargestellt. Die Anzahl der Tage kann über die Plugineinstellungen konfiguriert werden, wobei max. 7 Tage möglich sind.
Dieses Widget benötigt php5, unter Ubuntu ist z.B. das Paket php5-cli notwendig.
Im Ordner existiert eine update_weather.config.sample diese muss nach update_weather.config kopiert werden.

cd /usr/local/lib/vdr/skinflatplus/widgets/weather
cp update_weather.config.sample update_weather.config

Anschließend muss Latitude und Longitude vom Ort ermittelt werden, dafür gibt es das kleine php-Script GetLatLangFromCity.php. Einfach ausführen und den Ort eingeben.
php5 GetLatLangFromCity.php

Die Werte von Latitude und Longitude in die update_weather.config schreiben und auch den Wert "LocationSkin" entsprechend anpassen. "LocationSkin" wird später im Skin als Ort angezeigt.

Das Script (update_weather.php) wird nicht vom Skin aufgerufen. Dies muss extern über cron oder ähnliches erfolgen. Z.B. über folgende Zeile in der /etc/crontab

# update weather every 12 hours
7 */12   * * *   root    php5 /usr/local/lib/vdr/skinflatplus/widgets/weather/update_weather.php

Für die Wetterdaten wird forecast.io verwendet. Hier sind 1000 Abfragen am Tag frei, jede weiteren 10.000 Abfragen kosten dann $1. Pro Aufruf von update_weather.php werden 2 Abfragen getätigt. Bitte registriere dich kostenlos bei forecast.io und erstelle einen eigenen Api-Key. Diesen dann einfach in die update_weather.config eintragen. Hierfür ist nur eine E-Mail Adresse + Passwort notwendig. Wenn das Script nicht mehr funktioniert sind höchstwahrscheinlich die 1000 Abfragen/Tag überschritten.

Für die Kanalinfo gibt es eine kleine Version des Wetter Widgets. hier wird Heute + Morgen angezeigt.

System-Informationen

Mit diesem Widget können verschiedenene Systeminformationen angezeigt werden.
Dieses Script wird bei jedem Aufruf des Menü erneut ausgeführt. Daher sollte das Script kurz und schnell sein.
Es wird das Script "system_information" ausgeführt. Dieses muss manuell verlinkt werden! Für Ubuntu z.B. wie folgt

cd /usr/local/lib/vdr/skinflatplus/widgets/system_information
ln -s system_information.ubuntu system_information

In dem Script ist auch die Konfiguration enthalten. Hier kann festgelegt werden welche Informationen ausgegeben werden sollen und in welcher Position diese sein sollen.

Temperaturen

Mit diesem Widget können die Temperaturen des System angezeigt werden.
Dieses Script wird bei jedem Aufruf des Menü erneut ausgeführt. Daher sollte das Script kurz und schnell sein.
Es wird das Script "temperatures" ausgeführt. Dieses muss manuell verlinkt werden! Z.B. wie folgt

cd /usr/local/lib/vdr/skinflatplus/widgets/temperatures
ln -s temperatures.default temperatures

Das default Script nutzt lm-sensors um die Temeperaturen zu ermitteln. Du musst sicherstellen das du lm-sensors installiert und auch richtig konfiguriert hast. Weiterhin wird die GPU-Temperatur mittels nvidia-settings ermittelt. Dies funktioniert natürlich nur mit Nvidia Grafikkarten.

System-Updatestatus

Mit diesem Widget können die Updates des System angezeigt werden. Dabei wird die Anzahl der Updates und der Sicherheitsupdates angezeigt.
Das Script (system_update_status) wird nicht vom Skin aufgerufen. Dies muss extern über cron oder ähnliches erfolgen. Z.B. über folgende Zeile in der /etc/crontab

# update system_updates every 12 hours
7 */12   * * *   root    /usr/local/lib/vdr/skinflatplus/widgets/system_updatestatus/system_updatestatus

Benutzerdefinierte Ausgabe

Mit diesem Widget können eigene Befehle ausgeführt und angezeigt werden.
Wenn es in dem Ordner das Script "command" gibt, wird dieses bei jedem Aufruf des Menüs ausgeführt.
Das Script command muss 2 Dateien bereitstellen: title & output
Jeweils für den Titel und der eigentlichen Ausgabe.
Es sollte darauf geachtet werden das nicht zu viele Zeilen ausgeben werden da immer die gesamte Datei angezeigt wird. Die Zeilen werden rechts einfach abgeschnitten und nicht umgebrochen!

Screenshots