Aller au contenu principal

Intégration domotique FreshRSS, gratuite et open source

Intégration FreshRSS pour Gladys Assistant

Votre lecteur FreshRSS dans Gladys : non lus, nouveaux articles, marquer comme lu.

Reliez Gladys à FreshRSS, l'agrégateur de flux auto-hébergé : suivez vos articles non lus par catégorie et par flux, réagissez à l'arrivée d'un nouvel article, marquez des articles comme lus depuis vos scènes et affichez les derniers articles non lus sur le tableau de bord. L'intégration suit l'état de votre lecteur (lu / non lu, le même dans toutes vos applications FreshRSS), pas les flux eux-mêmes.

Testée contre un vrai FreshRSS 1.30.4 (l'image Docker officielle) avec des flux de test. Vos retours sont les bienvenus sur le forum Gladys.

Prérequis​

  • Gladys Assistant 5.1 ou plus récent.
  • FreshRSS, chez vous ou sur un serveur public, joignable depuis la machine de Gladys.
  • L'API de FreshRSS autorisée : en administrateur, ouvrez Administration → Authentification et cochez Autoriser l'accès par API.
  • Un mot de passe d'API pour votre utilisateur : ouvrez Profil → Gestion de l'API, saisissez un mot de passe de l'API et enregistrez. Ce n'est pas votre mot de passe de connexion ; FreshRSS affiche l'adresse de l'API sur la même page.

Configuration​

  1. Ouvrez l'onglet Configuration de l'intégration.
  2. Dans Adresse de FreshRSS, saisissez l'adresse où vous ouvrez FreshRSS, par exemple 192.168.1.50:8080 (http si rien n'est précisé) ou https://rss.example.org. L'adresse d'API affichée par FreshRSS (…/api/greader.php) fonctionne aussi.
  3. Saisissez votre Nom d'utilisateur et le Mot de passe d'API.
  4. Facultatif : Lire FreshRSS toutes les (5 minutes par défaut), et Mots-clés à surveiller, séparés par des virgules, pour le filtre mot-clé du déclencheur « Nouvel article ».
  5. Cliquez sur Tester la connexion : elle affiche l'utilisateur, les articles non lus, les flux et les catégories.
  6. Ouvrez l'onglet Découverte et ajoutez les appareils voulus.

Appareils​

  • FreshRSS : Articles non lus (en tout) et FreshRSS joignable (0 tant que FreshRSS ne répond pas).
  • Un appareil par catégorie et un appareil par flux (proposés pour chacun) : leurs Articles non lus.

Les valeurs sont lues toutes les quelques minutes (le réglage ci-dessus) et juste après chaque modification faite depuis Gladys. Elles sont gardées dans l'historique, pour un graphique de votre pile de non lus. Pour agir au-delà d'un seuil, utilisez le déclencheur d'appareil de Gladys : Articles non lus supérieur à 50, par exemple.

Widget du tableau de bord​

FreshRSS : le nombre d'articles non lus, les six derniers articles non lus (flux, date, résumé, liens vers l'article et vers le flux dans FreshRSS lorsqu'ils sont en https), un bouton Actualiser qui relit FreshRSS tout de suite, et un bouton Marquer lu, avec confirmation, qui marque comme lus les articles affichés (eux seuls). Réglé sur un appareil catégorie ou flux, le widget n'affiche que celui-ci.

Déclencheurs de scène​

  • Nouvel article : un article non lu est arrivé dans FreshRSS. Filtres : une catégorie (un appareil catégorie), un flux (un appareil flux), un mot-clé (un des mots-clés de la configuration, trouvé dans le titre, sans tenir compte de la casse ni des accents). Informations transmises : titre, lien, flux, catégorie, auteur, mot-clé trouvé, date de publication et identifiant de l'article.

Rien ne se déclenche à la première lecture après l'installation de l'intégration, ni pour les articles déjà présents quand un flux est ajouté, ni pour les articles déjà lus dans une autre application. Au plus 10 articles sont annoncés par lecture.

Actions de scène​

  • Marquer des articles FreshRSS comme lus : tous les articles non lus d'une catégorie ou d'un flux ; choisissez l'appareil FreshRSS pour tout marquer. Résultats : articles marqués, catégorie ou flux.
  • Marquer des articles comme lus par identifiant : un ou plusieurs identifiants d'articles, typiquement l'identifiant de l'article du déclencheur « Nouvel article ». Résultat : articles marqués.
  • Lire les titres non lus de FreshRSS : les articles non lus les plus récents (1 à 10), de tout ou d'une catégorie ou d'un flux, éventuellement marqués comme lus ensuite. Résultats : nombre lu, articles non lus en tout, titres un par ligne (« Titre — Flux »), titre, lien et flux du plus récent.

Exemples de scènes​

  • Revue de presse du matin : à 7 h 30, Lire les titres non lus de FreshRSS (catégorie Actualités, 5 articles, puis les marquer comme lus), puis envoyer un message Telegram avec son résultat Titres (à insérer avec le sélecteur de variables).
  • Surveiller un sujet : avec Gladys dans les mots-clés, Nouvel article avec le mot-clé Gladys → envoyer un message avec le Titre et le Lien de l'article, puis Marquer des articles comme lus par identifiant avec son Identifiant de l'article.
  • Trop de lecture : déclencheur d'appareil Articles non lus de l'appareil FreshRSS supérieur à 100 → Marquer des articles FreshRSS comme lus sur la catégorie Sans catégorie.

