Fleet Engine 是一項後端服務,可與您用來管理客戶運輸服務的系統整合。可與多種 API 和 SDK 搭配使用,強化地圖、路線和位置管理功能。
Fleet Engine 會根據實際車隊模擬車輛實體,並提供路線和狀態更新。系統會將車輛進度更新傳送至 Fleet Engine,Fleet Engine 則會使用 Driver SDK 提供的即時車輛位置和路線資訊,提供準確的車輛行程報表,包括預計到達時間、路況資訊和車輛可用性。
Fleet Engine 服務可與下列兩種 Mobility Service 搭配使用:
- 隨選行程:在這項服務中,Fleet Engine 會模擬行程的生命週期,從起點、停靠點到下車地點。在行程生命週期中,車輛會經過上車地點、中途路線控點和下車地點,以完成消費者預訂的行程。如要進一步瞭解隨選行程,請參閱隨選行程說明文件。
- 排定工作:在這項服務中,Fleet Engine 會模擬外送或服務工作的生命週期,司機必須在行程中的每個停靠點完成一或多項排定工作。工作可能包括遞送包裹或完成服務呼叫。如要進一步瞭解排定的工作,請參閱排定的工作說明文件。
Fleet Engine 的用途
使用 Fleet Engine 元件,您可以執行下列操作:
- 啟用消費者行程追蹤:針對隨選行程,您可以使用 Fleet Engine 的消費者體驗功能,並將 Consumer SDK 整合至行動或網頁應用程式。這樣一來,消費者就能使用同一個應用程式提出行程要求及追蹤行程。
- 為客戶提供即時包裹資訊:針對排定的工作,您可以使用 Fleet Engine 的消費者體驗功能,並將 JavaScript Consumer SDK 整合至網頁應用程式。這樣一來,您就能為消費者提供近乎即時的包裹狀態更新。SDK 提供內建篩選器和資料隱私權,因此消費者只會看到與訂單相關的資訊。
- 設計車隊營運商解決方案:針對排定的工作,使用 JavaScript 車隊追蹤程式庫,讓車隊營運商能更妥善協調及管理全天的車輛指派作業。
- 提升司機體驗:Driver SDK 是行動應用程式工具包,也是 Fleet Engine 的基本元件。這項功能會使用車輛的功能。有了這個 SDK,您的駕駛應用程式就能管理工作指派,並啟用駕駛導航和路線規劃功能。SDK 的核心功能是使用事件監聽器,在司機開始駕駛時,將位置更新資訊傳送至 Fleet Engine。此外,也會將車輛狀態信號傳送至 Fleet Engine。有了這個 SDK,司機就能使用單一應用程式管理指派作業,並像使用消費者版 Google 地圖一樣進行導航,不必切換至其他應用程式。
具體來說,您可以透過這些解決方案提供下列功能:
隨選行程
- 司機車輛的即時道路貼齊位置。
- 實際駕駛路線,包含即時路況資訊。
- 上車和下車地點的預計到達時間。
- 追蹤單一目的地、多個目的地和連續行程。
- 多位顧客共乘同一路線。
- 列出特定區域內的所有車輛,找出最符合乘車要求的車輛。
排定的任務
- 在地圖上顯示即時位置更新。
- 系統會根據路況等變化自動調整預計到達時間。
- 已完成的工作和待處理的停靠點,可讓您深入瞭解可能的問題。
- 停靠站數量和距離,讓顧客更有信心。
Fleet Engine 的運作方式
本節概略說明各項 Mobility 產品的 Fleet Engine 系統作業。
隨選行程
下圖顯示即時叫車行程的兩個重要部分:司機在一天開始時啟用位置資訊分享功能,將位置資訊分享給 Fleet Engine,以及使用 Fleet Engine 元件管理行程的簡化檢視畫面。如要詳細瞭解行程流程,請參閱「什麼是行程?」請參閱隨選行程說明文件。
排定的任務
下圖顯示單一司機一般運送工作日的矩陣,以及 Fleet Engine 系統如何使用 Fleet Tracking 程式庫處理他們的工作。
注意:系統可同時使用貨物追蹤或車隊追蹤功能。有了運送追蹤功能,Fleet Engine 就能篩選運送和司機資訊,讓客戶只看到與運送相關的資訊。
Fleet Engine 架構
本節提供不同 Fleet Engine 產品的系統架構。兩項服務都使用下列項目:
- 車輛:即時行程和排定工作都仰賴車輛,用來模擬貴商家在實際營運中使用的車輛。在 Fleet Engine 中,車輛實體會透過與 Driver SDK 整合的司機應用程式,接收相關聯實際車輛提供的位置資訊。Fleet Engine 車輛在兩項服務中大致上是平行實體,但有些許差異。請參閱「車輛簡介」,瞭解 Fleet Engine 中的車輛。
- Driver SDK:無論是隨選或排定的任務,Driver SDK 都是基本元件。Driver SDK 會與司機應用程式整合,並向 Fleet Engine 提供位置更新串流和路線資訊,Fleet Engine 會根據這些資訊回報行程的即時狀態,以及預計到達時間和路況資料等其他資訊。
- Consumer SDK:Consumer SDK 是隨選和排程任務的主要優勢,可用於向消費者回報行程、餐點外送或排程包裹運送的狀態。
隨選行程
如需車輛、行程和 SDK 的說明,請參閱隨選行程的相關說明文件:
排定的任務
如需運送車輛、工作和 SDK 的說明,請參閱排定工作的相關說明文件:
資源
隨選行程
| 車輛 | ||
|---|---|---|
| 服務 | REST:v1.providers.vehicles
gRPC:maps.fleetengine.v1.VehicleService |
|
| 資源名稱 | providers/{provider}/vehicles/{vehicle} |
|
| 行程 | ||
| 服務 | REST:v1.providers.trips
gRPC:maps.fleetengine.v1.TripService |
|
| 資源名稱 | providers/{provider}/trips/{trip} |
|
排定的任務
| 配送車輛 | ||
|---|---|---|
| 資源 | REST:providers.deliveryVehicles
gRPC:maps.delivery.v1 |
|
| 資源名稱 | providers/{provider}/deliveryVehicles/{vehicle} |
|
| 工作 | ||
| 服務 | REST:providers.tasks
gRPC:maps.fleetengine.delivery.v1.Task |
|
| 資源名稱 | providers/{provider}/tasks/{task} |
|
Fleet Engine 中的資源命名
在 Fleet Engine 中,就像所有 Google Cloud 雲端式服務一樣,資源具有稱為 names 的專屬 ID,以字串格式提供。資源名稱的一部分是資源 ID,您在發出建立要求時會提供這個 ID。不過,Fleet Engine 資源沒有 ID 欄位,而是僅限輸出的名稱欄位,其中包含資源 ID。
Fleet Engine 使用相對資源名稱。這些路徑由集合 ID 和資源 ID 組成,結構會指出其階層。
- 集合 ID:集合包含資源或其他集合。
隨選行程
三個集合:providers、vehicles 和 trips。
排定的任務
三個集合:providers、deliveryVehicles 和 tasks。
資源 ID:參考文件中的資源 ID 會以大括號標示在名稱欄位中。這些是您在發出建立要求時提供的 ID 變數。
隨選行程
{provider}:您的雲端專案 ID。每個專案建立一次。{vehicle}:車輛資源,用於建立每輛車,通常會重複用於相同的司機車輛組合。{trip}:行程資源,用於每趟行程,通常不會重複使用。
排定的任務
{provider}:您的雲端專案 ID。每個專案建立一次。{vehicle}:您的貨車資源,用於建立每輛車,通常會重複用於相同的司機車輛配對。{task}:工作資源,用於每項工作,通常不會重複使用。
詳情請參閱 Google Cloud API 說明文件中的「資源名稱」。
Fleet Engine 的 Google Cloud 記錄
Fleet Engine 提供基本的記錄服務,可讓您儲存 API 要求和回應酬載。您可以使用這些記錄檔偵錯整合、建立監控指標,以及分析流量模式。
詳情請參閱「Cloud Logging」。
如何使用 Fleet Engine
| 1 | 設定 Cloud 專案。 | 在這個步驟中,您會建立各種服務帳戶角色,並啟用相關 API。 Fleet Engine API 和 SDK 必須使用 JSON Web Token (JWT),並以 Cloud 控制台建立的服務帳戶簽署。請按照「建立 Fleet Engine 專案」中的操作說明進行。如要進一步瞭解這些角色,請參閱「服務帳戶角色」。 |
| 2 | 驗證設定 | 建立服務帳戶後,請確認設定已完成,且可以建立車輛。這個步驟可確保您已解決專案設定期間可能發生的常見授權問題。請按照「驗證設定」一節的指引操作。 |
| 3 | 建立第一個歷程 | 這包括建立單一車輛,並設定一組座標,代表隨選行程或排定工作中的停靠點。詳情請參閱隨選行程或排定工作的總覽內容。 |
| 4 | 測試整合結果 | Fleet Engine 服務和元件需要車隊的即時資料。為駕駛車隊設計、開發及部署應用程式可能需要一些時間。因此,建議您先使用模擬資料探索整合功能,再進行全面部署。詳情請參閱「設定 Fleet Engine」。 |
後續步驟
- 瞭解 Fleet Engine 車輛。
- 瞭解隨選行程或排定工作。
- 設定 Fleet Engine。