Amtrak Smart-Home-Integration, kostenlos und Open Source

Züge von Amtrak, VIA Rail und Brightline live: Verspätung, nächster Halt, Ankunft an deinem Bahnhof.
Amtrak-Züge live in Gladys, dazu die Züge von VIA Rail (Kanada) und Brightline (Florida): Verspätung, Status, nächster Halt, erwartete Ankunft an deinem Bahnhof und die nächsten Züge eines Bahnhofs.
Daten: Amtraker, eine freie Community-API von piemadd, die die öffentliche „Track Your Train“-Karte von Amtrak weitergibt, unter der Lizenz ODC-By 1.0. Inoffiziell: Diese Integration ist nicht mit Amtrak, VIA Rail, Brightline oder Amtraker verbunden. Kein Konto, kein Schlüssel.
Was du bekommst
- Ein Gerät pro verfolgtem Zug (eine Zugnummer und optional dein Bahnhof): Verspätung (Minuten), Status (geplant, unterwegs, im Bahnhof, angekommen, nicht unterwegs), nächster Halt mit Zeit und, mit Bahnhof, die erwartete Ankunft dort (Text) und die verbleibenden Minuten (Countdown).
- Ein Gerät pro verfolgtem Bahnhof: der nächste Zug dort, in wie vielen Minuten, und seine Verspätung.
- Ein Dashboard-Widget: ein Zug mit Verspätung, Ankunft an deinem Bahnhof und nächsten Halten, oder die Tafel eines Bahnhofs.
- Drei Szenen-Auslöser: Zug verspätet, Zug nähert sich meinem Bahnhof, Zug angekommen.
- Eine Szenen-Aktion, die einen Zug abfragt, mit einem fertigen Satz für Nachricht oder Lautsprecher.
Voraussetzungen
- Gladys Assistant 5.3.0 oder neuer.
- Internetzugang vom Gladys-Rechner (die Integration ruft
api.amtraker.comauf). - Eine Zugnummer, wie auf Fahrplänen und Tickets:
5für den California Zephyr,v15für den Ocean von VIA Rail (Präfixv),b5150für einen Brightline-Zug (Präfixb).
Installation
- Öffne in Gladys Integrationen → Von GitHub installieren.
- Füge
https://github.com/guim31/gladys-amtrakein und installiere. - Öffne den Tab Konfiguration der Integration.
Konfiguration
Einstellungen
- Sprache der Texte: Sprache der Funktionsnamen, der Zustände (Texte) und der Sätze für deine Szenen. Die Namen werden beim Anlegen des Geräts festgelegt.
- Aktualisierungsintervall: 1 oder 2 Minuten (Standard 2). Eine Anfrage pro verfolgter Zugnummer, oder eine Anfrage für alle Züge, sobald ein Bahnhof verfolgt wird.
Einen Zug oder Bahnhof verfolgen
- Optional: Bahnhof suchen mit einem Namen, einer Stadt oder einem Code listet die passenden
Bahnhöfe mit ihrem Code auf (
Chicago→Chicago Union [CHI]). - Zug verfolgen: die Zugnummer und optional der Code deines Bahnhofs. Mit Bahnhof bekommt das Gerät auch die erwartete Ankunft dort und einen Countdown, und der Auslöser „Zug nähert sich meinem Bahnhof“ funktioniert. Der Bahnhof muss auf der Strecke des Zugs liegen.
- Bahnhof verfolgen: der Code eines Bahnhofs, für seine nächsten Züge.
- Öffne den Tab Entdecken und lege das Gerät an.
Ein Zug, der gerade nicht fährt, kann hinzugefügt werden: Amtraker listet einen Zug kurz vor der Abfahrt, und das Gerät füllt sich bei seiner nächsten Fahrt. Derselbe Zug mit einem anderen Bahnhof ergibt ein weiteres Gerät.
Nicht mehr verfolgen, Status prüfen
Nicht mehr verfolgen nimmt den Namen aus Verfolgte Einträge anzeigen, die Zugnummer oder den Bahnhofscode. Das Gerät bleibt in Gladys, bis du es löschst. Verfolgte Einträge anzeigen listet Züge und Bahnhöfe, ihre Geräte, die letzte Abfrage bei Amtraker und den letzten Fehler.
Geräte
Eine Zugnummer fährt an mehreren Tagen gleichzeitig: Ein Fernzug wie der California Zephyr (zweieinhalb Tage) ist mit drei Fahrten zugleich auf der Strecke. Das Gerät folgt der Fahrt, die deinen Bahnhof zuerst erreicht; ohne Bahnhof der jüngsten auf der Strecke, sonst der nächsten, die abfährt, sonst der zuletzt angekommenen.
| Funktion | Typ | Bedeutung |
|---|---|---|
| Verspätung | Dauer, Minuten | Am nächsten Halt (bei der Abfahrt, wenn der Zug dort steht) |
| Status | Text | Geplant, unterwegs, im Bahnhof, angekommen, nicht unterwegs |
| Nächster Halt | Text | „Galesburg · 16:14“, in der Zeitzone des Bahnhofs |
| Ankunft an meinem Bahnhof | Text (mit Bahnhof) | „Emeryville · 17:29 (+32)“ oder die tatsächliche Ankunft |
| Minuten bis zu meinem Bahnhof | Dauer (mit Bahnhof) | Countdown, 0 sobald der Zug da oder vorbei ist |
| Nächster Zug in (Bahnhof) | Dauer, Minuten | 1440, wenn kein Zug angekündigt ist |
| Nächster Zug (Bahnhof) | Text | „5 California Zephyr → Emeryville · 14:00 (+5)“ |
| Verspätung des nächsten Zugs (Bhf.) | Dauer, Minuten | Abfahrtsverspätung, am Endbahnhof Ankunftsverspätung |
Ein verfrühter Zug zeigt eine Verspätung von 0. Die Zeiten sind die des Bahnhofs, wie im Fahrplan.
Dashboard-Widget
Amtrak-Zug: Wähle einen verfolgten Zug oder Bahnhof. Ein Zug zeigt Status und Verspätung,
seine Ankunft an deinem Bahnhof, dann seine nächsten Halte mit Zeiten (ausblendbar mit Nächste
Halte anzeigen); grün pünktlich, orange ab 5 Minuten Verspätung, rot ab 30. Ein Bahnhof zeigt
seine nächsten zehn Züge (→ Abfahrt, ← Ankunft am Endbahnhof). Die Bildunterschrift nennt die
Datenquelle oder eine Amtrak-Meldung zum Zug; der Button Daten: Amtraker öffnet amtraker.com.
Szenen-Auslöser
- Zug verspätet: Ein verfolgter Zug hat mindestens die gewählte Verspätung (5 bis 120 Minuten); einmal pro Fahrt und Schwelle. Variablen: Zugnummer, Strecke, Verspätung, nächster Halt und seine Zeit.
- Zug nähert sich meinem Bahnhof: Ein mit Bahnhof verfolgter Zug ist die gewählte Zahl an Minuten entfernt (5 bis 60); einmal pro Fahrt und Schwelle. Variablen: Zugnummer, Strecke, Bahnhof, Minuten, erwartete Ankunft, Verspätung.
- Zug angekommen: Ein verfolgter Zug hat deinen Bahnhof erreicht (ohne Bahnhof seinen Endbahnhof). Variablen: Zugnummer, Strecke, Bahnhof, Ankunftszeit, Verspätung.
Bei der ersten Abfrage nach einem Start wird nichts ausgelöst: Was schon da ist, ist keine Neuigkeit. Eine Schwelle, die lange vor einer Abfrage überschritten wurde (Amtraker ausgefallen), wird nicht verspätet gemeldet.
Szenen-Aktionen
Amtrak-Zug abfragen liefert für einen verfolgten Zug einen Satz („Zug 5 California Zephyr: 38 Min. Verspätung, nächster Halt Galesburg um 16:14. Ankunft in Emeryville um 17:29.“) und seine Werte: Nummer, Strecke, Status, Verspätung, nächster Halt und Zeit, Bahnhof, Minuten bis zum Bahnhof, Ankunftszeit. Bei einem verfolgten Bahnhof nennt der Satz die nächsten drei Züge, und die Werte beschreiben den nächsten.
Szenen-Beispiele
- Wenn Zug nähert sich meinem Bahnhof mit 20 Minuten auslöst, schick „Fahr jetzt los, Oma vom Bahnhof abholen“ an dein Handy.
- Jeden Morgen um 7 Uhr Amtrak-Zug abfragen für deinen Pendlerzug und den Satz über einen Lautsprecher sagen.
- Wenn Zug verspätet mit 30 Minuten auslöst, verschieb die Erinnerung ans Abendessen.
Daten, Aktualisierung und Kontingente
Amtraker ist ein freier Dienst, den eine einzelne Person betreibt, ohne veröffentlichtes
Kontingent: Die Integration fragt ihn höchstens einmal pro Minute ab, nur für angelegte Geräte,
mit einer kleinen Anfrage pro Zugnummer (oder einer Anfrage von etwa 110 kB für alle Züge, wenn
ein Bahnhof verfolgt wird), und gibt sich zu erkennen. Amtrak aktualisiert einen Zug alle paar
Minuten: Schneller abzufragen brächte nichts. Die Bahnhofsliste von Bahnhof suchen wird
höchstens einmal am Tag gelesen. Nur /data/watch.json wird geschrieben: die verfolgten Züge und
Bahnhöfe. Wenn Amtraker nicht antwortet, zeigt der Status der Integration das an, und die Geräte
behalten ihre letzten Werte.
Die Daten von Amtraker stehen unter der Lizenz ODC-By 1.0: Widget, Aktionen und diese Seite nennen sie.
Fehlerbehebung
- „Nicht unterwegs“: Amtraker listet den Zug gerade nicht (erst kurz vor der Abfahrt). Prüf die Nummer auf amtraker.com.
- „ist kein Bahnhofscode“: Nutze Bahnhof suchen; Codes haben 2 bis 6 Zeichen (
CHI,NYP). - „hält nicht in“: Der Bahnhof liegt nicht auf der Strecke dieses Zugs; die Meldung listet seine Halte.
- Die Integration wird als offline angezeigt: Amtraker ist nicht erreichbar; das erledigt sich von selbst.
- Protokolle: Die Integration protokolliert nur ihren Lebenszyklus;
LOG_LEVEL=debugfür jede Abfrage.
Grenzen
- Entwickelt, ohne mit diesen Zügen zu fahren: Rückmeldungen willkommen. Getestet gegen die echte Amtraker-API (Nachtzug, kurzer Zug, VIA Rail, Bahnhofstafel).
- Amtraker veröffentlicht keine Zugausfälle: Ein ausgefallener Zug verschwindet einfach („Nicht unterwegs“).
- Inoffizielle Daten, weitergegeben von der öffentlichen Karte von Amtrak: Diese Daten können verzögert sein oder eine Weile fehlen.
- Höchstens 10 Einträge. Die Funktionsnamen werden beim Anlegen des Geräts festgelegt.
Danksagung
- Daten: Amtraker von piemadd (piemadd/amtrak), ODC-By 1.0, nach der „Track Your Train“-Karte von Amtrak, VIA Rail und Brightline.
- Amtrak, VIA Rail und Brightline sind Marken ihrer Inhaber. Diese Integration ist nicht mit ihnen verbunden.
Konfigurationseinstellungen
Diese Einstellungen fragt Amtrak in seinem Konfigurationsbildschirm in Gladys ab.
| Einstellung | Typ | Pflichtfeld | Beschreibung |
|---|---|---|---|
| So funktioniert es | section | Nein | Verfolge einen Zug über seine Nummer (und deinen Bahnhof) oder einen Bahnhof mit den Aktionen unten und lege dann sein Gerät im Tab „Entdecken“ an. Daten von Amtraker (amtraker.com), einer freien Community-API: inoffiziell, nicht mit Amtrak verbunden. |
| Sprache der Texte | select | Nein | Sprache der Funktionsnamen, der Zustände und der Sätze für deine Szenen. Die Namen werden beim Anlegen des Geräts festgelegt. |
| Aktualisierungsintervall | select | Nein | Wie oft Amtraker für deine angelegten Geräte gelesen wird. Amtraker ist ein freier Dienst: bleib maßvoll. |
So installierst du Amtrak in Gladys
- Öffne in Gladys Integrationen: Amtrak erscheint im Katalog neben den nativen Integrationen, mit einem Community-Badge.
- Klicke auf Installieren. Gladys lädt das Docker-Image (
ghcr.io/guim31/gladys-amtrak:1.0.0) herunter, startet es in einer vom Kern isolierten Sandbox und erzeugt die Oberfläche der Integration (Geräte, Erkennung und Konfiguration). - Öffne den Bildschirm Konfiguration der Integration, fülle die Einstellungen aus und speichere.
- Du kannst sie auch direkt über die URL ihres Repositorys installieren: https://github.com/guim31/gladys-amtrak.
Amtrak benötigt Gladys >=5.3.0. Der Katalog in Gladys wird stündlich aktualisiert, eine neue Version ist also spätestens eine Stunde nach ihrer Veröffentlichung verfügbar.
Du nutzt Gladys noch nicht? Es ist kostenlos und Open Source: folge der Installationsanleitung, um loszulegen.
Über externe Integrationen
Amtrak ist eine externe Integration: eine Community-Integration, die als Docker-Container verpackt und auf GitHub veröffentlicht wird. Gladys installiert sie mit einem Klick und führt sie in einer vom Kern isolierten Sandbox aus. Sie wird von guim31 veröffentlicht und gepflegt, nicht vom Gladys-Kernteam.
- Alle Integrationen durchsuchen, native und aus der Community
- Deine eigene externe Integration bauen und veröffentlichen
- Quellcode auf GitHub — Quelle dieser Dokumentation