デバイス グループから移行する

デバイス グループ メッセージング機能は非推奨となり、2027 年 9 月 29 日以降は機能しなくなります。この手順に沿って、この機能から移行してください。

独自のグループトークン マッピングを管理する

FCM はデバイス グループを保存しなくなるため、アプリサーバーでグループ(ユーザー ID など)と関連する FCM 登録トークン間のマッピングを独自に構築して維持する必要があります。Cloud Firestore、Realtime Database、リレーショナル データベースなどの永続ストレージ ソリューションを使用することをおすすめします。

クライアント アプリが起動したとき、またはトークンが更新されたときに、トークンを取得してバックエンドに送信し、保存する必要があります。バックエンドは、そのトークンを適切なユーザーまたはグループに関連付けます。

既存のグループとトークンのマッピングを取得する

FCM デバイス グループ管理 API には、特定の notification_key に属する登録トークンのリストを取得するための GET メソッドが用意されています。

警告: グループトークンのマッピングを取得する API は 2027 年 9 月 29 日に廃止され、その後データは保持されません。必要に応じて、2027 年 9 月 29 日までにグループデータを取得してください。

グループの各トークンにメッセージを送信する

新しく管理されたグループトークン マッピングを使用してグループにメッセージを送信するには、データベースからトークンのリストを取得します。

Firebase Admin SDK を使用している場合は、マルチキャスト メッセージング API(sendEachForMulticast)を使用して、複数のトークンに 1 つのメッセージ ペイロードを一度に送信できます。

FCM HTTP v1 API を直接呼び出す場合は、グループ内のトークンごとに個別の HTTP リクエストを作成する必要があります。登録トークンのリストを反復処理し、メッセージ ペイロードで token フィールドを明示的に設定したリクエストを送信します。

大規模なファンアウトにはトピック メッセージングを使用する

トピック メッセージングは、グループ メッセージングの直接的な代替手段ではありません。トピックはレイテンシではなくスループットに対して最適化されており、大規模なファンアウトにおすすめです。トピック サブスクリプションの管理とトピックへのメッセージの送信について詳しくは、こちらをご覧ください。