Amazon Kindle als Offline-Feed-Reader für Tiny Tiny RSS

Dank Calibre gibt es bereits eine einfache Möglichkeit RSS-Feeds auf den Kindle zu pushen. Hat man bereits eine Tiny Tiny RSS – Installation, will man optimalerweise  nur genau die Nachrichten auf den Kindle laden, die in tt-rssn noch als ungelesen markiert sind.

Im Grunde ist das nicht besonders schwer. tt-rss bietet schon von sich aus für jeden Feed einen Link an, der wiederrum die Inhalte des ursprünglichen Feed beinhaltet:

Passt man die GET-Parameter an, kann auch man auf die ungelesenen Einträge filtern:

public.php?op=rss&view_mode=unread&id=1key=abcde123

Der Parameter id spiegelt dabei die interne ID des abonnierten Feeds wieder. Der Parameter key ist ein Zufallswert, der für jeden Feed und tt-rss-Benutzer eindeutig ist. Damit ist es möglich auch ohne die Login-Daten einzutragen, diesen speziellen Feeds zu abonnieren.

Calibre selbst wiederrum fasst Feeds in sogenannten Recipes zusammen, wobei ein Recipe in einem einzelnen Ebook mündet. Die Advanced-Einstellung offenbart den zugrundliegenden Python-Code:

class AdvancedUserRecipe1324229980(BasicNewsRecipe):
   title = u'ttrss'
   oldest_article = 100
   max_articles_per_feed = 100
   feeds = [(u'Name Feed 1', u'https://server/ttrss/public.php?op=rss&view-mode=unread&limit=200&id=22&key=29...'), \
            (u"Name Feed 2", u'https://server/ttrss/public.php?op=rss&view-mode=unread&limit=200&id=64&key=79...)}

Hat man viele Feeds ist es aber zum einen sehr mühsam in der tt-rss-Oberfläche sich diese Feeds zusammenzuklicken und händisch GET-die Parameter anzupassen. Aus diesem Grund habe ich das Skript ttrss2calibre geschrieben, was die Handarbeit abnimmt und direkt einen String generiert für den “feeds = ” Teil.

Der Kindle/calibre ist übrigens so schlau, nur die Feeds anzuzeigen, in denen tatsächlich es auch ungelesen Nachrichten gibt. Das Endergebnis sieht dann z.B. so aus:

Einen sauberen heise-Feed bekommt man übrigens mit dem rss-extender.