APIリファレンス
Tealium for Xamarinが提供するクラスとメソッドのリファレンスガイド
クラス: Tealium
Tealium XamarinライブラリのTealiumクラスのメソッドと定数。
AddRemoteCommand()
リモートコマンドをリモートコマンドマネージャに追加します。
void AddRemoteCommand(IRemoteCommand remoteCommand);
| パラメーター | 型 | 説明 |
|---|---|---|
remoteCommand |
IRemoteCommand |
IRemoteCommandインターフェースの実装で、必要なリモートコマンドのプロパティを提供します。 |
例:
public class MyRemoteCommand : IRemoteCommand
{
public string CommandId => "my_remote_command";
public string Description => "description of my remote command";
public string Path => null;
public string Url => null;
public void Dispose()
{
//
}
public void HandleResponse(IRemoteCommandResponse response)
{
var str = response.Payload.GetValueForKey<String>("key");
if (str == "")
{
// etc
}
}
}
tealium.AddRemoteCommand(new MyRemoteCommand());
AddToDataLayer()
指定された有効期限のためにデータを永続データストレージに追加します。
void AddToDataLayer(IDictionary<string, object> data, Expiry expiry);
| パラメーター | 型 | 説明 |
|---|---|---|
data |
IDictionary<string, object> |
キーが文字列で値がプリミティブまたはコレクションであるキー値ペアのIDictionary |
expiry |
Expiry |
データを永続化する期間 |
tealium.AddToDataLayer(new Dictionary<string, object> {
{ "user_language", lang }
}, Expiry.Forever);
ClearStoredVisitorIds()
保存されている訪問IDをクリアし、新しいIDを生成します。主に法的なコンプライアンスのために使用されます。
データレイヤーにvisitorIdentityKeyというキーが含まれている場合、訪問IDはそのキーに基づいて引き続き保存されます。
tealium.ClearStoredVisitorIds();
保存がクリアされた後に現在のアイデンティティと新しくリセットされたvisitorIdを保存しないようにするには、データレイヤーからアイデンティティキーを事前に削除する必要があります(RemoveFromDataLayer()を参照)。
ConsentCategory
同意カテゴリの値。GetConsentCategoriesおよびSetConsentCategoriesで使用します。
同意カテゴリは次のとおりです。
ConsentManager.ConsentCategory.AnalyticsConsentManager.ConsentCategory.AffiliatesConsentManager.ConsentCategory.BigDataConsentManager.ConsentCategory.CdpConsentManager.ConsentCategory.CookieMatchConsentManager.ConsentCategory.CrmConsentManager.ConsentCategory.DisplayAdsConsentManager.ConsentCategory.EmailConsentManager.ConsentCategory.EngagementConsentManager.ConsentCategory.MiscConsentManager.ConsentCategory.MobileConsentManager.ConsentCategory.MonitoringConsentManager.ConsentCategory.PersonalizationConsentManager.ConsentCategory.SearchConsentManager.ConsentCategory.Social
ConsentStatus
同意ステータスの値。SetConsentStatus()で使用します。
| 値 | 説明 |
|---|---|
ConsentManager.ConsentStatus.Consented |
同意済み |
ConsentManager.ConsentStatus.NotConsented |
同意されていない |
ConsentManager.ConsentStatus.Unknown |
不明 |
Environment
環境は、3つのデフォルト環境(Dev、QA、Prod)または公開する任意のカスタム環境のいずれかです。
| 値 | 説明 |
|---|---|
Environment.dev |
開発 |
Environment.qa |
QA/UAT |
Environment.prod |
本番 |
Expiry
永続または揮発性データの有効期間を定義します。AddToDataLayer()で使用します。
| 値 | 説明 |
|---|---|
Expiry.Session |
現在のアクティブなセッションの長さ |
Expiry.UntilRestart |
次の再起動までの時間 |
Expiry.Forever |
アプリが削除されるまでの時間 |
GetFromDataLayer()
永続データレイヤーから指定されたキーの値を取得します。
object? GetFromDataLayer(string key);
| パラメーター | 型 | 説明 |
|---|---|---|
key |
String |
データレイヤーから取得するキー |
string myString = (string)tealium.GetFromDataLayer("user_language");
GetConsentCategories()
ユーザーが同意したカテゴリのリストを取得します。
List<ConsentCategory>? GetConsentCategories();
例:
tealium.GetConsentCategories().ForEach((c) =>
{
if (c == ConsentManager.ConsentCategory.Analytics)
{
// Analyticsに同意済み
}
});
GetConsentStatus()
ユーザーの同意の現在の状態を取得します。ConsentStatusの値を返します。
ConsentStatus GetConsentStatus();
例:
switch (tealium.GetConsentStatus()) {
case ConsentManager.ConsentStatus.Unknown:
break;
case ConsentManager.ConsentStatus.Consented:
break;
case ConsentManager.ConsentStatus.NotConsented:
break;
}
GetVisitorId()
ユーザーの訪問IDを取得し、コールバック関数の形式で返します。
string? visitorId = tealium.GetVisitorId();
JoinTrace()
指定したIDでトレースに参加します。Tealium Customer Data Hubのトレース機能について詳しくは、リンクを参照してください。
tealium.JoinTrace(id);
| パラメーター | 型 | 説明 | 例 |
|---|---|---|---|
id |
String |
トレースID | abc123xy |
LeaveTrace()
トレースは、leaveTrace()メソッドが呼び出されるまでアプリのセッションの間有効であり、以前に参加したトレースを終了し、訪問セッションを終了します。
tealium.LeaveTrace();
RemoveFromDataLayer()
AddToDataLayer()を使用して以前に構成された永続データを削除します。
void RemoveFromDataLayer(ICollection<string> keys);
| パラメーター | 型 | 説明 |
|---|---|---|
keys |
ICollection<String> |
キー名のコレクション |
tealium.RemoveFromDataLayer(new string[] { "key1", "key2" });
RemoveRemoteCommand()
リモートコマンドマネージャからリモートコマンドを削除します。
void RemoveRemoteCommand(string id);
| パラメーター | 型 | 説明 |
|---|---|---|
id |
String |
削除するコマンドIDの名前 |
tealium.RemoveRemoteCommand("firebase");
ResetVisitorId()
訪問IDをリセットし、新しいIDを生成します。
tealium.ResetVisitorId();
SetConsentCategories()
ユーザーが同意したカテゴリのリストを構成します。ConsentCategoryと一緒に使用します。
void SetConsentCategories(List<ConsentCategory> categories);
| パラメーター | 型 | 説明 |
|---|---|---|
categories |
List<ConsentCategory> |
ユーザーの同意カテゴリのリスト |
tealium.SetConsentCategories(new List<ConsentManager.ConsentCategory>()
{
ConsentManager.ConsentCategory.DisplayAds,
ConsentManager.ConsentCategory.Analytics
});
SetConsentExpiryListener()
同意の有効期限が切れたときに実行するコールバックメソッドを構成します。
void SetConsentExpiryListener(Action callback);
| パラメーター | 型 | 説明 |
|---|---|---|
callback |
Action |
同意が期限切れになったときに実行するコード |
tealium.SetConsentExpiryListener(() =>
{
System.Diagnostics.Debug.WriteLine("同意の有効期限が切れました");
});
SetConsentStatus()
ユーザーの同意ステータスを構成します。デフォルト値は.Unknownです。
void SetConsentStatus(ConsentStatus status);
| パラメーター | 型 | 説明 |
|---|---|---|
status |
ConsentStatus |
ユーザーの同意ステータス。ConsentManager.ConsentStatusを参照してください。 |
tealium.SetConsentStatus(ConsentManager.ConsentStatus.NotConsented);
SetVisitorServiceListener()
訪問プロファイルが更新されたときに実行するコールバック関数を構成します。更新されたVisitorProfileはコールバック応答で提供されます。visitorServiceEnabledがtrueに構成されている場合に使用します。
Tealium AudienceStreamのライセンスを持っており、モバイルアプリケーションでユーザーエクスペリエンスを向上させるために訪問プロファイルを使用したい場合にこの機能を使用します。
void SetVisitorServiceListener(Action callback);
| パラメーター | 型 | 説明 |
|---|---|---|
callback |
Action |
訪問プロファイルが取得されたときに実行するコード |
tealium.SetVisitorServiceListener((visitorProfile) =>
{
System.Diagnostics.Debug.WriteLine("訪問が更新されました");
System.Diagnostics.Debug.WriteLine($"訪問: {visitorProfile}");
});
TerminateIntance()
Tealiumライブラリを無効にし、すべてのモジュール参照を削除します。
tealium.TerminateIntance();
Track()
TealiumEventまたはTealiumViewディスパッチでイベントをトラッキングします。
tealium.Track(dispatch);
| パラメーター | 型 | 説明 |
|---|---|---|
dispatch |
TealiumViewまたはTealiumEvent |
イベント名とデータレイヤーを持つTealiumディスパッチ |
TealiumView
画面ビューをトラッキングするには、TealiumView(viewName, data)のインスタンスをTrack()メソッドに渡します。TealiumViewは、トラッキングコールでtealium_eventとして表示されるビュー名とオプションのデータディクショナリで構成されています。
let tealView = TealiumView("VIEW_NAME", {"key": "value"});
tealium.Track(tealView);
TealiumEvent
ビュー以外のイベントをトラッキングするには、TealiumEvent(eventName, data)のインスタンスをTrack()メソッドに渡します。TealiumEventは、トラッキングコールでtealium_eventとして表示されるイベント名とオプションのデータディクショナリで構成されています。
let tealEvent = TealiumEvent("EVENT_NAME", {"key": "value"});
tealium.Track(tealEvent);
クラス: TealiumConfig
TealiumConfigクラスのプロパティを要約します。
| パラメーター | 型 | 説明 | 例 |
|---|---|---|---|
account |
String |
(必須) Tealiumアカウント名 | "companyXYZ" |
profile |
String |
(必須) Tealiumプロファイル名 | "main" |
environment |
Environment |
(必須) Tealium環境名 | Environment.dev |
dataSource |
String |
CDHデータソースキー | "abc123" |
collectors |
Collectors[] |
(必須) Tealiumライブラリを初期化するためのCollectorsのリストを構成します |
[Collectors.AppData] |
dispatchers |
Dispatchers[] |
(必須) Tealiumライブラリを初期化するためのDispatchersのリストを構成します |
[Dispatchers.Collect] |
customVisitorId |
String |
カスタムの訪問IDを構成します | "ALK2398LSDKJ3289SLKJ3298SLKJ3" |
memoryReportingEnabled |
Boolean |
デバイスデータモジュールでメモリレポートを有効または無効にします(デフォルト:無効)。 | true |
overrideCollectDomain |
String |
Tealium Collect URLのドメインをオーバーライドします。ファーストパーティドメインを使用する場合に使用します。 | "your-domain.com" |
overrideCollectURL |
String |
Tealium Collect URLを別のエンドポイントに送信するためにオーバーライドします。イベントバッチング機能を使用している場合は、overrideCollectBatchURLプロパティもオーバーライドする必要があります。 |
"https://custom-domain.com/event" |
overrideCollectBatchURL |
String |
Tealium CollectバッチURLを別のエンドポイントに送信するためにオーバーライドします。 | "https://custom-domain.com/batch-event" |
overrideLibrarySettingsURL |
String |
パブリッシュ構成URLをオーバーライドします。 | "https://custom-domain.com/mobile.html" |
overrideTagManagementURL |
String |
タグ管理モジュールで使用するデフォルトのURLをオーバーライドします。Tealium JavaScriptファイルを自己ホストする場合に必要です。 | "https://custom-domain.com/path/env/utag.js" |
deepLinkTrackingEnabled |
Boolean |
FacebookなどのソースからのアプリへのリンクやQRトレースなどの標準のディープリンクの自動トラッキングを有効または無効にします(デフォルト:有効)。 | false |
qrTraceEnabled |
Boolean |
QRトレースを有効または無効にします(デフォルト:有効)。 | false |
loglevel |
LogLevel |
ログレベルプロパティを構成し、ログに記録される情報量を制御します(デフォルト:silent) | LogLevel.dev |
consentExpiry |
ConsentExpiry |
ユーザーの同意構成の有効期限を構成します(デフォルトはポリシーに依存します) | ConsentExpiry(90, TimeUnit.days) |
consentLoggingEnabled |
Boolean |
同意ログ記録機能を有効にします。すべての同意ステータスの変更をTealium Customer Data Hubに送信して監査目的で使用します(デフォルト:有効) | true |
consentPolicy |
ConsentPolicy |
同意ポリシーを構成します。例:CCPAまたはGDPR。このプロパティが構成されている場合、同意マネージャーが有効になります。 | ConsentPolicy.gdpr |
lifecycleAutotrackingEnabled |
Boolean |
ライフサイクルの自動トラッキングを有効または無効にします(デフォルト:有効) | false |
useRemoteLibrarySettings |
Boolean |
モバイルパブリッシュ構成を有効または無効にします(デフォルト:有効)。Tealium iQ Tag Managementでモバイルパブリッシュ構成を構成するか、機能を無効にします。 | false |
visitorServiceEnabled |
Boolean |
データレイヤーエンリッチメントAPIを使用して訪問プロファイルを自動的に取得するかどうかを有効または無効にします(デフォルト:無効) | true |
remoteCommands |
RemoteCommand[] |
インスタンスが準備完了のときに追加するRemoteCommandオブジェクトのリストを構成します | [{ id: "hello-world", callback: (payload) => { console.log("hello-world: " + JSON.stringify(payload)); } }] |
overrideConsentCategoriesKey |
String |
同意カテゴリのイベント属性の名前をオーバーライドします。これにより、サーバーサイドの同意の自動強制を無効にするために使用できます。サーバーサイド同意の自動強制を無効にする方法を参照してください(デフォルト:consent_categories) |
consent_categories_granted |
visitorIdentityKey |
String |
訪問の切り替えをサポートし、アプリの複数のユーザーを識別するための共有キーを指定するために使用します。 | user_profile_id |
Collectors
コレクタは、デバイスから補足情報を収集し、Tealium Customer Data Hubに送信する前にデータレイヤーに追加するモジュールです。一部のコレクタはコアライブラリに含まれており、他のコレクタはオプションとして別のモジュールとしてインストールされます。
次のテーブルに、利用可能なコレクタをリストします。デフォルトのコレクタは、コレクタ名の横に*が付いています。
| コレクタ名 | TealiumConfigの参照 |
|---|---|
AppData* |
Collectors.AppData |
Connectivity* |
Collectors.Connectivity |
Device |
Collectors.Device |
Lifecycle |
Collectors.Lifecycle |
これらのモジュールは、TealiumConfigで構成されたCollectorsプロパティを使用して有効または無効にできます。
TealiumConfig tealConfig = new TealiumConfig(
// ...
new List<Collectors> {
Collectors.LifeCycle, Collectors.Device
}
// ...
);
ConsentExpiry
TealiumConfigオブジェクトの同意構成の有効期限を構成します。
| パラメーター | 型 | 説明 |
|---|---|---|
time |
Number |
有効期限までの時間 |
unit |
TimeUnit |
有効期限までの時間の単位。TimeUnit.Minutes、TimeUnit.Hours、TimeUnit.Days、TimeUnit.Monthsのいずれかです。 |
TealiumConfig config = new TealiumConfig(
//...
consentExpiry = new TimeUnit(90, TimeUnit.Days)),
//...
);
ConsentPolicy
TealiumConfigオブジェクトで使用する同意ポリシーを構成します。同意ポリシーが構成されていない場合、同意マネージャーは無効になります。
TealiumConfig config = new TealiumConfig(
//...
consentPolicy = ConsentPolicy.GDPR,
//...
);
同意値:
ConsentPolicy.GDPRConsentPolicy.CCPA
Dispatchers
ディスパッチャは、データをTealiumエンドポイントに送信するモジュールです。これらはTealiumConfigオブジェクトに構成されます。
TealiumConfig tealConfig = new TealiumConfig(
// ...
new List<Dispatchers> {
Dispatchers.Collect, Dispatchers.RemoteCommands
}
// ...
);
次のディスパッチャが利用可能です。
Dispatchers.CollectDispatchers.RemoteCommandsDispatchers.TagManagement
少なくとも1つのディスパッチャが必要です。
LogLevel
ログレベルプロパティを構成し、ログに記録される情報量を制御します。次の値のいずれかを構成します。
| 値 | 説明 |
|---|---|
LogLevel.dev |
アプリケーションの進行状況を示す情報イベント |
LogLevel.qa |
デバッグレベルのイベントで、アプリケーションのデバッグに使用されます |
LogLevel.prod |
クリティカルなエラーや障害などのエラーイベント |
LogLevel.silent |
ログなし(デフォルト) |
IRemoteCommand
構成済みのリモートコマンドを定義するインターフェース。
| 値 | 説明 |
|---|---|
CommandId |
リモートコマンドの一意の識別子名 |
Description |
(オプション) リモートコマンドの一意の識別子名 |
Path |
(オプション) マッピングに使用するローカルファイル |
Url |
(オプション) マッピングに使用するリモートファイル |
IVisitorProfile
(TealiumConfig.visitorServiceEnabledで使用するため。)
訪問プロファイルオブジェクトには、訪問サービスから返される訪問属性が含まれています。currentVisitプロパティには、現在の訪問にスコープが限定された属性が含まれています。各属性の値は、サブスクリプトを使用してIDでアクセスします。属性が存在しない場合は、nullが返されます。
| パラメーター | プロパティ | 値 |
|---|---|---|
ArraysOfBooleans |
IDictionary<string, IList<bool>> |
id: "5129", value: [true,false,true,true] |
ArraysOfNumbers |
IDictionary<string, IList<double>> |
id: "57", value: [4.82125, 16.8, 0.5714285714285714] |
ArraysOfStrings |
IDictionary<string, IList<string>> |
id: "5213", value: ["green shirts", "green shirts", "blue shirts"] |
Audiences |
IDictionary<string, string> |
id: "tealiummobile\_demo\_103", value: "iOS Users" |
Badges |
IDictionary<string, bool> |
id: "2815", value: true |
Booleans |
IDictionary<string, bool> |
id: "4868", value: true |
CurrentVisit |
ICurrentVisit |
|
Dates |
IDictionary<string, long> |
id: "22", value: 1567120112000 |
Numbers |
IDictionary<string, double> |
id: "5728", value: 4.82125 |
SetOfStrings |
IDictionary<string, ISet<string>> |
id: "5211", value: ["green shirts", "red shirts", "blue shirts"] |
Strings |
`IDictionary<string, string> | id: "5380", value: "green shirts" |
Tallies |
IDictionary<string, IDictionary<string, double>> |
"57": [["category 1": 2.0], "category 2": 1.0]] |
ICurrentVisit
現在の訪問にスコープが限定された属性を含むオブジェクト。
| パラメーター | プロパティ | 値 |
|---|---|---|
ArraysOfBooleans |
IDictionary<string, IList<bool>> |
id: "5129", value: [true,false,true,true] |
ArraysOfNumbers |
IDictionary<string, IList<double>> |
id: "57", value: [4.82125, 16.8, 0.5714285714285714] |
ArraysOfStrings |
IDictionary<string, IList<string>> |
id: "5213", value: ["green shirts", "green shirts", "blue shirts"] |
Booleans |
IDictionary<string, bool> |
id: "4868", value: true |
Dates |
IDictionary<string, long> |
id: "22", value: 1567120112000 |
Numbers |
IDictionary<string, double> |
id: "5728", value: 4.82125 |
SetOfStrings |
IDictionary<string, ISet<string>> |
id: "5211", value: ["green shirts", "red shirts", "blue shirts"] |
Strings |
`IDictionary<string, string> | id: "5380", value: "green shirts" |
Tallies |
IDictionary<string, IDictionary<string, double>> |
"57": [["category 1": 2.0], "category 2": 1.0]] |
TotalEventCount |
int |
42 |
CreatedAt |
long |
1638236024 |
最終更新日 :: 2024年April月10日