将Adobe Target与Platform Web SDK一起使用

Adobe Experience Platform Web SDK 可以在web渠道中提供和呈现管理 Adobe Target 的个性化体验。您可以使用名为可视化体验编辑器(VEC)的WYSIWYG编辑器,或者使用非可视化界面(基于表单的体验编辑器)来创建、激活和提供活动和个性化体验。

重要

Adobe Target文档包含的主题包含特定于Platform Web SDK的信息,这些信息与Target特性和功能相关。

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

Platform Web SDK 系统图

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

Adobe Target Web SDK边缘决策图

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

启用Adobe Target

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

  1. datastream中使用相应的客户端代码启用Target。
  2. renderDecisions选项添加到事件中。

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

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

使用Adobe Target VEC

要将VEC与Platform Web SDK实施结合使用,请安装并激活FirefoxChrome VEC助手扩展。

有关更多信息,请参阅​Adobe Target指南​中的Visual Experience Composer帮助程序扩展

呈现个性化内容

有关更多信息,请参阅渲染个性化内容

XDM中的受众

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

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

  • 定位库
  • Adobe Target 中的地域
  • 网络
  • Operating System
  • 网站页面
  • 浏览器
  • 流量源
  • 时间范围

有关更多信息,请参阅​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);
  });
  

启用自动渲染后,命题数组包含:

在页面加载时:

  • 基于表单的编辑器,其标记设置为renderAttempted且基于propositions false
  • 基于可视化体验编辑器的命题,其中renderAttempted标记设置为true
  • 基于可视化体验编辑器的建议,提供了将renderAttempted标记设置为true的单页应用程序视图

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

  • 基于可视化体验编辑器的建议,提供了将renderAttempted标记设置为true的单页应用程序视图

禁用自动渲染时,命题数组包含:

在页面加载时:

  • 基于表单的编辑器,其标记设置为renderAttempted且基于propositions false
  • 基于可视化体验编辑器的命题,其中renderAttempted标记设置为false
  • 基于可视化体验编辑器的建议,提供了将renderAttempted标记设置为false的单页应用程序视图

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

  • 基于可视化体验编辑器的建议,提供了将renderAttempted标记设置为false的单页应用程序视图

单个配置文件更新

使用Platform Web SDK可将配置文件更新为Target配置文件,并将Platform Web SDK作为体验事件更新为。

要更新Target配置文件,请确保配置文件数据与以下内容一起传递:

  • “data {“
  • “__adobe.target”
  • 前缀“profile.”,例如,如下所示
类型 描述
renderDecisions 布尔值 指示个性化组件是否应解释DOM操作
decisionScopes 阵列<String> 要检索决策的范围列表
xdm 对象 在XDM中格式化的数据,这些数据会作为体验事件进入Platform Web SDK中
data 对象 发送到目标类下Target解决方案的任意键/值对。

使用此命令的典型Platform Web SDK代码如下所示:

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属性,以及是否通过Platform 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已被弃用。 使用Platform Web SDK 调试

术语

命题: 在中 Target,命题与从活动中选择的体验相关联。

架构: 决策的架构是中的选件类 Target型。

范围: 决定的范围。在Target中,范围为mBox。 全局mBox是__view__范围。

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

在此页面上