> ## Documentation Index
> Fetch the complete documentation index at: https://docs.auxia.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Auxiaによるプッシュ通知送信の有効化

> Firebaseを通じたプッシュ通知送信のためのAuxia設定

<Note>
  日本語版はAIによる翻訳です。正確な情報については[英語版](/deploying-auxia/delivery-integrations/firebase-push-notifications-integration-manual/enable-auxia-to-send-notification)をご参照ください。
</Note>

<h2 id="service-account">
  1. サービスアカウントのセットアップ
</h2>

Auxiaは、プッシュ通知API呼び出しの認証にGCPサービスアカウントを使用します。

**以下の手順に従ってください:**

1. 既存のGoogle Cloudプロジェクトで**Firebaseの使用を開始**します。

2. リンクされたGCPプロジェクトで**サービスアカウントを作成**します。

3. **サービスアカウントに以下のロールを割り当てます:**

   **Firebase Cloud Messaging API Admin**

   <img src="https://mintcdn.com/auxia/XsfpA_ObWj7oESRX/img/firebase-push-notifications/firebase-cloud-messaging-api-admin.png?fit=max&auto=format&n=XsfpA_ObWj7oESRX&q=85&s=02d0cc3b684c1f019336c9bf60c52707" alt="Firebase cloud messaging" width="1024" height="860" data-path="img/firebase-push-notifications/firebase-cloud-messaging-api-admin.png" />

4. このサービスアカウントの**JSONキーを生成**します。

   <img src="https://mintcdn.com/auxia/XsfpA_ObWj7oESRX/img/firebase-push-notifications/json-key.png?fit=max&auto=format&n=XsfpA_ObWj7oESRX&q=85&s=1b60464b7a3ab6aaf77a86fe30bbae25" alt="JSON key" width="2048" height="828" data-path="img/firebase-push-notifications/json-key.png" />

<Info>
  このサービスアカウントのJSONキーをAuxiaチームと共有してください。
</Info>

## 2. FCMトークン

**FCMトークン**は、Firebase Cloud Messaging (FCM) に登録されたデバイスの一意の識別子です。このトークンはデバイスにプッシュ通知を送信するために必要です。

**ライフサイクル:**

* `getToken()` を使用してトークンを生成します。
* トークンのリフレッシュイベントを監視します。

> アプリケーションがバックエンドでuser\_idとFCMトークンのマッピングを更新するようにしてください。これにより、プッシュ通知が正しいユーザーに配信されます。

サンプル実装については、[Flutter サンプルセットアップ](/ja/deploying-auxia/delivery-integrations/firebase-push-notifications-integration-manual/sample-flutter-set-up)セクションをご参照ください。

<Tip>
  user\_idとFCMトークンのマッピングは、ユーザー属性の取り込みを通じてAuxiaチームと共有する必要があります。プロパティ`fcm_token`を使用し、プロパティ値には`string_value`フィールドを設定してください。
</Tip>

## 3. 配信の詳細

**前提条件:**

* FCMトークンは特定のユーザーを識別するために使用されます。
* サービスアカウントのJSONキーは認証に使用されます。
* サーバー上では、JSONキーを使用して短期間有効なOAuth 2.0アクセストークンを取得します。
* アクセストークンは、FCMトークンをユーザー識別子としてsend-message APIで使用されます。

Auxiaは**データのみのメッセージ**（`notification`オブジェクトなし）を使用します。`title`、`body`、`image`を含むすべてのフィールドは、`data`オブジェクトのキーと値のペアとして送信されます。これにより、AndroidとiOSの両方との互換性が確保されます。

**ペイロードの例:**

```json theme={null}
{
  "message": {
    "token": "bk3RNwTe3H0:CI2k_HHwgIpoDKCIZvvDMExUdFQ3P1...",
    "data": {
      "title": "Portugal vs. Denmark",
      "body": "great match!",
      "Nick": "Mario",
      "Room": "PortugalVSDenmark"
    }
  }
}
```
