メインコンテンツまでスキップ

登録トークンの登録・更新

ログイン時に登録トークンを登録・更新します。 登録・更新する条件は次の通りです。

  • 通知が許可されている
  • アカウント情報の登録トークン一覧に現在の登録トークンがない

処理フロー

処理フローは以下になります。

登録トークンの登録・更新の処理フロー

No処理内容
アカウント情報の取得アカウント情報取得APIを呼び出して、ログイン済みアカウントに紐づく登録トークン一覧を取得します。登録トークン一覧は空の配列か1つの登録トークンを含んだ配列となります(将来的に同一アカウントでの複数端末対応に備え配列としています)。登録トークン一覧に現在の登録トークンがない場合、登録または更新が必要です。登録トークンの定期的な更新を促すため、登録日時が1か月以上前の登録トークンはレスポンスに含まれません。
通知許可を要求通知許可を要求します。Androidの場合この検証は常に有効(AUTHORIZED)となります。iOSやiPadOSの場合、初回のみ通知許可の確認ダイアログが表示されます。詳細は、iOS - Requesting permissionsを参照してください。
現在の登録トークンを取得通知許可が有効(AUTHORIZED)な場合、現在の登録トークンを取得します。
登録トークンの登録・更新レスポンスの登録トークン一覧に現在の登録トークンがない場合、登録トークンを登録・更新します。③で取得した登録トークンを指定して登録トークン登録・更新APIを呼び出します。
登録トークンの検証登録トークンをデータベースへ保存する前に、登録トークンが有効な値かを検証します。検証はdryRunオプションをtrueにしてFCMへプッシュ通知を送信することで行います。dryRunオプションがtrueの場合、端末に通知は行わず検証のみが実施されます。
登録トークンを保存更新後の登録トークンが有効な場合、データベースへ保存し、正常応答を返します。無効な場合はトランザクションをロールバックし、異常応答を返します。