このセクションのドキュメントでは、Google Maps Mobility オンデマンド トリップ サービスを使用してトリップを作成し、操作する方法について説明します。このドキュメントは、次の内容を理解していることを前提としています。
- Fleet Engine: Fleet Engine の実装の詳細、リクエスト メカニズム、セキュリティについて理解している必要があります。これについては、Fleet Engine サービスとはと、Fleet Engine を設定するのセキュリティに関するトピックをご覧ください。
- オンデマンド サービスの車両の基本。車両の概要をご覧ください。
- オンデマンド サービスのルートの基本。オンデマンド トリップをご覧ください。
使用する TripService は、gRPC と REST で使用できます。わかりやすくするため、フィールド参照は gRPC 規則に従います。
オンデマンド サービス用の Fleet Engine では、トリップは、消費者からのフード デリバリーや乗車リクエストのフルフィルメントをモデル化するジャーニーの一種です。トリップには、ジャーニーの進行状況に応じて Fleet Engine に報告するステータス(NEW、ENROUTE_TO_PICKUP など)があります。ルートのステータスは、車両に割り当てられた位置情報付きのウェイポイントに対応しています。Fleet Engine は、ルートの更新ごとにこれらの車両ウェイポイントを変更します。ルートと車両との関係について詳しくは、Fleet Engine の基本のオンデマンド ルートをご覧ください。
トリップのライフサイクル
Fleet Engine で各トリップを追跡するには、まず Trip エンティティを作成する必要があります。gRPC または REST をご覧ください。
次の表に、システムで作成されたルートのエンドツーエンド フローの例と、Fleet Engine でのライフサイクル ステージを示します。このガイドは、Fleet Engine が設定済みで、トリップに割り当てる車両があり、ドライバーアプリで位置情報の更新が有効になっていることを前提としています。Driver SDK: オンデマンド トリップをご覧ください。
| 1 | 予約リクエストを受け取る。 | Fleet Engine のトリップが開始される前に、予約システムはまず、アプリまたは他の予約システムを介して、ユーザーから配車または配達のリクエストを受け取ります。次に、システムは、CreateTrip を使用して、乗車場所などの必須フィールドを含むトリップ エンティティを作成します。この時点で、乗客や降車場所などの他のフィールドを設定することも、車両を割り当てるまで待つこともできます。単一目的地のルートを作成するをご覧ください。 |
| 2 | 車両を割り当てる。 | システム内で車両をルートに直接割り当てて、その割り当てを Fleet Engine に報告できます。また、車両検索サービスを使用して車両を検索し、ルートと車両の両方の属性でフィルタして、ルートを完了するのに最適な車両を見つけることもできます。検索半径内のオンライン車両は、Driver SDK が提供する位置情報の更新を通じて、その近接性を知らせます。
|
| 3 | ルートを更新する。 | ドライバーが乗車を受け入れ、乗車場所へのナビゲーションを開始すると、システムは乗車のステータスを NEW から ENROUTE_TO_PICKUP に更新します。アプリからバックエンドへの直接接続、または Fleet Engine のポーリング(Driver SDK から車両位置情報の更新を継続的に受信)により、移動中も車両の位置情報をポーリングし続けます。システムは、各ルートのマイルストーンを Fleet Engine に報告し、Fleet Engine はそれに応じて車両のウェイポイント リストを更新します。 |
| 4 | お客様にジャーニーを共有する。 | Fleet Engine は、トリップの詳細と車両の位置情報を Consumer SDK で利用できるようにします。Consumer SDK は、リスナーを使用してトリップの更新情報を受信し、ユーザーアプリに表示します。Fleet Engine は、到着予定時刻、残りの距離、ルート、残りの車両ウェイポイントを自動的に更新します。詳細については、オンデマンド トリップのルートを共有するをご覧ください。 |
| 5 | トリップを完了する。 | 車両がトリップの目的地のウェイポイントに到着し、ドライバーがトリップの成功を示したら、システムは Fleet Engine で TripStatus を COMPLETE に設定します。車両と同様に、トリップ エンティティはステータスに関係なく 7 日間 Fleet Engine 内でアクティブな状態を維持し、その後削除されます。 |
トリップのシーケンス フロー
次の図は、このフローの詳細を示しています。
