使用Adobe Target和Web SDK进行个性化

Adobe Experience Platform Web SDK可以将在Adobe Target中管理的个性化体验交付并渲染到Web渠道。 您可以使用名为可视化体验编辑器 (VEC)的WYSIWYG编辑器,或使用非可视化界面基于表单的体验编辑器,创建、激活并交付您的活动和个性化体验。

IMPORTANT
了解如何使用将Target从at.js 2.x迁移到Platform Web SDK教程将Target实施迁移到Platform Web SDK。
了解如何使用使用Web SDK实施Adobe Experience Cloud教程首次实施Target。 有关特定于Target的信息,请参阅标题为使用Platform Web SDK设置Target的教程部分。

以下功能已经过测试,当前在Target中受支持:

Web SDK系统图

下图可帮助您了解Target和Web SDK边缘决策的工作流。

使用Platform Web SDK的Adobe Target Edge Decisioning图表

调用
详细信息
1
设备加载Web SDK。 Web SDK向Edge Network发送请求,其中包含XDM数据、数据流环境ID、传入的参数和客户ID(可选)。 页面(或容器)已预先隐藏。
2
Edge Network将请求发送到边缘服务,以使用访客ID、同意和其他访客上下文信息(如地理位置和设备友好名称)对其进行扩充。
3
Edge Network使用访客ID和传入的参数将扩充的个性化请求发送给Target边缘。
4
配置文件脚本在执行后进入Target配置文件存储。 配置文件存储从受众库中获取区段(例如,从Adobe Analytics、Adobe Audience Manager、Adobe Experience Platform共享的区段)。
5
根据URL请求参数和配置文件数据,Target确定将为访客显示的当前页面视图和未来预取视图的活动和体验。 Target然后将它发送回Edge Network。
6
a.Edge Network将个性化响应发送回页面,其中可能包含其他个性化的配置文件值。 当前页面上的个性化内容会在默认内容不发生闪烁的情况下尽快显示。
b。作为用户操作在单页应用程序(SPA)中显示的视图的个性化内容将缓存,这样便可在触发视图时即时应用而无需额外的服务器调用。
c。Edge Network会发送访客ID和Cookie中的其他值,例如同意、会话ID、身份、Cookie检查和个性化。
7
Web SDK将通知从设备发送到Edge Network。
8
Edge Network将Analytics for Target (A4T)详细信息(活动、体验和转化元数据)转发到Analytics边缘。

正在启用Adobe Target

要启用Target,请执行以下操作:

  1. 使用适当的客户端代码启用数据流中的Target。
  2. renderDecisions选项添加到您的事件。

然后,您还可以选择添加以下选项:

  • decisionScopes:通过将此选项添加到您的事件中,检索特定活动(对于使用基于表单的编辑器创建的活动很有用)。
  • 预隐藏代码片段:仅隐藏页面的某些部分。

使用Adobe Target VEC

要将VEC与Web SDK实现结合使用,请安装并激活FirefoxChrome VEC Helper扩展。

有关详细信息,请参阅​ Adobe Target指南 ​中的可视化体验编辑器助手扩展

呈现个性化内容

有关详细信息,请参阅呈现个性化内容

XDM中的受众

在为通过Web SDK交付的Target活动定义受众时,必须定义和使用XDM。 定义XDM架构、类和架构字段组后,可创建由XDM数据定义的Target受众规则以进行定位。 在Target内,XDM数据在受众生成器中显示为自定义参数。 XDM使用点表示法序列化(例如,web.webPageDetails.name)。

如果您的Target活动具有使用自定义参数或用户配置文件的预定义受众,则无法通过SDK正确交付这些受众。 您必须改用XDM,而不是使用自定义参数或用户配置文件。 但是,有一些通过Web SDK支持的现成受众定向字段不需要XDM。 这些字段在Target UI中可用,不需要XDM:

  • Target库
  • 地理
  • 网络
  • 操作系统
  • 网页
  • 浏览器
  • 流量源
  • 时间范围

有关详细信息,请参阅​ Adobe Target指南 ​中的受众类别

响应令牌

响应令牌用于将元数据发送到Google或Facebook等第三方。 返回响应令牌
propositions -> items内的meta字段中。 以下是示例:

{
  "id": "AT:eyJhY3Rpdml0eUlkIjoiMTI2NzM2IiwiZXhwZXJpZW5jZUlkIjoiMCJ9",
  "scope": "__view__",
  "scopeDetails": ...,
  "renderAttempted": true,
  "items": [
    {
      "id": "0",
      "schema": "https://ns.adobe.com/personalization/dom-action",
      "meta": {
        "experience.id": "0",
        "activity.id": "126736",
        "offer.name": "Default Content",
        "offer.id": "0"
      }
    }
  ]
}

要收集响应令牌,您必须订阅alloy.sendEvent promise,通过propositions进行迭代,并从items -> meta中提取详细信息。

每个proposition都有一个renderAttempted布尔字段,用于指示proposition是否已呈现。 请参阅下面的示例:

