パーソナライゼーションの配信
- トピック:
- APIs/SDKs
作成対象:
- 開発者
手順の概要
- 組織の on-device decisioning を有効にする
- Experience Targeting (XT)アクティビティの作成
- オーディエンスごとにパーソナライズされたエクスペリエンスの定義
- オーディエンスごとにパーソナライズされたエクスペリエンスの検証
- レポートの設定
- KPI を追跡するための指標の追加
- パーソナライズされたオファーをアプリケーションに実装
- コンバージョンイベントを追跡するコードの実装
- Experience Targeting (XT)パーソナライゼーションアクティビティの有効化
あなたがツーリング会社だとします。 特定の旅行パッケージに対して 25% オフのパーソナライズされたオファーを配信する場合。 オファーがユーザーの共感を得られるよう、宛先の都市のランドマークを表示することにしました。 また、パーソナライズされたオファーの配信がゼロに近い待ち時間で実行されるようにすることで、ユーザーエクスペリエンスに悪影響を与えず、結果をゆがめることもありません。
1.組織の on-device decisioning を有効にする
-
オンデバイス判定を有効にすることで、A/B アクティビティがほぼゼロの待ち時間で実行されるようになります。 この機能を有効にするには、Adobe Target で Administration/Implementation/Account details に移動し、「On-Device Decisioning」トグルを有効にします。
NOTE
On-Device Decisioning の切り替えを有効または無効にするには、管理者または承認者 ユーザーの役割が必要です。「On-Device Decisioning」切替スイッチを有効 Adobe Target すると、クライアントの ルールアーティファクト の生成を開始します。
2. Experience Targeting (XT)アクティビティの作成
-
Adobe Target で、Activities ページに移動し、Create Activity/Experience Targeting を選択します。
-
Create Experience Targeting Activity モーダルでは、デフォルトの Web オプションを選択した状態(1)のままにし、experience composer として Form を選択し(2)、ワークスペースとプロパティを選択し(3)、「Next」(4)をクリックします。
3. オーディエンスごとにパーソナライズされたエクスペリエンスを定義する
-
アクティビティ作成の Experiences の手順で、「Change Audience」をクリックし、カリフォルニア州サンフランシスコへの旅行を希望する訪問者のオーディエンスを作成します。
-
Create Audience モーダルで、
destinationCity = San Francisco
の場所にカスタムルールを定義します。 これは、サンフランシスコに旅行したいユーザーのグループを定義します。 -
Experiences の手順で、ゴールデンゲートBridgeに関する特別なオファーをレンダリングするアプリケーション内の場所の名前(1)を入力します。 次の例では、ホームページは、HTMLオファー(2)に対して選択された場所であり、Content の領域で定義されています。
-
「Add Experience Targeting」をクリックして、別のターゲティングオーディエンスを追加します。 今回は、
destinationCity = New York
のオーディエンスルールを定義して、ニューヨークに旅行するオーディエンスをターゲットにします。 エンパイアステートビルに関する特別なオファーをレンダリングする場所を、アプリケーション内で定義します。 ここに示す例では、homepage
はHTMLオファー(2)に対して選択された場所であり、Content 領域で定義されています。
4. オーディエンスごとにパーソナライズされたエクスペリエンスを検証する
Targeting の手順では、オーディエンスごとに目的のパーソナライズされたエクスペリエンスを設定したことを確認します。
5. レポートの設定
Goals & Settings の手順で、Adobe Target UI でアクティビティの結果を表示する Reporting Source として Adobe Target を選択するか、Adobe Analytics UI で表示する Adobe Analytics を選択します。
6. KPI を追跡するための指標の追加
アクティビティの成功を測定する Goal Metric を選択します。 この例では、コンバージョンが成功するかは、ユーザーがパーソナライズされた宛先オファーをクリックしたかどうかに基づきます。
7. パーソナライズされたオファーをアプリケーションに実装する
const TargetClient = require("@adobe/target-nodejs-sdk");
const CONFIG = {
client: "acmeclient",
organizationId: "1234567890@AdobeOrg"
};
const targetClient = TargetClient.create(CONFIG);
targetClient.getOffers({
request: {
execute: {
pageLoad: {
parameters: {
destinationCity: "San Francisco"
}
}
}
}
})
.then(console.log)
.catch(console.error);
ClientConfig config = ClientConfig.builder()
.client("acmeclient")
.organizationId("1234567890@AdobeOrg")
.build();
TargetClient targetClient = TargetClient.create(config);
Context context = new Context().channel(ChannelType.WEB);
ExecuteRequest executeRequest = new ExecuteRequest();
RequestDetails pageLoad = new RequestDetails();
pageLoad.setParameters(
new HashMap<String, String>() {
{
put("destinationCity", "San Francisco");
}
});
executeRequest.setPageLoad(pageLoad);
TargetDeliveryRequest request = TargetDeliveryRequest.builder()
.context(context)
.execute(executeRequest)
.build();
TargetDeliveryResponse offers = targetClient.getOffers(request);
8. コンバージョンイベントを追跡するコードの実装
//... Code removed for brevity
//When a conversion happens
TargetClient.sendNotifications({
targetCookie,
"request" : {
"notifications" : [
{
type: "click",
timestamp : Date.now(),
id: "conversion",
mbox : {
name : "destinationOffer"
}
}
]
}
})
ClientConfig config = ClientConfig.builder()
.client("acmeclient")
.organizationId("1234567890@AdobeOrg")
.build();
TargetClient targetClient = TargetClient.create(config);
Context context = new Context().channel(ChannelType.WEB);
ExecuteRequest executeRequest = new ExecuteRequest();
RequestDetails pageLoad = new RequestDetails();
pageLoad.setParameters(
new HashMap<String, String>() {
{
put("destinationCity", "San Francisco");
}
});
executeRequest.setPageLoad(pageLoad);
NotificationDeliveryService notificationDeliveryService = new NotificationDeliveryService();
Notification notification = new Notification();
notification.setId("conversion");
notification.setImpressionId(UUID.randomUUID().toString());
notification.setType(MetricType.CLICK);
notification.setTimestamp(System.currentTimeMillis());
notification.setTokens(
Collections.singletonList(
"IbG2Jz2xmHaqX7Ml/YRxRGqipfsIHvVzTQxHolz2IpSCnQ9Y9OaLL2gsdrWQTvE54PwSz67rmXWmSnkXpSSS2Q=="));
TargetDeliveryRequest targetDeliveryRequest =
TargetDeliveryRequest.builder()
.context(context)
.execute(executeRequest)
.notifications(Collections.singletonList(notification))
.build();
TargetDeliveryResponse offers = targetClient.getOffers(request);
notificationDeliveryService.sendNotification(request);
9. エクスペリエンスのターゲット設定(XT)アクティビティをアクティブ化する