(Sorry, aber ich habe die textlichen Formatierungen aus der Commandref hier mal nur grob umgesetzt

)
98_rssFeedMit diesem Hilfs-Device kann ein RSS-Feed per URL abgerufen werden. Das Ergebnis wird zum einen in entsprechende Readings (s.u.) eingetragen, zum Anderen können die Schlagzeilen (Headlines) noch per GET oder per bereitgestellter Funktion als Ticker-Daten abgerufen werden. Die Daten des RSS-Feeds werden dabei jeweils im angegebenen Interval aktualisiert.
Definedefine <name> rssFeed <url> [interval]
url = URL zum RSS-Feed
interval = Aktualisierungsinterval in Sekunden
minimum Wert sind 600 Sekunden (10 Minuten)
maximum Wert sind 86400 Sekunden (24 Stunden)
Beispiel:
define myNews rssFeed http://www.gea.de/rss?cat=Region%20Reutlingen&main=true 3600 Damit wird stündlich der RSS-Feed des Reutlinger Generalanzeigers abgerufen.
Setset <name> updateAbrufen der Daten vom rssFeed und aktualisieren der Readings
Getget <name> tickerAbrufen der zuletzt gelesenen Schlagzeilen im gewünschten Format (s. Attribute)
AttributedisabledMit diesem Attribut kann das Device deaktiviert (1) werden bzw. auch wieder aktiviert (0 oder Attribut nicht vorhandn). Wenn das device deaktiviert ist, sind keine Readings mehr vorhanden, außer state. Außerdem werden die Daten nicht mehr zyklisch aktualisiert und get ticker liefert nur noch die Information zurück, dass der Ticker nicht mehr aktiv ist (s. dazu auch Attribut rfDisabledText).
rfDisabledTextDer hier eingetragenee Text wird beim Abruf der Schlagzeilen als einzige Zeile angezeigt, wenn der rssFeed disabled ist (s. Attribut disabled). Ist dieses Attribut nicht angegeben, so wird ein Standardtext angezeigt.
Beispiel:
attr <name> rfDisabledText Dieser Feed wurde deaktiviertrfTickerCharsHiermit kann eine Zeichenfolge festgelegt werden, die bei den Schlagzeilen für den get-Abruf vor und nach jeder Schlagzeile, wie bei einem Nachrichten-Ticker angefügt wird.
Beispiel:
attr <name> rfTickerChars +++ Ergebnis:
+++ Dies ist eine Beispiel-Schlagzeile +++ rfMaxLinesBestimmt, wieviele Schlagzeilen maximal aus dem Feed extrahiert werden sollen.
Sind weniger Nachrichten-Elemente im Feed enthalten, als über rfMaxLines angegeben, so werden eben nur so viele Schlagzeilen extrahiert, wie vorhanden sind.
Ist dieses Attribut nich angegeben, so wird dafür der Standard-Wert 10 angenommen.
Beispiel:
attr <name> rfMaxLines 15 rfEncodeHier kann eine Encoding-Methode (Bspw. utf8) angegeben werden. Die Texte die aus dem Feed extrahiert werden (title, descripton, ...) werden dann vor der Zuwesung an die Readings mittels encode (Perl core-Module Encode) enkodiert. Fehlt dieses Attribut, so findet keine umkodierung statt. Das kann u.U. notwendig sein, wenn in den zurückgelieferten Feed-Daten s.g. wide Characters enthalten sind. Dies kann evtl. dazu führen, das u.a. die Darstellung in FHEMWEB nicht mehr korrekt erfolgt. Dies betrifft auch das Ergebnis von rssFeedFunctions, bzw. get ticker.
rfReadingsÜber dieses Attribut kann angegeben werden, welche Daten aus dem RSS-Feed in Readings extrahiert werden sollen. Das Attribut ist als Komma getrennte Liste anzugeben.
Zur Auswahl stehen dabei folgende möglichen Werte:
title = Titelzeile
Dies erzeugt ein Reading für den Feed-Titel und für jedes Nachrichten-Element aus dem Feed.
description = Beschreibungstext Dies erzeugt ein Reading für die Feed-Beschreibung, bzw. für den Beschreibungstext jeden Nachrichten-Eelements.
pubDate = Zeitpunkt der Veröffentlichung des Feeds, bzw. der einzelnen Nachrichten-Elemente
link = Link zum Feed, bzw. zum einzelnen Nachrichten-Element auf der Homepage des Feeds.
buildDate = Zeitpunkt der letzten aktualisierung der Feed-Daten vom Feed-Betreiber.
imageURl = URL zum ggf. vorhandenen Bild eines Nachrichten-Elements, bzw. zum Nachrichten-Feed.
imageTitle = Titel eines ggf. zum Feed oder Nachrichten-Element vorhandenen Bildes.
Ist Dieses Attribut nicht vorhanden, so werden die Werte "title,description,pubDate" als Voreinstellung angenommen. Beim ersten Anlegen des Device wird das Attribut automatisch erste einmal mit genau dieser Voreinstellung belegt.
FunktionenrssFeedGetTickerDiese Funktion gibt die ermittelten und formatierten Schlagzeilen als Zeichenkette zurück. Die einzelnen Schlagzeilen sind dabei durch Zeilenvorschub getrenn. Dieses Ergebnis kann bspw. in einem InfoPanel für einen Ticker verwendet werden. Der Funktion muss dazu der Name eines rssFeed-Devices übergeben werden. Die Ausgabe ist praktisch die selbe wie das Ergebnis, das bei get ticker geliefert wird.
Syntax:
rssFeedGetTicker(<rssFeedDevice>)ReadingsJe nach Auswahl der Attribute werden verschiedene Readings bereitgestellt. Diese Readings sind teilweise mit einem Präfix versehen um sie bspw. dem Feed selbst oder einem Nachrichten-Element zuozuordnen.
Nxx_Diese Readings beziehen sich alle auf die einzelnen Nachrichten-Elemente, wobei xx den Index des jeweiligen Nachrichten-Elements angibt.
Beispiel für die Readings eines Nachrichten-Elements:
N00_title
N00_descripton
N00_pubDate f_Diese Readings beziehen sich alle auf den Nachrichten-Feed selbst.
Beispiel für die Readings des Nachrichten-Feeds
f_title
f_descripton
f_buildDate
preparedLinesDieses Reading gibt an, wie viele Schlagzeilen tatsächlich beim letzten update aus dem Nachrichten-Feed extrahiert wurden.
stateDieses Reading gibt, wenn das Device nicht disabled ist, den Zeitpunkt der letzten aktualisierung mittels update an, egal ob automatisch oder manuell ausgelöst. Ist das device disabled, steht genau das im Reading. Beim Anlegegen des Device mittels define findet das erste Aktualisieren der Daten verzögert statt. Während dieser Verzögerung steht der state auf "defined".
Edit: Gerade noch gesehen, dass ich vergessen habe zu erwähnen, dass das Perl-Modul XML::Simple benötigt wird.