GTFS Realtime 總覽

即時為使用者提供最新的大眾運輸資料,可大幅提升大眾運輸服務體驗。只要提供目前抵達和離開時間的最新資訊,使用者就能順利規劃行程。因此,萬一不幸遇到誤點,乘客也能從容應對,知道自己不用太早出門。

GTFS Realtime 是一種動態饋給規格,方便大眾運輸公司為應用程式開發人員提供自家車隊的即時更新資訊。GTFS Realtime 是 GTFS (一般大眾運輸動態饋給規格) 的擴充內容,也是大眾運輸時間表及相關地理資訊的公開資料格式。GTFS Realtime 在設計時的核心理念是便於實作、良好的 GTFS 互通性,以及重視乘客資訊。

這個規格是與最初大眾運輸工具即時路況更新合作夥伴運輸公司、多位大眾運輸開發人員和 Google 攜手合作制定而成,並依據阿帕契 2.0 授權發布。

什麼是 Google 地圖的大眾運輸工具即時路況更新?

大眾運輸工具即時路況更新這項服務為 Google 地圖和 Google 地圖行動版使用者提供大眾運輸工具的即時路況更新資訊,包括轉運站的即時出發和抵達時間,以及服務快訊。

大眾運輸工具即時路況更新提供兩種即時更新資訊:即時出發時間和服務快訊。大眾運輸合作夥伴會在他們的動態饋給中提供這些更新資訊。我們建立了 GTFS Realtime 動態饋給格式,來補充靜態大眾運輸時間表廣為使用的 GTFS 格式的不足之處。您的動態饋給必須在我們可定期擷取的位置提供。系統會立即將動態饋給更新視為大眾運輸工具即時路況更新資訊來處理。

如何開始?

  1. 繼續閱讀下方總覽。
  2. 決定您要提供的動態饋給實體
  3. 查看動態饋給範例
  4. 根據參考資料自行建立動態饋給。
  5. 發布動態饋給。

GTFS Realtime 動態饋給總覽

這個規格目前支援下列類型的資訊:

  • 行程更新 - 誤點、取消、路線異動
  • 服務快訊 - 停靠站遷移;影響車站、路線或整個交通網的突發事件
  • 車輛位置 - 車輛相關資訊,包括位置和壅塞程度

動態饋給可以 (但不一定要) 合併不同類型的實體,且會透過 HTTP 提供,並經常更新。檔案本身是一般二進位檔案,因此任何類型的網路伺服器都能代管及提供檔案 (也可採用其他傳輸通訊協定)。或者,也可以使用網頁應用程式伺服器,這類伺服器會傳回動態饋給,以回應有效的 HTTP GET 要求。動態饋給的更新/擷取頻率和確切方法沒有任何限制。

您可以運用 GTFS Realtime 呈現車隊的「實際」狀態,因此動態饋給必須定期更新 (建議在每次自動車輛定位系統提供新資料時更新)。

進一步瞭解動態饋給實體

資料格式

GTFS Realtime 資料交換格式是以通訊協定緩衝區為基礎

通訊協定緩衝區是用於序列化結構化資料的語言和平台中立機制 (類似 XML,但更小、更快,也更簡單)。資料結構是在 gtfs-realtime.proto 檔案中定義,這個檔案隨後會用於產生原始碼,以便透過各種語言 (例如 Java、C++ 或 Python) 在各種資料串流中輕鬆地讀取及寫入結構化資料。

進一步瞭解通訊協定緩衝區

資料結構

元素階層及元素類型定義是在 gtfs-realtime.proto 檔案中指定。

系統會使用您選擇的程式設計語言,將這個文字檔案用於產生必要的程式庫。這些程式庫會提供所需的類別和函式,以產生有效的 GTFS Realtime 動態饋給。程式庫不僅可簡化動態饋給的製作程序,還能確保製作出有效的動態饋給。

進一步瞭解資料結構

取得協助

如要一同討論 GTFS Realtime 並提議修改及補充規格內容,請加入 GTFS Realtime 郵寄清單

Google 地圖和大眾運輸工具即時路況更新

大眾運輸工具即時路況更新是 Google 地圖中的一項功能,可為使用者提供即時大眾運輸資訊。如果您任職的大眾運輸公司想向 Google 地圖提供即時更新資訊,請前往 Google 大眾運輸合作夥伴頁面