応用ガイド
1. 初期化パラメータ
Strategy SDKはTDStrategySettingsで初期化します。Analytics SDKは先にTDAnalytics.init(context, appId, serverUrl)を呼び出す必要があります。TDStrategySettingsの設定の説明は次のとおりです。
1.1 TDStrategySettings
| プロパティ名 | タイプ | 説明 |
|---|---|---|
| appId | string | AE管理画面で作成したプロジェクトのapp id |
| serverUrl | string | AE管理画面で作成したプロジェクトのserver url |
| mode | TDStrategyMode | Strategy SDKの実行モード。デフォルトはNORMAL |
1.2 TDStrategyMode
| 列挙値 | 説明 |
|---|---|
| NORMAL | 通常モード。本番環境のルールに従ってタスクを取得し、トリガーします。 |
| DEBUG | テストモード。 デバイスidをAEコンソールのテストデバイスリストに追加する必要があります。 SDKがより高い頻度でテストタスクを取得するため、AEのエンゲージモジュールでチャンネルテストやタスクテストを行いやすくなります。 |
import { TDStrategy, TDStrategyMode, TDStrategySettings } from '@thinkingdata/strategy';
const settings = new TDStrategySettings('AppId', 'ServerUrl');
settings.mode = TDStrategyMode.DEBUG;
TDStrategy.init(context, settings);
2. クライアントパラメータの設定
クライアントトリガー型タスクを作成する際に、「クライアント条件」を入力できます。設定方法はクライアントトリガー型タスクの作成を参照してください。
「クライアント条件」で使用できるパラメータは、クライアントが自動収集する環境パラメータと、TDRemoteConfig SDKで設定したクライアントパラメータです。カスタムのクライアントパラメータをSETした後、そのカスタムクライアントパラメータをAEの「エンゲージ設定」のクライアントパラメータ管理モジュールに追加すると、エンゲージタスクで使用できます。
注意:クライアントでSETするパラメータの名前とタイプは、AEのエンゲージ管理画面で設定したクライアントパラメータと一致させる必要があります。
クライアントパラメータの追加
import { TDRemoteConfig } from '@thinkingdata/remoteconfig';
// クライアントパラメータを設定。複数回設定した場合は和集合になります
TDRemoteConfig.addClientParams({
'key': 'value',
});
クライアントパラメータの削除
TDRemoteConfig.removeClientParam('key');
単一のクライアントパラメータを取得
import { TDRemoteConfig } from '@thinkingdata/remoteconfig';
const value = TDRemoteConfig.getClientParamValueForKey('key');
TDStrategy.addClientParams/TDStrategy.removeClientParamは互換用のインターフェースで、内部でTDRemoteConfigに転送されます。TDRemoteConfigを直接呼び出すことをお勧めします。
3. 取得タイミングのカスタマイズ
3.1 自動取得
次のシナリオでは、SDKがリモート構成データを自動的に取得します:
- Appのコールドスタート
- Appのフォアグラウンド/バックグラウンドの切り替えで、前回からの間隔が6時間を超えた場合
- ThinkingSDKのアカウント体系に変更があった場合(login、logoutなど)
3.2 手動取得
SDKのメソッドを手動で呼び出して、いつでもリモート構成を取得できます:
TDStrategy.fetch();
このAPIには内部で頻度制御があるため、頻繁に取得しないでください。
4. リーチファネルイベント
クライアントトリガー型チャンネルを作成する際に、リーチファネル設定をオンにできます。設定方法はチャンネル設定を参照してください。
リーチファネルをオンにすると、ファネルステップに関連付けるイベント名を設定できます。これにより、このチャンネルを使用するエンゲージタスクのデータ詳細ページで、設定したステップのコンバージョンデータを確認できます。
「実際到達」「プッシュクリック」に選択するイベントには、次の要件があります:
- イベントには、エンゲージ固有のパラメータを含める必要があります。このパラメータは、プッシュ内容の
TDStrategyResultオブジェクトのopsPropertiesプロパティから取得できます。具体的な送信方法は次のとおりです:
import { TDAnalytics } from '@thinkingdata/analytics';
import { TDStrategy, TDStrategyResult, TDStrategyResultListener } from '@thinkingdata/strategy';
TDStrategy.setTriggerListener({
onTriggerResult: (result: TDStrategyResult) => {
TDAnalytics.track({
eventName: 'ops_click',
properties: result.opsProperties,
});
},
});
5. テスト送信
チャンネルの利用可否とタスクの有効性をすばやく検証できるよう、SDKはテストモードの有効化に対応しています。
import { TDAnalytics } from '@thinkingdata/analytics';
import { TDStrategy, TDStrategyMode, TDStrategySettings } from '@thinkingdata/strategy';
await TDAnalytics.init(context, 'AppId', 'ServerUrl');
const settings = new TDStrategySettings('AppId', 'ServerUrl');
settings.mode = TDStrategyMode.DEBUG;
TDStrategy.init(context, settings);
クライアントでdebugモードを有効にすると、より高い頻度でテストタスクを取得します。AEのエンゲージモジュールでは、チャンネルテストまたはタスクテストを作成できます。タスクがトリガーを待っている間は、フロントエンドのページで進捗ノードを確認できます。
参考ドキュメント:タスクのテスト送信、チャンネルのテスト送信
クライアントトリガー型のテスト送信にはテストデバイスが必要です。テストデバイスリストでテストデバイスを選択または追加できます

