オンデマンドルートとは何ですか?

このセクションのドキュメントでは、Google マップ モビリティのオンデマンド ルート サービスを使用してルートを作成して操作する方法について説明します。次の内容を理解していることを前提としています。

使用する TripService は、gRPCREST で使用できます。わかりやすくするため、フィールド参照は gRPC 規則に従います。

オンデマンド サービスの Fleet Engine では、ルートとは、ユーザーからのフード デリバリーまたは乗車リクエストのフルフィルメントをモデル化するルートの一種です。ルートには、ルートの進行に応じて Fleet Engine に報告するステータス(NEWENROUTE_TO_PICKUP など)があります。ルート ステータスは、車両に割り当てられた位置情報ウェイポイントに対応しています。フリート エンジンは、ルートの更新ごとにこれらの車両ウェイポイントを変更します。ルートや車両との関係について詳しくは、Fleet Engine の基本オンデマンド ルートをご覧ください。

ルートのライフサイクル

Fleet Engine で各ルートを追跡するには、まず Trip エンティティを作成する必要があります。詳しくは、gRPC または REST をご覧ください。

次の表に、システムで作成されたルートのエンドツーエンドのフロー例と、Fleet Engine でのライフサイクル ステージを示します。Fleet Engine が設定され、ルートに割り当てる車両があり、ドライバー アプリで位置情報の更新が有効になっていることを前提としています。Driver SDK: オンデマンド ルートをご覧ください。

1 予約リクエストを受信する。 Fleet Engine の乗車が開始する前に、予約システムはまず、アプリまたは他の予約システムを通じて、消費者から配車または配達のリクエストを受け取ります。システムは、CreateTrip を使用して、乗車地点などの必須フィールドを含むルート エンティティを作成します。この時点で、乗客や乗車場所などの他のフィールドを設定することも、車両が割り当てられるまで待機することもできます。単一の目的地へのルートを作成するをご覧ください。
2 車両を割り当てる。

システム内で直接車両をルートに割り当て、割り当てをフリート エンジンに報告するか、車両を検索サービスを使用して車両を検索し、ルート属性と車両属性の両方でフィルタして、ルートを完了するのに最適な車両を見つけることができます。検索範囲内のオンライン車両は、Driver SDK から提供される位置情報の更新を通じて、近接性を通知します。

SearchVehicle がルートに一致する車両を返すと、システムは UpdateTrip エンドポイントを呼び出して、NEW ルートに割り当てた車両 ID を報告します。

3 ルートを更新する。 ドライバーが乗車を承認し、乗車場所へのナビを開始すると、システムは乗車ステータスを NEW から ENROUTE_TO_PICKUP に更新します。ルート全体で車両の位置情報をポーリングします。これは、アプリからバックエンドへの直接接続を介して行うことも、Fleet Engine をポーリングして行うこともできます。Fleet Engine は、Driver SDK から車両の位置情報の更新ストリームを継続的に受信します。システムは、各ルートのマイルストーンを Fleet Engine に報告します。Fleet Engine は、それに応じて車両のウェイポイント リストを更新します。
4 お客様とジャーニーを共有する。 Fleet Engine は、Consumer SDK がルートの詳細と車両の位置情報を利用できるようにします。Consumer SDK はリスナーを使用してルートの更新を受け取ると、それをコンシューマ アプリに表示します。Fleet Engine は、予定時刻、残りの距離、ルート、車両の残りのルート上の地点を自動的に更新します。詳しくは、オンデマンド ルートのルートを共有するをご覧ください。
5 ルートを完了する。 車両がルートの目的地のウェイポイントに到達し、ドライバーがルートの完了を示すと、Fleet Engine で TripStatusCOMPLETE に設定されます。車両と同様に、ルート エンティティはステータスに関係なく 7 日間 Fleet Engine 内でアクティブなままになり、その後削除されます。

ルート シーケンス フロー

次の図は、このフローの詳細を示しています。

TripSequenceDiagram

次のステップ