応用ガイド
1. 初期化パラメータ
初期化時に渡すTDSettingsの設定の詳細は次のとおりです
1.1 TDSettings
| プロパティ名 | タイプ | 説明 |
|---|---|---|
| appId | NSString | AE管理画面で作成したプロジェクトのapp id |
| serverUrl | NSString | AE管理画面で作成したプロジェクトのserver url |
| mode | TDSDKMode | SDKの実行モードの列挙型 |
| enableLog | BOOL | ログ出力を有効にするかどうか |
| remoteConfigFetchParams | NSDictionary | (TDRemoteConfigで使用)構成取得時のカスタムリクエストパラメータ |
| encryptVersion | NSInteger | (ThinkingSDKで使用)データ暗号化を有効にした場合の鍵のバージョン番号 |
| encryptKey | NSString | (ThinkingSDKで使用)データ暗号化を有効にした場合の公開鍵情報 |
| defaultTimeZone | NSTimeZone | (ThinkingSDKで使用)SDKが時刻のフォーマットに使用するタイムゾーン |
| instanceName | NSString | (ThinkingSDKで使用)収集SDKインスタンスにエイリアスを設定します |
| enableAutoPush | BOOL | (ThinkingSDKで使用)プッシュクリックの自動回収を有効にするかどうか |
| enableAutoCalibrated | BOOL | (ThinkingSDKで使用)自動時間補正を有効にするかどうか |
1.2 TDSDKMode
| 列挙値 | 説明 |
|---|---|
| TDSDKModeNomal | データを通常どおり送信し、データベースに格納します。 |
| TDSDKModeDebug | Debugモードで収集データを送信します。 デバイスidをAEコンソールのテストデバイスリストに追加する必要があります。 AEコンソールの「デバッグモード」メニューで、リアルタイムに収集されたデータを確認できます。 送信データはAEシステムに保存されます。 |
TDSDKModeDebugOnly | DebugOnlyモードで収集データを送信します。 デバイスidをAEコンソールのテストデバイスリストに追加する必要があります。 AEコンソールの「デバッグモード」メニューで、リアルタイムに収集されたデータを確認できます。 送信データはAEシステムに保存されません。 |
2. クライアントパラメータ
クライアントトリガー型タスクを作成する際に、「クライアント条件」を入力できます。設定方法はクライアントトリガー型タスクの作成を参照してください。
「クライアント条件」で使用できるパラメータは、クライアントが自動収集する環境パラメータと、TDRemoteConfig SDKで設定したクライアントパラメータです。TDRemoteConfig SDKが提供するインターフェースでカスタムのクライアントパラメータを設定した後、そのカスタムクライアントパラメータをAE管理画面に追加すると、エンゲージタスクで使用できます。
注意:クライアントでSETするパラメータの名前とタイプは、AEのエンゲージ管理画面で設定したクライアントパラメータと一致させる必要があります。
クライアントパラメータの追加
#import <TDRemoteConfig/TDRemoteConfig.h>
// Set client parameters, multiple settings will take the union
[TDRemoteConfig addClientParams:@{
@"key": @"value"
}];
クライアントパラメータの削除
[TDRemoteConfig removeClientParam:@"key"];
クライアントパラメータの取得
// Get all client params
NSDictionary *dict = [TDRemoteConfig getClientParams];
// Get client parames value for key
id obj = [TDRemoteConfig getClientParamValueForKey:@"key"];
累積値タイプのクライアントパラメータ
[TDRemoteConfig accumulateNum:@(1) toClientParamKey:@"number_type_key"];
3. 取得タイミングのカスタマイズ
3.1 自動取得
次のシナリオでは、SDKがリモート設定データを自動的に取得します
- Appのコールドスタート
- Appのフォアグラウンド/バックグラウンドの切り替えで、前回からの間隔が6時間を超えた場合
- ThinkingSDKのアカウント体系に変更があった場合(login、logoutなど)
3.2 手動取得
SDKのメソッドを手動で呼び出して、いつでもリモート設定を取得できます
[TDStrategy fetch];
このAPIには内部で頻度制御があるため、頻繁に取得しないでください。
4. リーチファネルイベント
クライアントトリガー型チャンネルを作成する際に、リーチファネル設定をオンにできます。設定方法はチャンネル設定を参照してください。
リーチファネルをオンにすると、ファネルステップに関連付けるイベント名を設定できます。これにより、このチャンネルを使用するエンゲージタスクのデータ詳細ページで、設定したステップのコンバージョンデータを確認できます。
「実際到達」「プッシュクリック」に選択するイベントには、次の要件があります:
- イベントには、エンゲージ固有のパラメータを含める必要があります。このパラメータは、プッシュ内容のTDStrategyResultオブジェクトのopsPropertiesプロパティから取得できます。具体的な送信方法は次のとおりです:
#import <ThinkingSDK/ThinkingSDK.h>
- (void)tdStrategyDidTrigger:(TDStrategyResult *)result {
// “ops_click”はご自身のメタイベント名に置き換えてください
[TDAnalytics track:@"ops_click" properties:result.opsProperties];
}
5. テスト送信
チャンネルの利用可否とタスクの有効性をすばやく検証できるよう、SDKはテストモードの有効化に対応しています。
TDSettings *settings = [[TDSettings alloc] init];
// debug
settings.mode = TDSDKModeDebug;
settings.enableLog = YES;
settings.appId = @"APPID";
settings.serverUrl = @"SERVER_URL";
[TDApp startWithSetting:settings];
クライアントでdebugモードを有効にすると、5秒ごとにテストタスクを取得します。AEのエンゲージモジュールでは、チャンネルテストまたはタスクテストを作成できます。タスクがトリガーを待っている間は、フロントエンドのページで進捗ノードを確認できます。
参考ドキュメント:タスクのテスト送信、チャンネルのテスト送信
クライアントトリガー型のテスト送信にはテストデバイスが必要です。テストデバイスリストでテストデバイスを選択または追加できます

