name: ttc-status description: Comprehensive TTC (Toronto Transit Commission) toolkit with real-time service alerts, arrival predictions, and live vehicle tracking. Use when the user asks about TTC transit status, delays, service disruptions, route arrivals, vehicle locations, or wants to check if a specific route (bus, streetcar, or subway line) is running normally. Supports queries like "What's the status of bus 68?", "Is line 2 running?", "Any delays on streetcar 509?", "When's the next bus 68?", "Where is my bus right now?", or "Check TTC service alerts".
TTC Status & Tracking Toolkit
Comprehensive real-time Toronto Transit Commission (TTC) information including service alerts, arrival predictions, and live vehicle tracking.
Overview
This skill provides three powerful tools for TTC transit:
- Service Alerts - Check disruptions, delays, and service changes
- Real-Time Arrivals - See when the next vehicle arrives at a stop or route
- Live Vehicle Tracking - Track vehicle positions in real-time
All data comes from TTC's official GTFS-Realtime feed.
๐จ Service Alerts
Check service disruptions, delays, planned work, and accessibility issues.
Basic Usage
Check system-wide alerts:
python3 scripts/check_ttc_status.py --all
Check specific route:
python3 scripts/check_ttc_status.py 68 # Bus 68
python3 scripts/check_ttc_status.py 2 # Line 2 subway
python3 scripts/check_ttc_status.py 509 # Streetcar 509
Advanced Filtering
Show only alerts happening RIGHT NOW:
python3 scripts/check_ttc_status.py 1 --now
Filters out scheduled future work and past alerts.
Filter by transit mode:
python3 scripts/check_ttc_status.py --all --mode subway # Subway only
python3 scripts/check_ttc_status.py --all --mode bus # Buses only
python3 scripts/check_ttc_status.py --all --mode streetcar # Streetcars only
python3 scripts/check_ttc_status.py --all --mode accessibility # Elevators/escalators
Example Queries
| User Says | Command |
|---|---|
| "What's the status of bus 68?" | check_ttc_status.py 68 |
| "Is line 2 running normally?" | check_ttc_status.py 2 |
| "Any subway delays right now?" | check_ttc_status.py --mode subway --now |
| "Check accessibility issues" | check_ttc_status.py --all --mode accessibility |
| "Any streetcar alerts?" | check_ttc_status.py --mode streetcar |
Output
Shows for each alert:
- ๐จ Alert description
- Effect type (NO_SERVICE, SIGNIFICANT_DELAYS, MODIFIED_SERVICE, etc.)
- Active period (when it's happening, in EST)
- Additional details from description
๐ Real-Time Arrivals
Get live arrival predictions for TTC stops or routes.
Usage
By stop ID:
python3 scripts/check_ttc_arrivals.py --stop 12345
By route (next vehicles on route):
python3 scripts/check_ttc_arrivals.py --route 68
python3 scripts/check_ttc_arrivals.py --route 2
python3 scripts/check_ttc_arrivals.py --route 509
Limit results:
python3 scripts/check_ttc_arrivals.py --route 68 --limit 3 # Show next 3 arrivals
Example Queries
| User Says | Command |
|---|---|
| "When's the next bus 68?" | check_ttc_arrivals.py --route 68 |
| "How long until the streetcar 509?" | check_ttc_arrivals.py --route 509 |
| "Next arrivals at stop 12345" | check_ttc_arrivals.py --stop 12345 |
Output
Shows:
- Route or stop being tracked
- Arrival times in human-readable format ("2 minutes", "Arriving now")
- Up to N vehicles (default: 5, configurable with
--limit)
Note: Stop IDs can be found on TTC stop signs or via TTC's trip planner.
๐ Live Vehicle Tracking
Track real-time vehicle positions with GPS coordinates.
Usage
Track specific route:
python3 scripts/check_ttc_vehicles.py 68 # Track bus 68
python3 scripts/check_ttc_vehicles.py 2 # Track Line 2 trains
python3 scripts/check_ttc_vehicles.py 509 # Track streetcar 509
Show all vehicles system-wide:
python3 scripts/check_ttc_vehicles.py --all
Limit results:
python3 scripts/check_ttc_vehicles.py 68 --limit 5 # Show 5 vehicles max
Example Queries
| User Says | Command |
|---|---|
| "Where is bus 68 right now?" | check_ttc_vehicles.py 68 |
| "Show all Line 2 trains" | check_ttc_vehicles.py 2 |
| "Track streetcar 509" | check_ttc_vehicles.py 509 |
Output
Shows for each vehicle:
- ๐ Vehicle ID and route
- GPS coordinates (latitude, longitude)
- Google Maps link to exact location
- Status (IN_TRANSIT_TO, STOPPED_AT, etc.)
- Current stop (if at a stop)
- Speed in km/h (if available)
Route Types Reference
Buses
Use route number: 7, 36, 68, 192, etc.
Subway Lines
1- Line 1 (Yonge-University)2- Line 2 (Bloor-Danforth)3- Line 3 (Scarborough RT)4- Line 4 (Sheppard)
Streetcars
Use route number: 501, 504, 505, 506, 509, 510, 511, 512
Common Workflows
Morning Commute Check
# 1. Check if your route has alerts
python3 scripts/check_ttc_status.py 68 --now
# 2. If clear, check when next bus arrives
python3 scripts/check_ttc_arrivals.py --route 68 --limit 3
# 3. Track the bus approaching your stop
python3 scripts/check_ttc_vehicles.py 68
System-Wide Status Check
# Check all current alerts
python3 scripts/check_ttc_status.py --all --now
# See subway-specific issues
python3 scripts/check_ttc_status.py --mode subway --now
Route Investigation
# User reports: "Is Line 2 delayed?"
python3 scripts/check_ttc_status.py 2 --now # Check alerts
python3 scripts/check_ttc_vehicles.py 2 --limit 10 # See train positions
Dependencies
All scripts require gtfs-realtime-bindings to parse TTC's GTFS-Realtime protobuf feed.
Install:
pip install gtfs-realtime-bindings
The scripts will display a clear error message with installation instructions if the library is missing.
Data Source
- API Base: https://gtfsrt.ttc.ca
- Format: GTFS-Realtime (Protocol Buffers)
- Refresh: Real-time (live data)
- Provider: Toronto Transit Commission (TTC) via Toronto Open Data
Endpoints Used
/alerts/all- Service alerts (all modes)/alerts/{subway,bus,streetcar,accessibility}- Mode-specific alerts/trips/update- Real-time arrival predictions/vehicles/position- Live vehicle GPS positions
Resources
scripts/
- check_ttc_status.py - Service alerts with mode filtering and active/scheduled distinction
- check_ttc_arrivals.py - Real-time arrival predictions by stop or route
- check_ttc_vehicles.py - Live vehicle tracking with GPS coordinates