注文、乗車、その他のサービスを提供する際に、ユーザーがそのルートを追跡できるようにすることで、オンデマンド ルートのカスタマー エクスペリエンスをカスタマイズします。
Consumer SDK とは
Consumer SDK は、オンデマンド ルートの Fleet Engine の一部です。トリップデータをモデル化し、Fleet Engine でトリップを追跡するインターフェースを提供します。また、消費者ユーザーとルートを共有するための豊富な地図ベースのディスプレイを作成するために使用するクラスも提供します。このようなコンシューマ エクスペリエンスを作成するには、Consumer SDK をアプリに統合し、Fleet Engine 内で適切なロール プロファイルを設定します。
Consumer SDK のプラットフォーム固有の API を使用すると、アプリにジャーニーをネイティブに共有する機能を構築できます。Consumer SDK は、次のプラットフォームで使用できます。
コンシューマ SDK を使用する理由
Consumer SDK をオンデマンド ルート アプリケーションに統合すると、ほぼリアルタイムの位置情報の更新と道路スナップされた位置情報により、包括的なユーザー エクスペリエンスを提供できます。乗客は、地図上に重ねて表示される車両のルートや、乗車中または配送中の位置を把握できる進行状況の詳細を確認できます。
コンシューマ SDK でできること
Driver SDK と Fleet Engine の情報を使用して、次の機能など、カスタマイズされたユーザー エクスペリエンスを作成できます。
ブランドのニーズに合わせて地図の UI をカスタマイズできます。
車両がルートを走行するにつれて、車両の現在地が定期的に更新されます。
乗車地と降車地の到着予定時刻(ETA)を表示します。
残りの距離を表示します。
ルートのリアルタイムの交通情報を表示します。
Consumer SDK の仕組み
概要として、Consumer SDK は次のメカニズムに依存しています。
- 適切な Fleet Engine ロールを付与して、認証済みアプリがお客様の注文に関連付けられたルートを追跡できるようにする。
- バックエンド システムから提供される、コンシューマとルートの関連付け。
TripModel
クラスとJourneySharingSession
クラスの SDK: ルートデータをモデル化し、コンシューマ アプリでルート セッションを共有します。
Consumer SDK には、交通状況、地図マーカー、到着予定時刻、ルートデータなどの詳細情報を備えた豊富なアプリ エクスペリエンスを作成できるように、他のインターフェースとクラスも用意されています。
この表は、ユーザー アプリに続くルートのフローを示しています。
1 | コンシューマ アプリがルートをリクエストする | バックエンド サーバーはオンデマンド ルート リクエストを受け取り、次の処理を行います。
|
2 | ドライバーが乗車を承認する | ドライバー アプリがルート ID とルート情報を取得し、ドライバーがルートを承認します。 |
3 | 消費者向けアプリがルートの追跡へのアクセスをリクエストする | コンシューマ アプリはバックエンドからルート ID を取得し、ルートの追跡を開始するようリクエストします。 |
4 | ドライバーが乗車を開始する | ドライバーがドライバーアプリを使用してルートの開始を通知すると、アプリは Driver SDK を介してバックエンド サーバーに通知します。たとえば、ドライバーがレストランを出発する直前や、集荷場所に向かう直前などです。 |
5 | Fleet Engine がルート情報を送信する | Fleet Engine は、ルートの追跡を開始し、その進行状況をコンシューマ アプリと共有します。 |
6 | ユーザー アプリにルート情報が表示される | コンシューマ アプリは、コンシューマに通知し、ルート情報を表示し始め、ルートの進行に応じて更新します。 |
7 | ルートのキャンセルまたは完了 | ドライバーがルートをキャンセルまたは完了すると、ドライバー アプリは位置情報の追跡を無効にし、バックエンド サーバーは、ルートをキャンセルまたは完了としてマークするよう Fleet Engine に指示します。 |
8 | ユーザー アプリでルートの追跡が停止する | 乗車がキャンセルまたは完了として表示されます。 |
9 | 次のルートでもこのプロセスが繰り返されます | 新しいルート作成プロセスが繰り返されます。 |
Consumer SDK の使用方法
プラットフォームを選択して、コンシューマ向けアプリでルートの追跡を開始する方法を確認してください。
Android
1 | Android で Consumer SDK を設定する | アプリでオンデマンド ルートを追跡するには、Consumer SDK を設定します。詳細については、Android Consumer SDK を入手するをご覧ください。 |
2 | ビジュアル インターフェースを設定する | 地図を定義し、ベクトル地図のサポートを追加して、ユーザー エクスペリエンスを設定します。詳しくは、地図を設定するをご覧ください。 |
3 | ルートをフォローする | ルートをフォローして、適切な車両の位置を消費者と共有します。詳しくは、ルートをフォローするをご覧ください。 |
5 | ルートの進行状況を更新し、ルートのエラーを処理する | 移動距離や到着予定時刻など、ルートの詳細を更新し、ルート中のエラーを処理します。詳細については、ルートの進行状況を更新するとルートのエラーを処理するをご覧ください。 |
5 | ルートの完了時にフォローを停止する | 乗車の追跡を停止すると、車両の位置情報の共有が停止します。詳しくは、ルートのフォローを停止するをご覧ください。 |
iOS
1 | iOS で Consumer SDK を設定する | アプリでオンデマンド ルートを追跡するには、Consumer SDK を設定します。詳しくは、iOS コンシューマ SDK を入手するをご覧ください。 |
2 | ビジュアル インターフェースを設定する | 地図ビューを初期化し、地図イベントを処理してユーザー エクスペリエンスを設定します。詳しくは、地図を設定するをご覧ください。 |
3 | ルートをフォローする | ルートをフォローして、適切な車両の位置をお客様と共有します。詳しくは、ルートをフォローするをご覧ください。 |
5 | ルートの進行状況を更新し、ルートのエラーを処理する | 移動距離や到着予定時刻など、ルートの詳細を更新し、ルート中のエラーを処理します。詳細については、ルートの進行状況を更新するとルートのエラーを処理するをご覧ください。 |
5 | ルートの完了時にフォローを停止する | 乗車の追跡を停止すると、車両の位置情報の共有が停止します。詳しくは、ルートのフォローを停止するをご覧ください。 |
JavaScript
1 | JavaScript で Consumer SDK を設定する | アプリでオンデマンド ルートを追跡するには、Consumer SDK を設定します。詳細については、JavaScript コンシューマ SDK を設定するをご覧ください。 |
2 | 地図を読み込んでカスタマイズする | Maps JavaScript API を有効にして認可を設定し、ユーザー エクスペリエンスを設定します。詳しくは、地図を設定するをご覧ください。 |
3 | ルートをフォローする | ルートをフォローして、適切な車両の位置をお客様と共有します。詳しくは、ルートをフォローするをご覧ください。 |
5 | ルートの進行状況を更新し、ルートのエラーを処理する | ルートの詳細(ルートの距離や到着予定時刻など)を更新し、ルートのエラーを処理します。詳細については、ルートの進行状況を更新、追跡するとルートのエラーを処理するをご覧ください。 |
5 | ルートの完了時にフォローを停止する | 乗車の追跡を停止すると、車両の位置情報の共有が停止します。詳しくは、ルートのフォローを停止するをご覧ください。 |
コンポーネント
このセクションでは、ルートの追跡に必要な 2 つのコンポーネントについて説明します。
必要に応じて、次のコンポーネントを使用してユーザー エクスペリエンスをカスタマイズすることもできます。
認証トークン取得ツール
Fleet Engine に保存されている位置情報へのアクセスを制御するには、次の操作を行う必要があります。
サーバーに Fleet Engine 用の JSON Web Token(JWT)作成サービスを実装します。詳細については、JWT を発行するをご覧ください。
ウェブアプリまたはモバイルアプリに認証トークン取得ツールを実装して、位置情報へのアクセスを認証します。トークン取得ツールの設定の詳細については、Android、iOS、JavaScript の設定ガイドをご覧ください。
地図表示とルート トラッカー
ルートの追跡には、車両とウェイポイントの可視化コンポーネントのほか、ドライバーの到着予定時刻や残りの走行距離に関する元データフィードも含まれます。
次の表に、これらのコンポーネントを示します。
コンポーネント | 説明 |
---|---|
ユーザーの地図表示 | 地図ビューはルートのライフサイクルを管理し、ルートの進行に応じて車両の位置のウェイポイントを表示します。車両のルートがわかっている場合は、地図ビューで車両のルート ポリラインが更新され、ルート上の車両の進行状況が示されます。 |
JavaScript でのルート ロケーション プロバイダ | JavaScript ウェブアプリの場合、ルート位置プロバイダは、追跡対象のオブジェクトの位置情報を共有ルートマップにフィードします。詳細については、ルート ロケーション プロバイダをインスタンス化するをご覧ください。ルートの位置情報プロバイダを使用すると、ルートの次の詳細をトラッキングできます。
|
チェック中の場所のオブジェクト
位置情報プロバイダは、次の表に示すように、ウェイポイントや車両などのオブジェクトの位置情報を追跡します。
トラッキングされた場所 | 説明 |
---|---|
受け取り場所 | 乗車地は、ルートの開始地点です。 |
宛先のロケーション | 目的地は、ルートの終点となる場所です。降車地点を示します。 |
ウェイポイントの場所 | ウェイポイント ロケーションは、トラッキングされたルートの途中にある任意の地点です。技術的には、ウェイポイントに集荷場所と配達場所を含めることができますが、通常はルート上の中間停留所を指します。たとえば、配送ルートの集荷場所と配送先の間の停留所は、ウェイポイント ロケーションです。詳細については、Fleet Engine のドキュメントのルートのウェイポイントをご覧ください。 |
車両の位置情報 | 車両の位置情報は、車両の報告された位置情報です。詳細については、Fleet Engine のドキュメントの車両の位置情報をご覧ください。 |
地図のスタイルを設定する
マーカーとポリラインのスタイルは、地図上で追跡された位置オブジェクトの外観を決定します。カスタム スタイル設定オプションを使用して、ウェブ アプリケーションのスタイルに合わせて調整できます。
チェック中の場所の公開設定を管理する
Fleet Engine の事前定義された位置情報プロバイダは、地図上で追跡された位置情報オブジェクトに対して次の公開設定ルールに従います。カスタムまたは派生位置情報プロバイダを作成する場合は、公開設定ルールを変更できます。
車両は、乗車中のみ表示されます: 乗車中は、乗車に割り当てられた時刻から乗車終了時刻まで車両が表示されます。乗車がキャンセルされると、車両は表示されなくなります。
他のすべての位置マーカーは常に表示されます: 起点、目的地、ウェイポイントの他のすべての位置マーカーは、常に地図上に表示されます。たとえば、ルートの集荷場所や荷物の配達場所は、ルートや配達のステータスに関係なく、常に地図に表示されます。
次のステップ
ルートをフォローするプラットフォームのドキュメントをご覧ください。