Segmentは、企業が顧客データを収集、クリーニングし、さまざまな宛先にルーティングするのを支援する顧客データ基盤(CDI)プラットフォームです。mParticleと同様に、Segmentは、ウェブサイト、モバイルアプリ、サーバー、クラウドサービスなどの複数のソースからデータを収集するための単一のAPIを提供します。
Singularは、iOSとAndroidのモバイルアクティビティ用のSingular Server-to-Server (S2S) REST APIを使って、Segmentからイベントデータを受け取ることができます。これは「クラウドモード」のデスティネーションと呼ばれます。以下に、SegmentにSingular Destinationを追加する方法を説明します。
| ガイド | エンジニアリングチーム |
| 前提条件 | この記事では、 Segment iOS または Android Analytics SDKをすでに アプリに統合していることを前提としています 。 |
この統合を使用するには、SegmentのMobile Analytics SDKを使用する必要があります。この統合はモバイル以外のイベントデータには対応していません。サーバーまたはウェブイベントには対応していません。
- 基本的なインストールアトリビューション
- カスタムアプリ内イベントトラッキング
- 収益トラッキング
- カスタムユーザーID
- SkAdNetwork サポート
- META インストール リファラー帰属
- ディープリンク
- 限定的なデータ共有サポート
- Google 統合コンバージョン測定 (ICM)
- Apple検索広告アトリビューション
Singularが提供する「フル機能」のS2Sサポートが必要な場合は、Singular S2S REST APIをSegmentとは別に実装する必要があります。サーバー間(S2S)統合ガイドは こちらをご覧ください。
はじめに
- Segmentウェブアプリの "Connections "メニューから "Catalog "をクリックします。
- カタログで"Singular "を検索して選択し、"Add Destination "ボタンをクリックします。
- デスティネーションに接続するソースを選択し、"Next "をクリックします。
- 接続先に名前を付け、"接続先を作成 "をクリックします。
- Singularダッシュボードの"Developer Tools > SDK Integration > SDK Keys "からSingularの"SDK KEY "を取得し、セグメントの "Connection Settings "の "API Key "に追加します。
注:「クラウドモード」インテグレーションでは、APIキー(SDKキー)のみを入力します。
シークレット」は空白のままにしてください。
重要: SegmentのAPI Key値には必ずSingular SDK Keyを使用してください。Singular Reporting API Keyは使用しないでください。間違ったキーを使用した場合、Singularはデータを受信しません。
追加セットアップ
Apple 検索広告アトリビューションサポート
注意: デバイスベースの配信先を使用している場合、データはすでに自動的に収集されているため、以下のコードを実装する必要はありません。
アトリビューションデータをSingularに取り込むには、analytics-ios-iads-attribution依存性とバージョン3.6.0以上のAnalytics SDKを含める必要があります。
これをインストールするには、Podfileに以下の行を追加するだけです:
pod "Analytics"
pod "Analytics-iAds-Attribution"
その後、ヘッダーをインポートし、設定を初期化します:
#import <Analytics-iAds-Attribution/SEGADTracker.h>
// Initialize the configuration as you would normally.
SEGAnalyticsConfiguration *configuration = [SEGAnalyticsConfiguration
configurationWithWriteKey:@"YOUR_WRITE_KEY"];
...
// Configure the client with the iAD middleware to attach iAd properties.
configuration.middlewares = @[ [SEGADTracker middleware] ];
[SEGAnalytics setupWithConfiguration:configuration];
import Analytics-iAds-Attribution
// Initialize the configuration as you would normally.
var configuration = SEGAnalyticsConfiguration(writeKey: "WriteKey")
...
// Configure the client with the iAD middleware to attach iAd properties.
configuration.middlewares = [SEGADTracker.middleware()]
SEGAnalytics.setup(with: configuration)
iAd情報が利用可能な場合、アトリビューション情報はこのようにセグメントコンテキストに変換されます:
[analytics track:@"Application Installed",
properties: nil,
options: @{
@"context" : @{
@"campaign" : @{
@"provider" : @"Apple",
@"click_date" : attributionInfo[@"iad-click-date"],
@"conversion_date" : attributionInfo[@"iad-conversion-date"],
@"source" : @"iAd",
@"name" : attributionInfo[@"iad-campaign-name"],
@"content" : attributionInfo[@"iad-keyword"],
@"ad_creative" : attributionInfo[@"iad-org-name"],
@"ad_group" : attributionInfo[@"iad-adgroup-name"],
@"id" : attributionInfo[@"iad-campaign-id"],
@"ad_group_id" : attributionInfo[@"iad-adgroup-id"]
}
}
}];
Singularは、iAd情報を提供するために、Application Installedライフサイクルイベントを明示的にマッピングしています。
アトリビューションのインストール
初期化設定パラメータ(iOS、Android)を使ってライフサイクルイベント(アプリケーションの開封、アプリケーションのインストール、アプリケーションの更新)の自動トラッキングを有効にし、Singular でインストールとセッションをトラッキングします。上記のイベントを含む限り、Singularの「セッション」は統合によって自動的に送信されます。
カスタムイベントのトラッキング
Segmentの仕様に慣れていない方は、Trackメソッドが何をするのかを理解するためにご覧ください。
イベントを翻訳してSingularに送信するには、Segmentのトラック機能を使います:
[[SEGAnalytics sharedAnalytics] track:@"simple event"];
Analytics.with(this).track("event_name");
SegmentはすべてのイベントプロパティをSingularイベントのコールバックパラメータとして含みます。
SegmentはすべてのイベントプロパティをSingularイベントのコールバックパラメータとして含みます。イベントはレポートやユーザーレベルのエクスポートで利用できます。
注意事項
- サードパーティのパートナーや分析ソリューションを使用する場合は、互換性を保証するために、イベント名と属性を英語で渡すことを強く推奨します。
- イベント名は32 ASCII文字に制限されています。非ASCII文字の文字列は、UTF-8に変換された後、32バイト以下にする必要があります。
- 属性と値は500 ASCII文字に制限されています。
収益トラッキング
収益プロパティを含むイベントが送信されると、Singularは収益トラッキングを受信します(ゼロ値を含む)。オプションで通貨を(ISO 4217通貨コードコードとして)渡すことができます。デフォルトの通貨はUSDです。
[[SEGAnalytics sharedAnalytics] track:@"segment revenue event" properties:@{@"currency": @"USD", @"revenue":@20}];
Analytics.with(this).track("purchase", new Properties().putRevenue(2.5).putValue("currency","USD"));
注:通貨は3文字のISO 4217通貨コードとして渡してください(例:"USD"、"EUR"、"INR")。
カスタムユーザーID
セグメントユーザーIDをSingularに送信するには、Segmentidentifyメソッドを使用します。
注: SingularのCross-Deviceソリューションをご利用の場合は、すべてのプラットフォームで同じUserIDを収集する必要があります。
- ユーザーIDはどのような識別子でも構いませんが、PII(個人を特定できる情報)を公開すべきではありません。例えば、ユーザーのメールアドレス、ユーザー名、電話番号は使用しないでください。Singularは、お客様のファーストパーティデータにのみユニークなハッシュ値を使用することを推奨します。
- Singularに渡すユーザーIDは、すべてのプラットフォーム(ウェブ/モバイル/PC/コンソール/オフライン)で同じ内部ユーザーIDを使用する必要があります。
- Singularはユーザーレベルのエクスポート、ETL、内部BIポストバック(設定されている場合)にユーザーIDを含めます。ユーザーIDはファーストパーティデータであり、Singularが他者と共有することはありません。
- 設定されたユーザーIDの値は、Segmentresetメソッドを使用して設定が解除されるか、アプリがアンインストールされるまで保持されます。アプリを終了または再起動しても、ユーザーIDは解除されません。
iOS、Androidの設定は、こちらの手順に従ってください。
[[SEGAnalytics sharedAnalytics] identify:@"segment custom user id"];
Analytics.with(context).identify("myUserId");
カスタムユーザーIDの設定を解除するには、リセットメソッドを呼び出します。
[[SEGAnalytics sharedAnalytics] reset];