alloy("sendEvent",
  {
    "renderDecisions": true,
    "decisionScopes": [
      "hero-container"
    ]
  }).then(result => {
    const { propositions } = result;

    // filter rendered propositions
    const renderedPropositions = propositions.filter(proposition => proposition.renderAttempted === true);

    // collect the item metadata that represents the response tokens
    const collectMetaData = (items) => {
      return items.filter(item => item.meta !== undefined).map(item => item.meta);
    }

    const pageLoadResponseTokens = renderedPropositions
      .map(proposition => collectMetaData(proposition.items))
      .filter(e => e.length > 0)
      .flatMap(e => e);
  });

启用自动渲染时,建议数组包含:

在页面加载时:

  • 基于表单的编辑器propositions,其中renderAttempted标志设置为false
  • 基于Visual Experience Composer的建议,renderAttempted标志设置为true
  • 对于标志设置为truerenderAttempted的单页应用程序视图,基于可视化体验编辑器的建议

查看时 — 更改(对于缓存的视图):

  • 对于标志设置为truerenderAttempted的单页应用程序视图,基于可视化体验编辑器的建议

禁用自动渲染时,建议数组包含:

在页面加载时:

  • 基于Form-based Composer的propositions,其中renderAttempted标志设置为false
  • 基于Visual Experience Composer的建议,其中renderAttempted标志设置为false
  • 基于Visual Experience Composer的单页应用程序视图建议,且标志设置为renderAttempted false

查看时 — 更改(对于缓存的视图):

  • 针对标志设置为falserenderAttempted的单页应用程序视图,基于可视化体验编辑器的建议

单个配置文件更新

通过Web SDK,您可以将个人资料更新到Target个人资料和Web SDK以作为体验事件。

要更新Target配置文件,请确保通过以下方式传递配置文件数据:

  • "data {"
  • "__adobe.target"
  • 前缀"profile."
类型
描述
renderDecisions
布尔值
指示个性化组件是否应解释DOM操作
decisionScopes
数组<String>
要检索决策的作用域列表
xdm
对象
在Web SDK中作为体验事件登陆的XDM格式的数据
data
对象
发送到target类下Target解决方案的任意键/值对。

延迟保存配置文件或实体参数,直到内容显示给最终用户

要在显示内容之前延迟在配置文件中记录属性,请在请求中设置data.adobe.target._save=false

例如,您的网站包含三个决策范围,分别对应于网站上的三个类别链接(“男性”、“女性”和“儿童”),并且您希望跟踪用户最终访问的类别。 发送这些请求,并将__save标志设置为false,以避免在请求内容时保留类别。 内容可视化后,为要记录的相应属性发送适当的负载(包括eventTokenstateToken)。

以下示例发送trackEvent样式消息,执行配置文件脚本,保存属性,并立即记录事件。

alloy ( "sendEvent" , {
  renderDecisions : true,
  data : {
    __adobe : {
      target : {
        "profile.gender" : "female",
        "profile.age" : 30,
        "entity.name" : "T-shirt" ,
        "entity.id" : "1234" ,
        "track": {
          "scopes": [ "mbox1", "mbox2"],
          "type": "display|click|..."
        }
      }
    }
  }
} ) ;
NOTE
如果省略__save指令,则会立即保存配置文件和实体属性,就像已执行请求一样,即使请求的其余部分是对个性化的预获取。 __save指令仅与配置文件和实体属性相关。 如果存在跟踪对象,则忽略__save指令。 数据会立即保存并记录通知。

sendEvent包含配置文件数据

alloy("sendEvent", {
   renderDecisions: true|false,
   xdm: { // Experience Event XDM data },
   data: { // Freeform data }
});

如何将配置文件属性发送到Adobe Target:

alloy("sendEvent", {
  "renderDecisions": true,
  "data": {
    "__adobe": {
      "target": {
        "profile.gender": "female",
        "profile.age": 30
      }
    }
  }
});

请求建议

下表列出了Recommendations属性以及是否通过Web SDK支持每个属性:

类别
属性
支持状态
Recommendations — 默认实体属性
entity.id
支持
entity.name
支持
entity.categoryId
支持
entity.pageUrl
支持
entity.thumbnailUrl
支持
entity.message
支持
entity.value
支持
entity.inventory
支持
entity.brand
支持
entity.margin
支持
entity.event.detailsOnly
支持
Recommendations — 自定义实体属性
entity.yourCustomAttributeName
支持
Recommendations — 保留的mbox/页面参数
excludedIds
支持
cartIds
支持
productPurchasedId
支持
类别亲和度的页面或物料类别
user.categoryId
支持

如何将Recommendations属性发送到Adobe Target:

alloy("sendEvent", {
  "renderDecisions": true,
  "data": {
    "__adobe": {
      "target": {
        "entity.id": "123",
        "entity.genre": "Drama"
      }
    }
  }
});

调试

已弃用mboxTrace和mboxDebug。 请改用Web SDK调试的方法。

术语

建议: ​在Adobe Target中,建议与从活动中选择的体验相关联。

架构: ​决策的架构是Adobe Target中的优惠类型。

范围: ​决定的范围。 在Adobe Target中,范围是mBox。 全局mBox是__view__作用域。

XDM: XDM被序列化为点表示法,然后作为mBox参数放入Adobe Target中。

recommendation-more-help
ad108910-6329-42f1-aa1d-5920a2b13636