AndroidおよびSwift/iOS向けのFullStory用Tealiumリモートコマンド統合。
要件
- 以下のいずれかのモバイルライブラリ:
- Tealium for Android-Kotlin(1.0.0以降)
- Tealium for Android-Java(FullStory 1.0.0以降の場合は5.9.0以降、以前のバージョンの場合は5.9.0未満)
- Tealium for iOS-Swift(2.18.0以降)
- 以下のいずれかのリモートコマンド統合:
- FullStoryリモートコマンドJSONファイル(Android-Kotlin 1.0.0以降またはiOS-Swift 2.18.0以降が必要)
- タグ管理のFullStoryリモートコマンドタグ
仕組み
FullStory統合では、次の3つのコンポーネントを使用します。
- FullStoryネイティブSDK。
- FullStoryのメソッドをラップするリモートコマンドモジュール。
- イベントトラッキングをネイティブのFullStory呼び出しに変換する、JSON構成ファイルまたはリモートコマンドタグ。
FullStoryリモートコマンドモジュールをアプリに追加すると、必要なFullStoryライブラリが自動的にインストールおよびビルドされます。依存関係マネージャーを使用してインストールする場合、FullStory SDKを個別にインストールする必要はありません。
依存関係マネージャーとしてCocoaPodsまたはCarthageを使用している場合は、FullStoryコマンドラインツールを手動でダウンロードし、ビルドスクリプトとして追加する必要があります。
リモートコマンドには、次の2つのオプションがあります。
- リモートでホストするか、アプリ内にローカルで配置したJSON構成ファイルを使用する(推奨)。
- タグ管理を使用してマッピングを構成し、ベンダー統合用のリモートコマンドタグを追加する。
詳細については、ベンダー統合を参照してください。
インストール
依存関係マネージャー
次のいずれかの依存関係マネージャーを使用してモジュールをインストールすることをお勧めします。
- Xcodeプロジェクトで、File > Add Packages… > Add Package Dependencyを選択します。
- 次のリポジトリURLを入力します:
https://github.com/tealium/tealium-ios-fullstory-remote-command。 - バージョンルールを構成します。
Up to next major構成をお勧めします。現在のTealiumFullstoryバージョンが一覧に表示されない場合は、Swiftパッケージのキャッシュをリセットしてください。 - インストールする
TealiumFullstoryモジュールを選択し、そのモジュールをインストールするアプリターゲットを選択します。
プロジェクトに複数のアプリターゲットがあり、複数のターゲットでTealiumFullstoryモジュールが必要な場合は、Frameworks, Libraries, and Embedded Contentセクションで手動で追加する必要があります。
追加のアプリターゲットにTealiumFullstoryをインストールするには、次の手順を実行します。
- Project NavigatorでXcodeプロジェクトを選択します。
- XcodeプロジェクトのTARGETSセクションでアプリターゲットを選択します。
- General > Frameworks, Libraries & Embedded Contentに移動し、
TealiumFullstoryモジュールを選択してアプリターゲットに追加します。
Tealium Swiftライブラリから追加のモジュールを追加するには、Swift Package Managerの手順に従ってください。
CocoaPodsを使用してiOS用FullStoryリモートコマンドをインストールするには、次の手順を実行します。
- Podfileに
tealium-swiftがすでに存在する場合は削除します。tealium-swiftへの依存関係は、すでにTealiumFullstoryフレームワークに含まれています。 - 次の依存関係をPodfileに追加します。
pod "TealiumFullstory"TealiumFullstoryPodには、次のTealiumSwift依存関係が含まれています。'tealium-swift/Core' 'tealium-swift/RemoteCommands' 'tealium-swift/TagManagement' TealiumSwiftおよびTealiumFullstoryモジュールをTealiumHelperファイルと、TealiumクラスまたはFullStoryリモートコマンドにアクセスするその他のファイルにインポートします。
Carthageを使用してiOS用FullStoryリモートコマンドをインストールするには、次の手順を実行します。
- Cartfileから
tealium-swiftを削除します。tealium-swiftへの依存関係は、すでにTealiumFullstoryフレームワークに含まれています。 - 次の依存関係をCartfileに追加します。
github "tealium/tealium-ios-fullstory-remote-command"
Mavenを使用してAndroid用FullStoryリモートコマンドをインストールするには、次の手順を実行します。
- まだ実行していない場合は、Tealium for Android(Kotlin)またはTealium for Android(Java)をインストールし、Tealium Maven URLをプロジェクトの最上位
build.gradleファイルに追加します。allprojects { repositories { mavenCentral() maven { url "https://maven.tealiumiq.com/android/releases/" } maven { url "https://maven.fullstory.com" } } } - アプリプロジェクトの
build.gradleファイルに次の依存関係を追加し、FullStory SDKとTealium-FullStoryリモートコマンドの両方をインポートします。dependencies { implementation 'com.tealium.remotecommands:fullstory:1.1.0' } - FullStory Gradleプラグインをアプリ/モジュールの
build.gradleに追加します。<PLUGIN PROPERTIES>を利用可能なプロパティに置き換えます。fullstory { <PLUGIN PROPERTIES> }
手動インストール(iOS)
FullStoryリモートコマンドを手動でインストールするには、Tealium for Swiftライブラリがインストールされている必要があります。iOSプロジェクトにFullStoryリモートコマンドをインストールするには、次の手順を実行します。
- まだインストールしていない場合は、FullStory SDKをインストールします。
- Tealium iOS FullStoryリモートコマンドリポジトリをクローンし、
Sourcesフォルダー内のファイルをプロジェクトにドラッグします。 Dispatchers.RemoteCommandsをディスパッチャーとして追加します。remoteAPIEnabled構成フラグをtrueに構成します。
初期化
すべてのTealiumライブラリで、初期化時にFullStoryリモートコマンドを登録します。
Android(Kotlin)
JSON構成ファイルまたはリモートコマンドタグを使用して、TealiumのAndroid(Kotlin)ライブラリのリモートコマンドを初期化します。
次のコードは、ローカルファイルオプションを使用するJSONリモートコマンド機能向けに設計されています。
val config = TealiumConfig(application,
"ACCOUNT",
"PROFILE",
Environment.DEV,
dispatchers = mutableSetOf(Dispatchers.RemoteCommands));
var tealium = Tealium.create(TEALIUM_MAIN, config) {
// Initialize FullStory Remote Command
val fullstoryCommand = FullStoryRemoteCommand()
// register the command
remoteCommands?.add(fullstoryCommand, filename = "tealium-fullstory.json")
}
次のコードは、リモートコマンドタグ機能向けに設計されています。
val config = TealiumConfig(application,
"ACCOUNT",
"PROFILE",
Environment.DEV,
dispatchers = mutableSetOf(Dispatchers.RemoteCommands));
var tealium = Tealium.create(TEALIUM_MAIN, config) {
// Initialize FullStory Remote Command
val fullstoryCommand = FullStoryRemoteCommand()
// register the command
remoteCommands?.add(fullstoryCommand)
}
Android(Java)
Android 向け JSON リモートコマンドファイル機能は、Kotlin SDK でのみ利用できます。
次のコードは、リモートコマンドタグ機能で使用するためのものです。
Tealium.Config config = Tealium.Config.create(application, "ACCOUNT", "PROFILE", "ENVIRONMENT");
Tealium teal = Tealium.createInstance(TEALIUM_MAIN, config);
FullStoryRemoteCommand fullstory = new FullStoryRemoteCommand();
// register the command
teal.addRemoteCommand(fullstory);
iOS(Swift)
Tealium の iOS(Swift)ライブラリでは、JSON 構成ファイルまたはリモートコマンドタグを使用してリモートコマンドを初期化します。
次のコードは、ローカルファイルオプションを使用する JSON リモートコマンド機能で使用するためのものです。
var tealium : Tealium?
let config = TealiumConfig(account: "ACCOUNT",
profile: "PROFILE",
environment: "ENVIRONMENT",
dataSource: "DATASOURCE",
options: nil)
config.dispatchers = [Dispatchers.TagManagement,
Dispatchers.RemoteCommands]
config.remoteAPIEnabled = true // Required to use Remote Commands
tealium = Tealium(config: config) { _ in
guard let remoteCommands = self.tealium?.remoteCommands else {
return
}
let fullstory = FullstoryRemoteCommand(type: .local(file: "fullstory"))
remoteCommands.add(fullstory)
}
次のコードは、リモートコマンドタグ機能で使用するためのものです。
var tealium : Tealium?
let config = TealiumConfig(account: "ACCOUNT",
profile: "PROFILE",
environment: "ENVIRONMENT",
dataSource: "DATASOURCE",
options: nil)
config.dispatchers = [Dispatchers.TagManagement,
Dispatchers.RemoteCommands]
config.remoteAPIEnabled = true // Required to use Remote Commands
tealium = Tealium(config: config) { _ in
guard let remoteCommands = self.tealium?.remoteCommands else {
return
}
let fullstory = FullstoryRemoteCommand()
remoteCommands.add(fullstory)
}
JSON テンプレート
JSON 構成ファイルを使用してリモートコマンドを構成する場合は、次のテンプレートを参照して開始してください。このテンプレートには、標準的な E コマース実装で使用される一般的なマッピングが含まれています。必要に応じてマッピングを編集してください。
{
"config": {},
"mappings": {
"tealium_event": "event_name",
"uid": "uid_str",
"email": "user_variables.email_str",
"phone": "user_variables.phone_str",
"cart_id": "event.cart_id_str",
"product_id": "event.product_id_str",
"price": "event.price_real",
"name": "event.name_str",
"category": "event.categoryProperties"
},
"commands": {
"launch": "logevent",
"identify_user": "identify",
"tealiumSampleEvent": "logevent",
"tealiumSampleEventWithData": "logevent"
}
}
サポートされるメソッド
各 FullStory メソッドにコマンドをマッピングします。FullStory メソッドをトリガーするには、対応するコマンドを指定された形式で渡します。
| リモートコマンド | FullStory メソッド |
|---|---|
logevent | FS.event() |
identify | FS.identify() |
setuservariables | FS.setUserVars() |
shutdown | FS.shutdown() |
restart | FS.restart() |
consent | FS.consent() |
anonymize | FS.anonymize() |
resetidletimer | FS.resetIdleTimer() |
log | FS.log() |
FullStory SDK は Tealium SDK とともにインストールされるため、Tealium FullStory リモートコマンドタグで提供されていない機能であっても、SDK を直接呼び出すことで、FullStory の任意のネイティブ機能をトリガーできます。
SDK のセットアップ
初期化
FullStory SDK は起動時に自動的に初期化されます。
FullStory 開発者ガイド:SDK の初期セットアップ
イベントの記録
| リモートコマンド | FullStory メソッド |
|---|---|
logevent | FS.event() |
| パラメータ | 型 |
|---|---|
event_name(必須) | 文字列 |
event | マップ |
FullStory 開発者ガイド:イベントの記録
識別
| リモートコマンド | FullStory メソッド |
|---|---|
identify | FS.identify() |
| パラメータ | 型 |
|---|---|
uid(必須) | 文字列 |
user_variables | マップ |
FullStory 開発者ガイド:識別
ユーザー変数の構成
| リモートコマンド | FullStory メソッド |
|---|---|
setuservariables | FS.setUserVars() |
| パラメータ | 型 |
|---|---|
user_variables(必須) | マップ |
user_variables パラメータはキーと値のペアで構成されるオブジェクトを受け取ります。キーは strings であり、値にはデータ型を表すサフィックス(例:_str、_int、_bool)がエンリッチメントされます。詳細については、カスタム API プロパティの構成を参照してください。
FullStory 開発者ガイド:ユーザー変数の構成
シャットダウン
| リモートコマンド | FullStory メソッド |
|---|---|
shutdown | FS.shutdown() |
FullStory の記録を停止します。シャットダウン後に記録を再開するには、restart を使用します。
FullStory 開発者ガイド:シャットダウン
再起動
| リモートコマンド | FullStory メソッド |
|---|---|
restart | FS.restart() |
shutdown によって停止された FullStory の記録を再開します。
FullStory 開発者ガイド:再起動
同意
| リモートコマンド | FullStory メソッド |
|---|---|
consent | FS.consent() |
| パラメータ | 型 |
|---|---|
consent_granted(必須) | ブール値 |
FullStory のセッション記録に対するユーザーの同意を許可または取り消します。
FullStory 開発者ガイド:同意
匿名化
| リモートコマンド | FullStory メソッド |
|---|---|
anonymize | FS.anonymize() |
現在のユーザーセッションを匿名化し、以前に構成されたユーザー識別情報をすべて削除します。
FullStory 開発者ガイド:匿名化
アイドルタイマーのリセット
| リモートコマンド | FullStory メソッド |
|---|---|
resetidletimer | FS.resetIdleTimer() |
FullStory のアイドルタイムアウトタイマーをリセットし、現在のセッションを延長します。
FullStory 開発者ガイド:アイドルタイマーのリセット
ログ
| リモートコマンド | FullStory メソッド |
|---|---|
log | FS.log() |
| パラメーター | 型 |
|---|---|
log_level(必須) | 文字列 |
log_message(必須) | 文字列 |
指定されたレベルでメッセージをログに記録します。使用できる log_level の値はプラットフォームによって異なります。
| プラットフォーム | 使用できる値 |
|---|---|
| Android | log、error、warn/warning、info、debug |
| iOS | assert、error、warning、info、debug |
FullStory 開発者ガイド:ログ
最終更新日 :: 2026年November月3日