Integración domótica RSS & Atom, gratuita y de código abierto

Latest articles of your RSS and Atom feeds: a dashboard widget and "new article" scenes.
La documentación de esta integración la escribe su autor y, por ahora, solo está disponible en inglés.
Reads the RSS and Atom feeds of your choice and brings their latest articles into Gladys: a dashboard widget, a scene trigger when a new article is published, a scene action to read the latest one into a message. No account, no key. This integration is not affiliated with the publishers of the feeds you read: the articles, titles and summaries belong to them.
What you get
| Surface | Content |
|---|---|
| Widget | News feeds: the latest articles of one feed or of all of them, newest first, with the source, the age, the summary and the link (tap an article) |
| Scene trigger | New article in a feed, optionally only for one feed and only for a keyword of the title |
| Scene action | Latest article of a feed: title, link, summary, publication date and number of matching articles |
| Settings button | Test the feeds: reads every feed now and shows its format, its number of articles and its latest title, or the error |
Supported formats: RSS 2.0 (and 0.9x), RSS 1.0 (RDF) and Atom 1.0.
Setup
Type the addresses of your feeds in Feeds, separated by commas. Each
address may be followed by a custom name, after a space or a |:
https://www.lemonde.fr/rss/une.xml Le Monde, https://community.gladysassistant.com/latest.rss|Forum
- Only
http://andhttps://addresses are read; an entry that is not one is ignored and named (by its position) in the status and the test button. - Without a custom name, a feed is named after its own title (for example "Debian News"). A short custom name is easier to type in a scene.
- A feed protected by a password can be written
https://user:[email protected]/feed.xml: the password is sent to that server only, as anAuthorizationheader, and never appears in the logs. - A comma inside an address must be written
%2C.
Then press Test the feeds: each feed answers with its format, its number of articles and its latest title.
Articles kept per feed (10 by default) is the number of newest articles of each feed the widget and the scene action look at.
Reading pace
Each feed is read every 15 minutes by default (option Reading interval, 5 minutes at least), one feed after another. The integration is polite with the publishers:
- it asks "has it changed since?" (
ETag,Last-Modified): an unchanged feed costs the publisher an empty answer; - when a publisher asks for a longer delay (
Cache-Control: max-ageor the RSSttl), it is honoured, up to 6 hours; - a feed that fails is retried after the interval, then less and less often
(up to every 4 hours), and after the delay a busy server asks for
(
Retry-After).
Scenes
New article in a feed starts a scene when a feed publishes an article that was not there at its previous reading. Its two filters, both optional:
- Feed name: the custom name of the feed, or its title when it has none, exactly as the widget or the test button shows it.
- Keyword: list keywords in the Keywords option of the integration
(for example
Gladys, Zigbee, storm). A new article whose title contains one of them (case and accents ignored) carries the first one found, and a scene whose keyword filter is that word, spelled exactly as in the option, runs for it.
Variables: feed, keyword, title, link, summary (up to 1000
characters, without HTML) and published (ISO date, empty when the feed
gives none).
Good to know:
- After a start of the integration, the first reading of each feed only learns which articles are there: it starts no scene. The memory of the articles already seen is not written on disk.
- A feed that publishes many articles at once starts at most 5 scenes per reading (the 5 newest).
Latest article of a feed gives {{title}}, {{link}}, {{summary}},
{{published}}, {{feed}} and {{count}} for the newest article of a feed
(its name or its position in the list; empty for all feeds) whose title
contains a word (optional). count is 0 when nothing matches.
Widget
Add News feeds to a dashboard. Settings: the feed (its name, its
position in the list, or empty for all feeds) and the number of articles
shown (1 to 8). Tap an article for its summary and its link. An http://
link is opened in https://, the only kind the dashboard accepts.
Troubleshooting
- "not an RSS or Atom feed": the address is a web page, not its feed.
Look for the RSS icon or a
<link rel="alternate" type="application/rss+xml">in the page source. - "HTTP 403": some sites refuse automated readers; nothing to do on the Gladys side.
- "answer over 2 MB": the feed is too big to be read safely; publishers often offer a shorter one (per category).
- "more than 5 redirects" or "timeout": check the address in a browser.
- Logs: the integration's log level is set with the
LOG_LEVELvariable. The logs name the feeds by name and host only, never their full address (it may carry a token).
Privacy and security
The integration only contacts the addresses you typed, and the ones they redirect to (http and https only, 5 redirects at most). Each answer is abandoned past 2 MB or 15 seconds. Every text is stripped of its HTML and bounded (title 300 characters, summary 1000) before it reaches Gladys. Nothing is written on disk.
Parámetros de configuración
Estos son los parámetros que RSS & Atom te pide en su pantalla de configuración en Gladys.
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| Your news feeds in Gladys | section | No | Reads the RSS 2.0, RSS 1.0 and Atom feeds you list below (no account, no key): a "News" widget shows their latest articles, a scene can start when a new article is published (optionally only for a keyword in its title), and the "Latest article" scene action reads one into a message. Not affiliated with the publishers of the feeds: the articles belong to them. Feeds are read one after another, every 15 minutes by default, or less often when a publisher asks for it. |
| Feeds | string | No | Feed addresses (http or https), separated by commas. Optional custom name after a space or a | — e.g. "https://www.lemonde.fr/rss/une.xml Le Monde, https://community.gladysassistant.com/latest.rss\|Forum". The name is what scenes and widgets use to pick a feed. |
| Reading interval (minutes) | number | No | How often each feed is read. A feed that asks for a longer delay (Cache-Control, ttl) is read less often. |
| Articles kept per feed | number | No | The newest articles of each feed shown by the widget and the scene action; a new article is announced once it enters them. |
| Keywords for the "new article" trigger | string | No | Optional, separated by commas. A new article whose title contains one of them (case and accents ignored) carries it, so a scene can filter on it: type it in the trigger exactly as here. |
Cómo instalar RSS & Atom en Gladys
- En Gladys, abre Integraciones: RSS & Atom aparece en el catálogo junto a las integraciones nativas, con una insignia de comunidad.
- Haz clic en Instalar. Gladys descarga la imagen Docker (
ghcr.io/lm1lc3n7/gladys-rss:0.1.1), la ejecuta en un entorno aislado del núcleo y genera la interfaz de la integración (dispositivos, descubrimiento y configuración). - Abre la pantalla de Configuración de la integración, rellena los parámetros y guarda.
- También puedes instalarla directamente desde la URL de su repositorio: https://github.com/LM1LC3N7/gladys-rss.
RSS & Atom requiere Gladys >=5.1.0. El catálogo de Gladys se actualiza cada hora, así que una nueva versión está disponible como máximo una hora después de publicarse.
¿Todavía no usas Gladys? Es gratuito y de código abierto: sigue la guía de instalación para empezar.
Sobre las integraciones externas
RSS & Atom es una integración externa: una integración comunitaria empaquetada como contenedor Docker y publicada en GitHub. Gladys la instala con un clic y la ejecuta en un entorno aislado del núcleo. La publica y mantiene LM1LC3N7, no el equipo principal de Gladys.
- Explorar todas las integraciones externas
- Descubrir las integraciones nativas incluidas en Gladys
- Crear y publicar tu propia integración externa
- Código fuente en GitHub — fuente de esta documentación