Tisséo Smart-Home-Integration, kostenlos und Open Source

Nächste Tisséo-Abfahrten in Toulouse, Störungen und VélôToulouse-Räder, aus Open Data.
Der öffentliche Nahverkehr von Toulouse in Gladys: die nächsten Abfahrten an deinen Haltestellen (Metro, Tram, Téléo, Linéo, Busse), die Störungen ihrer Linien und die VélôToulouse-Räder deiner Stationen. Alles stammt aus Open Data: kein Konto, kein API-Schlüssel.
Daten: Tisséo und Toulouse Métropole, unter der Open Database License (ODbL), veröffentlicht auf transport.data.gouv.fr. Diese Integration ist ein Community-Projekt, ohne Verbindung zu Tisséo, Toulouse Métropole oder JCDecaux.
Was du bekommst
- Ein Gerät pro überwachter Haltestelle: für jede Linie und Richtung die Minuten bis zur nächsten Abfahrt und bis zur übernächsten; die drei nächsten Abfahrten als Text; die Verkehrsinfo ihrer Linien.
- Ein Gerät pro überwachter VélôToulouse-Station: verfügbare Räder, mechanische Räder, E-Bikes, freie Stellplätze.
- Widget „Nächste Abfahrten“: die Anzeigetafel einer Haltestelle, die in Echtzeit verfolgten Zeiten in Grün, die Fahrplanzeiten mit „≈“ markiert.
- Widget „VélôToulouse“: deine Stationen auf einen Blick.
- Szenen-Auslöser: „Tisséo-Störung“, „Räder werden an einer Station knapp“, „Räder wieder an einer Station“.
- Szenen-Aktionen: „Nächste Tisséo-Abfahrten lesen“ und „VélôToulouse-Station lesen“, mit einem fertigen Satz („Metro A Richtung Basso Cambo ab Jean Jaurès: in 3 und 7 Min.“).
Echtzeit oder Fahrplan? Tisséo veröffentlicht die Live-Position seiner Busse, der Tram und der Téléo-Kabinen: Deren Abfahrten werden korrigiert (Verspätungen, Ausfälle, ausgelassene Haltestellen). Die Metro ist nicht im Echtzeit-Feed: Für sie gelten die Zeiten des Fahrplans (ein Zug alle 1 bis 4 Minuten zur Hauptverkehrszeit), markiert mit „≈“ oder „laut Fahrplan“.
Voraussetzungen
- Gladys 5.1 oder neuer, mit Internetzugang.
- Um die Haltestellen rund um dein Zuhause aufzulisten: die Position
deines Hauses in Gladys (Einstellungen → Zuhause). Die Integration fragt
bei der Installation danach (
location): Gelesen werden nur die Koordinaten deiner Häuser, und nur, um die Haltestellen nach Entfernung zu sortieren. Ohne sie suchst du nach Namen. - Etwa 20 MB Speicherplatz unter
/data(das Fahrplanarchiv, einmal am Tag aktualisiert).
Installation
- Gehe in Gladys zu Integrationen → Von GitHub installieren und gib
https://github.com/guim31/gladys-tisseoein. - Öffne den Tab Konfiguration der Integration und wähle die Sprache der Texte (Französisch als Standard).
- Füge deine Haltestellen und Stationen mit den Aktionen desselben Bildschirms hinzu (siehe unten) und lege dann ihre Geräte im Tab Entdecken an.
Konfiguration
Einstellungen
- Sprache der Texte: Funktionsnamen, Verkehrsinfo, Sätze der Szenen. Die Namen werden beim Anlegen des Geräts festgelegt: Ändere zuerst die Sprache und lege dann die Geräte an.
- Aktualisierungsintervall: 30 Sekunden, 1 Minute (Standard), 2 oder 5 Minuten. Abfahrten und Radstationen folgen ihm beide.
- Echtzeit: standardmäßig an. Aus nutzt die Integration nur den Fahrplan und lädt den Echtzeit-Feed nicht mehr herunter.
Eine Haltestelle hinzufügen
- Haltestelle suchen: Gib einen Namen ein („jean jaures“ findet „Jean
Jaurès“, Akzente und Groß-/Kleinschreibung spielen keine Rolle) oder lass
ihn leer, um die 10 Haltestellen in der Nähe deines Hauses aufzulisten.
Jedes Ergebnis zeigt seine Linien, seine Entfernung und seine Kennung, zum
Beispiel
• Jean Jaurès [SA_1707] — A, B, L1, L9, L14, 15, 23 — 550 m. - Haltestelle hinzufügen: ihr Name oder ihre Kennung, wenn mehrere Haltestellen gleich heißen (es gibt drei „Jean Jaurès“ in der Metropole). Linien ist optional: „A, L1“ behält nur diese zwei Linien; leer behält alle Linien.
- Öffne den Tab Entdecken und lege das Gerät an.
Eine bereits überwachte Haltestelle erneut hinzuzufügen ändert ihre Linien: Gladys bietet dann im Tab „Entdecken“ an, das Gerät zu aktualisieren.
Die erste Suche lädt den Tisséo-Fahrplan (15 MB) herunter und liest ihn: bis zu einer Minute auf einem kleinen Rechner. Die Aktionen warten darauf.
Eine Radstation hinzufügen
- Radstation suchen: ein Name, oder leer für die 10 Stationen in der Nähe
deines Hauses. Jedes Ergebnis zeigt seine Nummer, zum Beispiel
• Poids de l'Huile [1] — 570 m. - Radstation hinzufügen: ihre Nummer oder ihr Name.
- Lege ihr Gerät im Tab Entdecken an.
Haltestelle oder Station entfernen, Feeds prüfen
- Haltestelle oder Station entfernen: ihr Name oder ihre Kennung. Das Gerät bleibt in Gladys, bis du es löschst.
- Überwachung anzeigen: die Haltestellen und Stationen, das Datum des Fahrplans, das Alter der Echtzeit- und Raddaten und den letzten Fehler, falls es einen gibt.
Höchstens 20 Haltestellen und 20 Stationen.
Geräte
Haltestelle
Für jede bediente Linie und Richtung (oder die gewählten Linien):
| Funktion | Typ | Wert |
|---|---|---|
| Metro A → Basso Cambo | Dauer (min) | Minuten bis zur nächsten Abfahrt |
| Metro A → Basso Cambo (danach) | Dauer (min) | Minuten bis zur übernächsten |
Dazu zwei Texte für die ganze Haltestelle:
- Nächste Abfahrten: die drei nächsten, z. B.
L1 → Gare Matabiau 2 min · A → Basso Cambo ≈4 min(„≈“ = Fahrplan). - Verkehrsinfo: die Titel der aktuellen Störungen auf ihren Linien, oder „Keine Störung“.
0 heißt, das Fahrzeug steht an der Haltestelle oder kommt gerade (weniger
als eine Minute); 1440 heißt keine Abfahrt in den nächsten 24 Stunden
(Nacht, eine Linie, die an dem Tag nicht fährt). Diese Werte haben keinen
Verlauf: Ein Countdown, der jede Minute neu gelesen wird, würde die Datenbank
umsonst füllen.
Radstation
| Funktion | Typ |
|---|---|
| Verfügbare Räder | Zähler |
| Mechanische Räder | Zähler |
| E-Bikes | Zähler |
| Freie Stellplätze | Zähler |
Diese behalten ihren Verlauf: Das Diagramm zeigt, wann deine Station sich leert.
Dashboard-Widgets
- Nächste Abfahrten: Wähle eine Haltestelle. Eine Zeile pro Linie und Richtung (höchstens zehn, die mit einer Abfahrt zuerst): „3 · 7 min“ in Grün bei Echtzeit, „≈ 3 · 7 min“ in Blau für den Fahrplan. Die Legende listet die Störungen ihrer Linien auf (⚠) oder erklärt das „≈“.
- VélôToulouse: Wähle deine Stationen (leer: alle, höchstens zehn). Eine einzelne Station zeigt vier Live-Kacheln; mehrere zeigen je eine Zeile („3 mech. · 2 E-Bike · 12 frei“), rot, wenn kein Rad mehr da ist, orange bei zwei oder weniger.
Szenen-Auslöser
- Tisséo-Störung: Eine neue Störung erscheint auf einer Linie deiner überwachten Haltestellen (der Linienfilter einer Haltestelle schränkt sie ein) oder im ganzen Netz (Streik, Schließungen). Filter: Umfang (eine verfolgte Linie, das ganze Netz, oder leer für beides) und Linie (so wie Tisséo sie schreibt: A, T1, L9, 15). Variablen: Linie, Titel, Details (reiner Text), Link zu tisseo.fr. Eine Störung wird einmal gemeldet; die schon vorhandenen, wenn du eine Haltestelle hinzufügst, nicht.
- Räder werden an einer Station knapp: Die Räder eines Typs (alle, mechanische, E-Bikes) an einer überwachten Station fallen auf die gewählte Zahl oder darunter (0, 1, 2, 3 oder 5). Löst einmal beim Überschreiten der Schwelle aus, nicht bei jeder Aktualisierung.
- Räder wieder an einer Station: Dieselben Räder steigen wieder über die gewählte Zahl.
Für „der nächste Bus kommt in weniger als 5 Minuten“ nimm den Gladys-Auslöser „Änderung von Gerätestatus“ auf dem Countdown der Haltestelle: Er vergleicht bereits Werte.
Szenen-Aktionen
- Nächste Tisséo-Abfahrten lesen: eine überwachte Haltestelle und optional eine Linie. Ausgaben: Satz (bis zu vier Linien und Richtungen, die nächsten zuerst), Haltestelle, Linie und Richtung der nächsten Abfahrt, Minuten Wartezeit, Minuten bis zur übernächsten, Echtzeit (1) oder Fahrplan (0), Anzahl der Linien mit Abfahrt.
- VélôToulouse-Station lesen: Ausgaben Satz, verfügbare Räder, mechanische, E-Bikes, freie Stellplätze, in Betrieb (1 oder 0).
Die Sätze folgen der Sprache der Konfiguration.
Szenenbeispiele
- Zeit zu gehen: Um 7:45 an Werktagen „Nächste Tisséo-Abfahrten lesen“ an
deiner Haltestelle für die Linie L1, dann
{{sentence}}per Telegram senden oder auf einem Lautsprecher ansagen. - Streikmorgen: Auslöser „Tisséo-Störung“ mit dem Umfang „das ganze Netz“, dann Titel und Link an dein Handy senden.
- Das letzte E-Bike: Auslöser „Räder werden an einer Station knapp“, deine Station, E-Bikes, höchstens 0: „Kein E-Bike mehr an der Station, nimm die Metro“ senden.
- Los, wenn der Bus kommt: Auslöser „Änderung von Gerätestatus“, Countdown deines Busses kleiner als 4, Bedingung „jemand zu Hause“ und vor 8:30: die Flurlampe blinken lassen.
Daten, Aktualisierung und Bandbreite
| Daten | Quelle | Wann |
|---|---|---|
| Fahrplan (GTFS, 15 MB) | Tisséo, über data.gouv.fr | höchstens einmal am Tag, in /data gespeichert |
| Echtzeit (GTFS-RT, 1,7 MB) | Tisséo (api.tisseo.fr) | bei jeder Aktualisierung, alle 15 Min., wenn nichts fährt |
| Radstationen (GBFS) | VélôToulouse (JCDecaux), über data.gouv.fr | Stationsliste einmal am Tag, Status bei jeder Aktualisierung |
Der Echtzeit-Feed ist der schwerste: etwa 100 MB pro Stunde bei einer Aktualisierung pro Minute während der Betriebszeiten. Nachts, ohne Abfahrt in den nächsten 90 Minuten an deinen Haltestellen, wird er nur alle 15 Minuten gelesen. Wähle bei einem begrenzten Datentarif 2 oder 5 Minuten oder schalte die Echtzeit aus. Die Open Data haben kein Kontingent; Tisséo erneuert den Echtzeit-Feed etwa alle 20 Sekunden.
Fehlerbehebung
- „Der Tisséo-Fahrplan wird noch geladen“: Der erste Download dauert eine Minute; versuch es noch einmal.
- „Mehrere Treffer“: Füge die Haltestelle über ihre Kennung (
SA_…) hinzu, die „Haltestelle suchen“ anzeigt. - Alle Zeiten einer Haltestelle sind mit ≈ markiert: Bei der Metro immer; bei einem Bus wird das Fahrzeug gerade nicht verfolgt oder der Echtzeit-Feed ist gestört („Überwachung anzeigen“ zeigt den letzten Fehler). Der Fahrplan funktioniert weiter.
- Eine Linie zeigt 1440: keine Abfahrt in den nächsten 24 Stunden (Nachtbetrieb, eine Linie, die an dem Tag nicht fährt, eine Umleitung).
- Kein Gerät im Tab „Entdecken“: Füge zuerst eine Haltestelle oder eine Station hinzu; für Haltestellen muss der Fahrplan heruntergeladen sein.
- Eine neue Linie an meiner Haltestelle: Gladys bietet an, das Gerät im Tab „Entdecken“ zu aktualisieren.
- Protokolle: In Gladys sagen die Protokolle der Integration, welcher Feed ausgefallen ist und warum.
Grenzen
- Nur Toulouse (das Tisséo-Netz und VélôToulouse).
- Die Metro gibt es nur laut Fahrplan: Tisséo veröffentlicht sie nicht in Echtzeit.
- Keine freien Plätze in den Park-and-Ride-Anlagen: Die Open Data von Toulouse Métropole geben nur ihre Kapazität an, nicht ihre Belegung.
- Die Störungen sind die, die Tisséo in seinem Echtzeit-Feed veröffentlicht; ihr Text ist auf Französisch.
- Die offizielle Tisséo-API (api.tisseo.fr, mit Schlüssel) wird nicht genutzt: Die offenen Feeds liefern dieselben Abfahrten ohne Konto.
- Ein Countdown ist auf das Aktualisierungsintervall genau.
- Entwickelt und getestet mit den echten Daten von Tisséo und VélôToulouse, ohne Gladys-Instanz: Rückmeldungen im Forum sind willkommen.
Danksagung
- Daten: Tisséo, Toulouse Métropole, VélôToulouse (JCDecaux), unter der ODbL.
- Inspiriert von der TCL-Integration von prohand (Lyon) und den GTFS-Integrationen von Home Assistant.
- Code unter der Apache-2.0-Lizenz.
Konfigurationseinstellungen
Diese Einstellungen fragt Tisséo in seinem Konfigurationsbildschirm in Gladys ab.
| Einstellung | Typ | Pflichtfeld | Beschreibung |
|---|---|---|---|
| So funktioniert es | section | Nein | Suche deine Haltestellen und VélôToulouse-Stationen mit den Aktionen unten (nach Namen oder rund um dein Zuhause), füge sie hinzu und lege dann ihre Geräte im Tab „Entdecken“ an. Alles stammt aus den Open Data von Tisséo und VélôToulouse: kein Konto, kein Schlüssel. |
| Sprache der Texte | select | Nein | Sprache der Funktionsnamen, der Verkehrsinfo und der Sätze für deine Szenen. Die Namen werden beim Anlegen eines Geräts festgelegt. |
| Aktualisierungsintervall | select | Nein | Wie oft Abfahrten und Radstationen aktualisiert werden. Der Echtzeit-Feed wiegt etwa 1,7 MB: einmal pro Minute sind das etwa 2,4 GB pro Tag während der Betriebszeiten. |
| Echtzeit | boolean | Nein | Den Fahrplan mit den live verfolgten Fahrzeugen (Busse, Tram, Téléo) korrigieren und die Störungen lesen. Aus: nur Fahrplan, kein Download jede Minute. |
So installierst du Tisséo in Gladys
- Öffne in Gladys Integrationen: Tisséo erscheint im Katalog neben den nativen Integrationen, mit einem Community-Badge.
- Klicke auf Installieren. Gladys lädt das Docker-Image (
ghcr.io/guim31/gladys-tisseo: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-tisseo.
Tisséo benötigt Gladys >=5.1.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
Tisséo 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 externen Integrationen durchsuchen
- Die nativen Integrationen entdecken, die in Gladys eingebaut sind
- Deine eigene externe Integration bauen und veröffentlichen
- Quellcode auf GitHub — Quelle dieser Dokumentation