Dépannage​

  • « L'API de FreshRSS est désactivée » : autorisez l'accès par l'API dans Administration → Authentification (un administrateur de FreshRSS doit le faire).
  • « FreshRSS a refusé le nom d'utilisateur ou le mot de passe d'API » : le mot de passe d'API n'est pas le mot de passe de connexion ; définissez-le à nouveau dans Profil → Gestion de l'API.
  • « FreshRSS ne répond pas » : vérifiez l'adresse et le port depuis la machine de Gladys. Derrière un proxy inverse, saisissez l'adresse complète, chemin compris.
  • « FreshRSS redirige vers une autre adresse » : FreshRSS répond sur une autre adresse, souvent la même en https:// : saisissez celle-ci.
  • « Cette adresse ne répond pas comme FreshRSS » : l'adresse mène à un autre service, ou à une page de connexion (un proxy d'authentification devant FreshRSS doit laisser passer /api/).
  • Pas d'événement « Nouvel article » : les articles arrivent quand FreshRSS actualise ses flux (sa tâche cron, CRON_MIN dans l'image Docker officielle ; chaque flux au plus une fois par heure par défaut), puis à la lecture suivante de l'intégration.
  • Plus de détails : réglez la variable LOG_LEVEL de l'intégration sur debug.

Limites​

  • FreshRSS ne connaît les catégories que par leur nom : renommer une catégorie dans FreshRSS propose un nouvel appareil, l'ancien reste sans valeurs.
  • L'API de FreshRSS n'indique pas les flux en erreur et ne permet pas de demander l'actualisation des flux : FreshRSS garde son propre rythme.
  • Les filtres des déclencheurs ne comparent que des valeurs exactes : le filtre mot-clé est un des mots-clés configurés, écrit comme dans la configuration (le premier trouvé dans le titre).
  • Les favoris, les étiquettes et les flux eux-mêmes ne se gèrent pas depuis Gladys. Au plus 100 catégories et 200 flux sont proposés comme appareils.
  • Les liens du widget n'ouvrent que des adresses https : un article ou un FreshRSS en http simple n'a pas de lien.
  • Sans lien avec FreshRSS.

Paramètres de configuration​

Voici les paramètres demandés par FreshRSS dans son écran de configuration dans Gladys.

ParamètreTypeObligatoireDescription
Connecter FreshRSSsectionNonDans FreshRSS, autorisez l'accès par l'API (Administration → Authentification), puis définissez un mot de passe d'API pour votre utilisateur (Profil → Gestion de l'API). Saisissez l'adresse de FreshRSS, votre nom d'utilisateur et ce mot de passe d'API : l'intégration lit vos non lus, annonce les nouveaux articles et marque des articles comme lus depuis vos scènes.
Adresse de FreshRSSstringOuiL'adresse où vous ouvrez FreshRSS, ou l'adresse d'API affichée dans Profil → Gestion de l'API.
Nom d'utilisateurstringOui
Mot de passe d'APIsecretOuiPas le mot de passe de connexion : FreshRSS → Profil → Gestion de l'API → Mot de passe de l'API.
Lire FreshRSS toutes lesselectNonLes nouveaux articles sont annoncés à la lecture suivante, une fois récupérés par FreshRSS (sa propre actualisation, par sa tâche cron).
Mots-clés à surveiller (facultatif)stringNonSéparés par des virgules. Un nouvel article dont le titre en contient un le porte, pour le filtre mot-clé du déclencheur.
Langue des noms et messagesselectNonLes noms des fonctionnalités sont fixés à l'ajout d'un appareil dans Gladys.

Comment installer FreshRSS dans Gladys​

  1. Dans Gladys, ouvrez Intégrations : FreshRSS apparaît dans le catalogue, aux côtés des intégrations natives, avec un badge communautaire.
  2. Cliquez sur Installer. Gladys télécharge l'image Docker (ghcr.io/guim31/gladys-freshrss:1.0.0), la démarre dans un bac à sable isolé du cœur, et génère l'interface de l'intégration (appareils, découverte et configuration).
  3. Ouvrez l'écran Configuration de l'intégration, remplissez les paramètres, puis enregistrez.
  4. Vous pouvez aussi l'installer directement depuis l'URL de son dépôt : https://github.com/guim31/gladys-freshrss.

FreshRSS nécessite Gladys >=5.1.0. Le catalogue dans Gladys se rafraîchit toutes les heures : une nouvelle version est donc disponible au plus tard une heure après sa sortie.

Vous n'utilisez pas encore Gladys ? C'est gratuit et open source : suivez le guide d'installation pour démarrer.

À propos des intégrations externes​

FreshRSS est une intégration externe : une intégration communautaire empaquetée dans un conteneur Docker et publiée sur GitHub, que Gladys installe en un clic et exécute dans un bac à sable isolé de son cœur. Elle est publiée et maintenue par guim31, et non par l'équipe cœur de Gladys.

Inscrivez-vous à la newsletter Gladys Assistant

Quelques emails par mois sur les nouveautés et l'actualité du projet. Envoyés par Pierre-Gilles Leymarie, le fondateur du projet. Désinscription possible à tout moment 🙂