Rudderstack - Singularハイブリッドインテグレーション(Singular SDK + Rudderstackクラウドモード)

RudderStack はオープンソースのカスタマーデータプラットフォーム (CDP) であり 企業がカスタマーデータを収集、統合し、さまざまな宛先へルーティングできるようにします。カスタマーデータパイプラインを管理するための一元化されたプラットフォームを提供し、Web サイト、モバイルアプリ、サーバー、クラウドサービスなどのさまざまなソースからデータを簡単に収集できるようにします。

Singular SDK は、標準の "Device-Mode" または "Cloud-Mode" の統合オプションでは利用できない多くの機能を提供します。

Rudderstack を Singular とともに使用する場合、すべての Singular の機能と機能性を活用するために、 ハイブリッド 方式での統合を推奨します。

ハイブリッドアプローチは以下で構成されます。

  1. Singular SDK を実装する ことを Rudderstack とは独立して行い、Singular SDK がセッショントラッキング、SDK フレームワーク (React Native、Unity など) の追加サポート、SkAdNetwork、ディープリンクおよびディファードディープリンク、および高度な機能を処理できるようにします。
  2. Rudderstack で Singular Destination の "Cloud-Mode" オプションを有効にします。これにより、Rudderstack のすべてのモバイル track イベントを Singular の Destination に送信できます。

以下の手順では、Rudderstack を使用した Singular ハイブリッド実装の構成方法を説明します。

対象ガイド エンジニアリングチーム
前提条件 この記事は、すでに Rudderstack Mobile SDK がアプリに統合されていることを前提としています。

この統合を使用するには、Rudderstack の Mobile SDK を使用している必要があります。

サポートされる内容

Singular SDK は以下のサポートを提供します。

  1. インストールアトリビューション
  2. SkAdNetwork サポート
  3. Google Install Referrer サポート
  4. META Install Referrer サポート
  5. Apple Search Ads アトリビューション
  6. カスタムアプリ内イベントトラッキング
  7. 収益トラッキング
  8. Custom User ID
  9. Global Properties サポート
  10. プライバシーオプション

Rudderstack の "Cloud-Mode" 統合は以下のサポートを提供します。

  1. カスタムアプリ内イベントトラッキング
  2. 収益トラッキング
  3. Custom User ID

ハイブリッド構成

  1. Singular SDK を統合する

    Singular SDK を Rudderstack とは独立して実装します。SDK のオプションとフレームワークについては こちら をご覧ください。

  2. Rudderstack - Singular Destination (Cloud-Mode) を有効にする

    ガイドは こちら をご覧ください。

重複するセッションイベントを避ける: ハイブリッドアプローチでは、Singular SDK がすでにセッショントラッキングを管理しています。Rudderstack - Singular Destination (Cloud-Mode) を構成する際は、「Session Event Name」接続設定を 設定しない でください。また、 Application Installed Application Opened 、または Application Updated のライフサイクルイベントを Rudderstack 経由で Singular に送信しないでください。これを行うと、Rudderstack が Singular SDK と並行してセッションイベントを送信し、Singular で重複するセッションイベントが発生します。

推奨される追加セットアップ

ハイブリッド方式を使用する場合、Rudderstack の AnonymousId と Rudderstack の User ID を Singular の SDK に渡すことを推奨します。

SDK ドキュメントにあるこれらのオプション機能の実装には、特に注意して取り組んでください。使用しているフレームワークによって手順が若干異なる場合があります。

Global Properties を実装する

Rudderstack の AnonymousId を Singular の Global Property に渡します。これにより、Rudderstack の AnonymousId が SDK からのデバイスレベルのデータに関連付けられます。

Singular SDK の初期化時に Singular Config オブジェクトでこの値を Singular に提供することで、UserId が不明な場合でも Singular が Rudderstack にインストール ポストバックを送信できるようになります。

Singular は、Rudderstack の AnonymousId および/または Rudderstack の UserId 値を使用して、 App Install からのアトリビューション情報のみを Rudderstack に提供できます。これがどのように構成されるかの例として、Singular の Global Properties [ iOS ][ Android ] を参照してください。

Global Property は、Singular SDK の初期化時に、キー rudderstack_anonymous_id と、Rudderstack SDK から取得した Rudderstack anonymousId の値を使用して構成する必要があります。Rudderstack AnonymousID は、次のメソッドを使用して Rudderstack SDK から取得できます [iOS] [Android]
[RSClient getInstance].anonymousId;

Singular SDK Config の例

iOS(Obj-C) Android(Java)

- (SingularConfig *)getConfig { 
   // Get the 3rd-party identifiers to set in Global Properties: 
   // If 3rd-party SDKs are providing any identifiers to Singular, the
   // respective SDK must be initialized before Singular.
   
   NSString* thirdPartyKey = @"rudderstack_anonymous_id";
   NSString* thirdPartyValue = [RSClient getInstance].anonymousId;
   
   // Singular Config Options 
   SingularConfig* config = [[SingularConfig alloc] 
initWithApiKey:APIKEY andSecret:SECRET]; ... // Using Singular Global Properties feature to capture 3rd-party identifiers [config setGlobalProperty:thirdPartyKey
withValue:thirdPartyValue overrideExisting:YES]; ... return config;}

Custom User ID を実装する

Rudderstack の UserId を Singular の Custom User ID メソッドに渡します。これにより、Rudderstack の UserId が SDK からのデバイスレベルのデータに関連付けられます。Singular SDK の初期化時に Singular Config オブジェクトでこの値を Singular に提供することで、Singular が Rudderstack へのインストールポストバックで UserId を送信できるようにもなります。Singular 統合に使用している SDK フレームワークのドキュメントで詳細をお読みください。例 [ iOS ][ Android ]

さらに、UserID は Singular SDK からネイティブにトリガーされたあらゆるアプリ内イベントに関連付けられます。

受信した "Cloud-Mode" イベントについては、Singular は Custom User ID を Rudderstack の User ID 値にマッピングしています。