メインコンテンツへスキップ

概要

BlueConic webhooksを使用すると、サイトで特定のイベントが発生したときに、プロファイルまたはセグメントデータをOneSignalにリアルタイムで同期できます。このガイドでは、Update user APIを介してBlueConicがOneSignalにデータを送信するように構成する方法を示します。

要件

  • OneSignal対応Webアプリケーション。開始するには、Web push setupを参照してください。

セットアップ

BlueConicとOneSignal間でユーザーデータを同期するには、両方のプラットフォームでユーザーを関連付けるための共通の識別子が存在する必要があります。BlueConicは、BlueConic IDと呼ばれる一意の識別子を生成し、データを同期するためにOneSignalのユーザーにリンクできます。

スクリプトを更新

BlueConic IDを使用してユーザーを識別するカスタムエイリアスを作成することをお勧めします。新しいエイリアスを割り当てる前に、ユーザーが最初にOneSignalにログインしていることを確認してください。次のコードは、エイリアスと外部IDを使用してBlueConic IDをOneSignalユーザーに関連付ける例を示しています。
// BlueConic IDを取得
const blueConicId = blueConicClient.profile.getProfile().getId();

// ユーザーがログインしていることを確認
// ログインしているユーザーは外部IDを持っています
if (!OneSignal.User.externalId) {
await OneSignal.login("EXTERNAL_ID_FROM_YOUR_BACKENED");
}

// このメソッドを呼び出す前に外部IDが存在する必要があります
OneSignal.User.addAlias('blueconic_profile_id', blueConicId);

システムがBlueConic IDを主要な識別子として使用している場合は、それをOneSignal.loginに渡します。
// BlueConic IDを取得
const blueConicId = blueConicClient.profile.getProfile().getId();

// OneSignal外部IDをBlueConic IDに設定
OneSignal.login(blueConicId);

Webhookを追加

特定のニーズに基づいてBlueConicからOneSignalにデータを同期するためにWebhookを使用します。以下の例は、Update user APIを使用してこれを実現する方法を示しています。 API詳細
URLhttps://api.onesignal.com/apps/<APP_ID>/users/by/alias_label/alias_value
MethodPATCH
AuthorizationBasic <API_KEY>
システムがBlueConic IDを主要な識別子として使用している場合… 代わりに次のURLを使用します: https://api.onesignal.com/apps/<APP_ID>/users/by/external_id/{{blueconic_profile_id}}

プロファイルプロパティを同期

Tagsおよびその他のユーザーデータを設定することで、BlueConicプロファイルデータをOneSignalに同期します。

タグを更新するための構成例

ペイロード
{
  "properties": {
    "tags": {
      "tag_name_at_onesignal": "{{BLUECONIC_PROPERTY}}"
    }
  }
}

セグメントを同期

Tagsを設定することで、BlueConicセグメントデータをOneSignalに同期します。これらのタグを使用して、OneSignal内で直接セグメントを作成します。

セグメントを同期するための構成例

ペイロード
{
  "properties": {
    "tags": {
      "early_bird": "Yes",
    }
  }
}
early_birdやその他の説明的なラベルなど、特定のニーズに基づいてタグに名前を付けることができます。ただし、BlueConicとOneSignal間のセグメントの一貫性を保つために、タグに割り当てられる値は常にYesのようにハードコードする必要があります。