Transit イシュアからのパーク
イシュア発信のパーキングワークフローは、次のいずれかの2つの方法でトリガーできます:
ユーザーが自身のモバイルアプリケーションを使用する。
トランジットイシュアのシステムからビジネスルールに従って直接(実行される)。
いずれの場合も、D1 Transitソリューションはトランジットイシュアシステムからのリクエストを受信します。
このセクションでは、ワークフローの概要(詳細な手順、シーケンス図、潜在的なエラーシナリオを含む)を提供します。
ワークフロー
以下はイシュア発信のパーキングワークフローの上位ステップです:
カード削除:トランジットイシュアがユーザーのデバイスからカードの削除を開始する。
カードのリンク解除:D1 TransitがAppleに対して、トランジットカードをユーザーのデバイスから削除する必要があることを通知する。
パーキング結果:Appleはパーキングワークフローの結果を含む通知をD1 Transitに送信する。
シーケンス図
カード削除
トランジットイシュアは、指定されたデバイスからカードを削除するようD1 Transitに指示する。
カードのリンク解除
D1 Transitからのデバイスからのカード削除リクエストを受け取ると、Appleサーバーは関連するパスの削除を開始します。
パーキング結果
Apple側でパーキングプロセスが完了すると、eventNotificationがD1 Transitに送信され、パーキングワークフローの結果が提供されます。
イベントが次の場合 lifecycleOutcomeSuccess、D1 Transitはトランジットイシュアに通知してデジタルカードを自社システムから削除し、同じiCloudアカウントに関連付けられた同一または別のデバイスでカードをプロビジョニングできるようにします。
エラーシナリオ
パーキング失敗
パーキングが失敗した場合、AppleはeventNotificationでeventTypeパラメータをlifeCycleOutcomeFailureに設定してD1 Transitに通知します。トランジットイシュアはパーキングプロセスを再試行できます。
デバイスがオフライン
このリクエストはデバイス発信ではないため、デバイスがオンラインである保証はありません。そのような場合、カード削除リクエストがデバイスに到達しない可能性があります。例えば、デバイスが機内モードになっていることが考えられます。したがって、プロビジョニング済みのデジタルカードをトランジットでの使用を防ぐためにデナイリストに入れることが強く推奨されます。
トランジットイシュアは、カードを別のデバイスにプロビジョニングする前に、デナイリストが関連するすべてのリーダーに完全に伝播されていることを確認する必要があります。このステップは、同一のトランジットカードが複数のデバイスで同時に使用されるのを防ぎ、潜在的な不正利用を避けるために重要です。
Appleからの通知がない
D1 TransitプラットフォームがmanagePassリクエスト後に定義されたタイムアウト期間内にeventNotificationを受信しない場合、プロビジョニングバンドルの状態を確認するためにgetStatusリクエストが送信されます。
応答がアクティブな状態を示す場合、パーキングは未完了です。D1プラットフォームはトランジットイシュアに通知し、カードインスタンスをデナイリストに入れることができます。
応答ヘッダーにHTTP 404ステータスコードが含まれている場合、それはカードが正常に削除されAppleサーバー上に存在しなくなった、つまりパーキングが成功したことを確認します。
どちらの場合でも、同じiCloudアカウントに関連付けられた別のデバイスにカードをプロビジョニングできるはずです。
Appleからの遅延イベント通知リクエスト
D1 Transitプラットフォームが事前定義されたタイムアウト期間後にAppleからeventNotificationを受信した場合(例:デバイスが長時間後にオンラインに戻った場合)、D1 Transitは自社システムからデジタルカードを削除し、パーキングが成功したことをトランジットイシュアに通知します。トランジットイシュアはカードインスタンスをデナイリストから削除します。
最終更新
役に立ちましたか?