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

# AlloyDB

> Google AlloyDBからOneSignalにカスタムイベントを同期して、ユーザーの行動に基づいて自動化されたJourneysとパーソナライズされたメッセージングキャンペーンをトリガーします。

export const PLATFORM_0 = "AlloyDB"

export const DATA_TYPE_0 = "table columns"

export const COLUMN_HEADER_0 = "AlloyDB Column"

export const PROPERTIES_DESCRIPTION_0 = "Event metadata as JSON object"

## 概要

OneSignal + Google AlloyDB統合により、AlloyDBデータベースからOneSignalのカスタムイベントAPIに直接カスタムイベントを自動的に同期できます。これにより、データベースに保存された実際のユーザーの行動に基づいて、自動化されたJourneysとパーソナライズされたメッセージングキャンペーンをトリガーできます。

購入、製品表示、サブスクリプションの変更、またはカスタムユーザーアクションなどのイベントを同期して、プッシュ通知、メール、アプリ内メッセージ、SMSを介してオンボーディングシーケンス、再エンゲージメントキャンペーン、トランザクションメッセージ、ターゲットを絞ったプロモーションを自動的にトリガーできます。

***

## 要件

* Access to [Event Streams](/docs/en/event-streams) for outbound message events (Plan limitations and overages apply)
* Access to [Custom Events](/docs/en/custom-events) for inbound event syncing (Plan limitations and overages apply)
* [Updated Account Plan](https://onesignal.com/pricing) (not available on free apps)

### Google AlloyDB

* AlloyDBインスタンスを持つ**Google Cloud Platform**アカウント
* Google Cloudが要求する**Auth Proxy**が設定されていること
* ユーザーを作成してアクセスを許可するための**データベース権限**
* AlloyDBインスタンスへの**ネットワークアクセス**

***

## セットアップ

### AlloyDB権限の設定

OneSignalは、AlloyDBデータベースからイベントデータを読み取る必要があります。イベントテーブルへの読み取り専用アクセスを持つ専用の`ONESIGNAL`ユーザーアカウントを作成することをお勧めします。

<Steps>
  <Step title="OneSignalデータベースユーザーを作成する">
    強力で一意のパスワードを持つ専用ユーザーアカウントを作成します：

    ```sql theme={null}
    -- OneSignalユーザーを作成
    CREATE USER ONESIGNAL WITH PASSWORD '<強力で一意のパスワード>';
    ```
  </Step>

  <Step title="スキーマアクセスを許可する">
    OneSignalユーザーにイベントデータスキーマからの読み取りアクセスを許可します：

    ```sql theme={null}
    -- OneSignalユーザーがイベントスキーマを表示できるようにする
    GRANT USAGE ON SCHEMA "<your_event_schema>" TO ONESIGNAL;

    -- OneSignalユーザーがこのスキーマ内のすべての既存テーブルを読み取れるようにする
    GRANT SELECT ON ALL TABLES IN SCHEMA "<your_event_schema>" TO ONESIGNAL;

    -- OneSignalユーザーがこのスキーマに追加された新しいテーブルを読み取れるようにする
    ALTER DEFAULT PRIVILEGES IN SCHEMA "<your_event_schema>" GRANT SELECT ON TABLES TO ONESIGNAL;
    ```

    <Info>
      `<your_event_schema>`を、イベントテーブルを含む実際のスキーマに置き換えてください。
    </Info>
  </Step>

  <Step title="関数権限を許可する（必要な場合）">
    イベントデータにストアドプロシージャまたは関数を使用する場合：

    ```sql theme={null}
    -- OneSignalユーザーがこのスキーマ内の関数を実行できるようにする
    GRANT EXECUTE ON ALL FUNCTIONS IN SCHEMA "<your_event_schema>" TO ONESIGNAL;

    -- OneSignalユーザーがこのスキーマに追加された新しい関数を実行できるようにする
    ALTER DEFAULT PRIVILEGES IN SCHEMA "<your_event_schema>" GRANT EXECUTE ON FUNCTIONS TO ONESIGNAL;
    ```
  </Step>
</Steps>

### Auth Proxyをセットアップする

<Steps>
  <Step title="Auth Proxyを設定する">
    AlloyDBはサードパーティ接続にAuth Proxyが必要です。これをセットアップするには、[GoogleのAuth Proxyドキュメント](https://cloud.google.com/alloydb/docs/auth-proxy/overview)に従ってください。

    <Warning>
      Auth Proxyは必須です - OneSignalはAuth Proxyなしでは直接AlloyDBに接続できません。
    </Warning>
  </Step>

  <Step title="接続の詳細をメモする">
    以下の接続情報を保存します：

    * **Host**：Auth Proxyエンドポイント
    * **Port**：Auth Proxyポート（通常は5432）
    * **Database**：AlloyDBデータベース名
    * **Username**：`ONESIGNAL`（上記で作成）
    * **Password**：設定したパスワード
  </Step>
</Steps>

### OneSignal AlloyDB接続を設定する

<Steps>
  <Step title="統合に移動する">
    In OneSignal, go to **Data > Integrations** and click **Add Integration**.
  </Step>

  <Step title="Google AlloyDBを選択する">
    利用可能な統合のリストから**Google AlloyDB**を選択します。
  </Step>

  <Step title="接続の詳細を入力する">
    AlloyDB接続情報を提供します：

    * **Host**：Auth Proxyエンドポイント
    * **Port**：Auth Proxyポート
    * **Database**：AlloyDBデータベース名
    * **Username**：`ONESIGNAL`
    * **Password**：ユーザーパスワード
    * **SSL**：有効（推奨）
  </Step>

  <Step title="接続をテストする">
    **Test Connection**をクリックして、OneSignalがAlloyDBインスタンスにアクセスできることを確認します。
  </Step>
</Steps>

***

## イベントデータマッピング

接続したら、AlloyDBテーブルの列をOneSignalカスタムイベントフィールドにマッピングする必要があります：

<Steps>
  <Step title="イベントテーブルを選択する">
    OneSignalに同期したいイベントデータを含むテーブルを選択します。
  </Step>

  <Step title="必須のイベントフィールドをマッピングする">
    カスタムイベントに必須のフィールドをマッピングします：

    * **Event Name**：イベントタイプを含む列（例：「purchase」、「signup」）
    * **User Identifier**：External User ID、Email、またはPhone Number列
    * **Event Timestamp**：イベントが発生した時刻（オプション）
  </Step>

  <Step title="イベントペイロードデータをマッピングする">
    追加の列をイベントペイロードプロパティにマッピングします：

    * カスタムイベントプロパティ（product\_id、price、categoryなど）
    * コンテキストデータ（source、campaignなど）
    * 行動メトリクス（value、quantityなど）
  </Step>

  <Step title="同期設定を構成する">
    イベント処理頻度と配信設定を設定します。
  </Step>
</Steps>

***

### Event data mapping

Map your {PLATFORM_0} {DATA_TYPE_0} to OneSignal's custom events format:

| OneSignal Field | {COLUMN_HEADER_0} | Description                | Required |
| --------------- | ----------------- | -------------------------- | -------- |
| `name`          | `event_name`      | Event identifier           | Yes      |
| `external_id`   | `user_id`         | User identifier            | Yes      |
| `timestamp`     | `event_timestamp` | When event occurred        | No       |
| `properties`    | `event_data`      | {PROPERTIES_DESCRIPTION_0} | No       |

***

## 高度なネットワーク設定

### IPアドレス許可リスト

AlloyDBインスタンスがIP許可リストを使用している場合は、OneSignalのIPアドレスを追加してください。現在のIP範囲は、OneSignalダッシュボードの**Data > Integrations > Network Access**で確認できます。

### SSHトンネリング

OneSignalは、追加のセキュリティのためにSSHトンネルを介したAlloyDBへの接続をサポートしています：

<Steps>
  <Step title="SSHユーザーを作成する">
    SSHホストサーバーでOneSignal用の専用ユーザーアカウントを作成します。
  </Step>

  <Step title="SSHトンネルを設定する">
    OneSignal AlloyDB接続設定で、**Use SSH Tunnel**を有効にして、以下を提供します：

    * SSH Host
    * SSH Port
    * SSH Username
  </Step>

  <Step title="SSHキーを追加する">
    OneSignalはSSHキーペアを生成します。公開鍵をSSHホストの`authorized_keys`ファイルにOneSignalユーザー用にコピーします。
  </Step>
</Steps>

***

## 制限事項

* **パフォーマンス**：ピーク使用時に本番データベースへの接続を避ける
* **権限**：OneSignalはイベントテーブルへの読み取り専用アクセスが必要
* **Auth Proxy**：すべてのAlloyDB接続に必須

***

## FAQ

### イベントテーブルの構造が変更された場合はどうなりますか？

OneSignalはスキーマの変更を検出し、フィールドの再マッピングが必要になる場合があります。統合設定でフィールドマッピングを更新してください。

### OneSignalはどのくらいの頻度でイベントを同期しますか？

OneSignalは、設定された同期頻度に基づいて新しいイベントをチェックします。最小間隔は15分です。

***

## サポートが必要ですか？

AlloyDB統合のセットアップについてサポートが必要な場合は、`support@onesignal.com`にお問い合わせいただくか、アプリ内チャットをご利用ください。
