Integración domótica Amtrak, gratuita y de código abierto

Trenes Amtrak, VIA Rail y Brightline en tiempo real: retraso, próxima parada, llegada a su estación.
Los trenes de Amtrak en tiempo real en Gladys, y también los de VIA Rail (Canadá) y Brightline (Florida): retraso, estado, próxima parada, llegada prevista a su estación y los próximos trenes de una estación.
Datos: Amtraker, una API comunitaria gratuita de piemadd que redistribuye el mapa público «Track Your Train» de Amtrak, bajo la licencia ODC-By 1.0. No oficial: esta integración no tiene relación con Amtrak, VIA Rail, Brightline ni Amtraker. Sin cuenta ni clave.
Lo que obtiene
- Un dispositivo por tren seguido (un número de tren y, opcionalmente, su estación): retraso (minutos), estado (previsto, en ruta, en la estación, llegado, sin circulación), próxima parada con su hora y, con una estación, la llegada prevista allí (texto) y los minutos restantes (cuenta atrás).
- Un dispositivo por estación seguida: el próximo tren que para allí, en cuántos minutos, y su retraso.
- Un widget del panel: un tren con su retraso, su llegada a su estación y sus próximas paradas, o el panel de una estación.
- Tres disparadores de escena: tren con retraso, tren cerca de mi estación, tren llegado.
- Una acción de escena que lee un tren, con una frase lista para enviar por mensaje o altavoz.
Requisitos
- Gladys Assistant 5.3.0 o posterior.
- Acceso a Internet desde el equipo de Gladys (la integración llama a
api.amtraker.com). - Un número de tren, como en los horarios y billetes:
5para el California Zephyr,v15para el Ocean de VIA Rail (prefijov),b5150para un tren Brightline (prefijob).
Instalación
- En Gladys, abra Integraciones → Instalar desde GitHub.
- Pegue
https://github.com/guim31/gladys-amtrake instale. - Abra la pestaña Configuración de la integración.
Configuración
Ajustes
- Idioma de los textos: idioma de los nombres de funciones, de los estados (textos) y de las frases enviadas a sus escenas. Los nombres se fijan al crear el dispositivo.
- Intervalo de actualización: 1 o 2 minutos (2 por defecto). Una petición por número de tren seguido, o una sola petición para todos los trenes en cuanto se sigue una estación.
Seguir un tren o una estación
- Opcional: Buscar una estación con un nombre, una ciudad o un código lista las estaciones
que coinciden con su código (
Chicago→Chicago Union [CHI]). - Seguir un tren: el número del tren y, opcionalmente, el código de su estación. Con una estación, el dispositivo recibe también la llegada prevista allí y una cuenta atrás, y el disparador «Tren cerca de mi estación» funciona. La estación debe estar en el recorrido del tren.
- Seguir una estación: el código de una estación, para sus próximos trenes.
- Abra la pestaña Descubrir y cree el dispositivo.
Se puede añadir un tren que no circula en este momento: Amtraker lista un tren poco antes de su salida, y el dispositivo se completa en su próximo trayecto. El mismo tren con otra estación crea otro dispositivo.
Dejar de seguir, comprobar el estado
Dejar de seguir acepta el nombre que da Mostrar los seguimientos, el número del tren o el código de la estación. El dispositivo permanece en Gladys hasta que usted lo elimine. Mostrar los seguimientos lista los trenes y estaciones, sus dispositivos, la última lectura de Amtraker y su último error.
Dispositivos
Un mismo número de tren circula varios días a la vez: un tren de largo recorrido como el California Zephyr (dos días y medio) tiene tres trayectos en la línea al mismo tiempo. El dispositivo sigue el trayecto que llegará primero a su estación; sin estación, el más reciente en la línea, si no el próximo en salir, si no el último llegado.
| Función | Tipo | Significado |
|---|---|---|
| Retraso | duración, minutos | En la próxima parada (a la salida si el tren está allí) |
| Estado | texto | Previsto, en ruta, en la estación, llegado, sin circular |
| Próxima parada | texto | «Galesburg · 16:14», en la zona horaria de la estación |
| Llegada a mi estación | texto (con estación) | «Emeryville · 17:29 (+32)», o la hora real de llegada |
| Minutos hasta mi estación | duración (estación) | Cuenta atrás, 0 cuando el tren está allí o ya pasó |
| Próximo tren en (estación) | duración, minutos | 1440 cuando no se anuncia ningún tren |
| Próximo tren (estación) | texto | «5 California Zephyr → Emeryville · 14:00 (+5)» |
| Retraso del próximo tren (estación) | duración, minutos | Retraso de salida, o de llegada en un destino final |
Un tren adelantado muestra un retraso de 0. Las horas son las de la estación, como en los horarios.
Widget del panel
Tren Amtrak: elija un tren o una estación seguidos. Un tren muestra su estado y retraso, su
llegada a su estación y luego sus próximas paradas con sus horas (se ocultan con Mostrar las
próximas paradas); verde puntual, naranja desde 5 minutos de retraso, rojo desde 30. Una
estación muestra sus diez próximos trenes (→ salida, ← llegada al destino final). La leyenda
indica la fuente de los datos, o una alerta de Amtrak del tren; el botón Datos: Amtraker abre
amtraker.com.
Disparadores de escena
- Tren con retraso: un tren seguido acumula al menos los minutos de retraso elegidos (5 a 120); una vez por trayecto y umbral. Variables: número, línea, retraso, próxima parada y su hora.
- Tren cerca de mi estación: un tren seguido con una estación está a los minutos elegidos de ella (5 a 60); una vez por trayecto y umbral. Variables: número, línea, estación, minutos, llegada prevista, retraso.
- Tren llegado: un tren seguido ha llegado a su estación (a su destino final si se sigue sin estación). Variables: número, línea, estación, hora de llegada, retraso.
Nada se dispara en la primera lectura tras un arranque: lo que ya está no es novedad. Un umbral cruzado mucho antes de una lectura (Amtraker caído) no se anuncia con retraso.
Acciones de escena
Leer un tren Amtrak devuelve, para un tren seguido, una frase («Tren 5 California Zephyr: 38 min de retraso, próxima parada Galesburg a las 16:14. Llegada a Emeryville a las 17:29.») y sus valores: número, línea, estado, retraso, próxima parada y hora, estación, minutos hasta la estación, hora de llegada. En una estación seguida, la frase lista sus tres próximos trenes y los valores describen el próximo.
Ejemplos de escenas
- Cuando Tren cerca de mi estación se dispare a 20 minutos, envíe «Salga ahora a buscar a la abuela a la estación» a su teléfono.
- Cada mañana a las 7, Leer un tren Amtrak de su tren de cercanías y diga la frase en un altavoz.
- Cuando Tren con retraso se dispare a 30 minutos, aplace el recordatorio de la cena.
Datos, actualización y cuotas
Amtraker es un servicio gratuito mantenido por una sola persona, sin cuota publicada: la
integración lo lee como mucho una vez por minuto, solo para los dispositivos creados, con una
pequeña petición por número de tren (o una petición de unos 110 kB para todos los trenes cuando se
sigue una estación), y se identifica. Amtrak actualiza un tren cada pocos minutos: actualizar más
rápido no aportaría nada. La lista de estaciones de Buscar una estación se lee como mucho una
vez al día. Solo se escribe /data/watch.json: los trenes y estaciones seguidos. Cuando Amtraker
no responde, el estado de la integración lo indica y los dispositivos conservan sus últimos
valores.
Los datos de Amtraker están bajo la licencia ODC-By 1.0: el widget, las acciones y esta página la mencionan.
Solución de problemas
- «Sin circulación»: Amtraker no lista el tren en este momento (lo lista poco antes de su salida). Compruebe el número en amtraker.com.
- «no es un código de estación»: use Buscar una estación; los códigos tienen de 2 a 6
caracteres (
CHI,NYP). - «no para en»: la estación no está en el recorrido de este tren; el mensaje lista sus paradas.
- La integración aparece desconectada: no se puede contactar con Amtraker; vuelve sola.
- Registros: la integración solo registra su ciclo de vida;
LOG_LEVEL=debugpara cada lectura.
Límites
- Desarrollada sin viajar en estos trenes: sus comentarios son bienvenidos. Probada contra la API real de Amtraker (tren nocturno, tren corto, VIA Rail, panel de una estación).
- Amtraker no publica las cancelaciones: un tren cancelado simplemente desaparece («Sin circulación»).
- Datos no oficiales, redistribuidos desde el mapa público de Amtrak: pueden retrasarse o faltar durante un tiempo.
- 10 seguimientos como máximo. Los nombres de las funciones se fijan al crear el dispositivo.
Créditos
- Datos: Amtraker de piemadd (piemadd/amtrak), ODC-By 1.0, a partir del mapa «Track Your Train» de Amtrak, VIA Rail y Brightline.
- Amtrak, VIA Rail y Brightline son marcas de sus propietarios. Esta integración no tiene relación con ellos.
Parámetros de configuración
Estos son los parámetros que Amtrak te pide en su pantalla de configuración en Gladys.
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| Cómo funciona | section | No | Siga un tren por su número (y su estación), o una estación, con las acciones de abajo, y luego cree su dispositivo en la pestaña Descubrir. Datos de Amtraker (amtraker.com), una API comunitaria gratuita: no oficial, sin relación con Amtrak. |
| Idioma de los textos | select | No | Idioma de los nombres de funciones, de los estados y de las frases enviadas a sus escenas. Los nombres se fijan al crear el dispositivo. |
| Intervalo de actualización | select | No | Frecuencia de lectura de Amtraker para sus dispositivos creados. Amtraker es un servicio gratuito: sea razonable. |
Cómo instalar Amtrak en Gladys
- En Gladys, abre Integraciones: Amtrak 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/guim31/gladys-amtrak:1.0.0), 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/guim31/gladys-amtrak.
Amtrak requiere Gladys >=5.3.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
Amtrak 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 guim31, no el equipo principal de Gladys.
- Explorar todas las integraciones, nativas y de la comunidad
- Crear y publicar tu propia integración externa
- Código fuente en GitHub — fuente de esta documentación