开发人员入门 get-started-developers

在此页面上:​实施将您的应用程序连接到Adobe Journey Optimizer的SDK、事件流、自定义操作端点和API,以使您的旅程能够在实时数据上运行。

作为​开发人员,您负责将Adobe Journey Optimizer实施并集成到您的应用和系统中。 系统管理员数据工程师为您授予访问权限并准备好环境后,您就可以开始使用 Adobe Journey Optimizer。

NOTE
实施顺序: 管理员数据工程师 →您位于此处: 开发人员营销人员
在实施移动和Web集成之前,请确保已配置数据架构和事件

您在 Journey Optimizer 生态系统中的角色

当其他团队成员通过用户界面配置 Journey Optimizer 时,您将专注于以下方面:

  • 在移动端和 web 应用中​实现 SDK
  • 从您的应用程序​ 发送事件 ​以触发历程
  • 构建 API 端点​供 Journey Optimizer 通过自定义操作调用
  • Journey Optimizer 与您现有的系统和基础设施集成
  • 测试和调试​您的实现内容

您的数据工程师将处理数据架构、事件配置和数据源。 您的管理员将设置权限和渠道配置。 营销人员将设计使用您所实现的历程与内容。

本指南涵盖必要的技术实施步骤,助您开始使用 Journey Optimizer。 无论您是构建移动应用程序、web 体验还是 API 集成,请按照以下部分设置您的实施内容。

先决条件 prerequisites

在开始实施之前,请确保您具备以下条件:

类别
要求
技术技能
* 具备 JavaScript(用于 Web SDK)或 Swift/Kotlin(用于 Mobile SDK)经验
* 了解 RESTful API 和 JSON
* 熟悉异步编程和事件驱动型架构
* 了解您所在组织的应用架构
访问权限与工具
* 访问 Adobe Developer Console 以获取 API 凭据
* 可访问应用代码库的开发环境
* 用于 API 测试的工具(如 Postman)
* 浏览器开发者工具或移动端调试工具
来自其他团队成员
*由管理员
授予的环境访问权限 * 来自数据工程师
的 XDM 架构与事件定义 * 来自营销人员的需求与用例

理解技术基础 technical-foundation

在深入实施之前,请先熟悉以下核心技术概念:

  1. Adobe Experience Platform 集成:Journey Optimizer 原生构建于 Adobe Experience Platform 之上。 理解其底层架构将帮助您构建更高效的实施方案。 进一步了解 Journey Optimizer 的工作原理

  2. XDM 数据模型:Journey Optimizer 使用体验数据模型 (XDM) 来构建事件和轮廓数据的结构。 作为开发人员,您需要了解如何发送符合数据工程师配置的数据架构的数据。 了解 XDM 架构

  3. 身份验证和安全性:所有实施都需要进行适当的认证。 了解如何为 SDK 和 API 设置身份验证。 了解 API 身份验证

设置移动应用集成 mobile-integration

配置 Adobe Experience Platform Mobile SDK

Mobile SDK是您直接在iOS或Android应用程序中嵌入的库集合。 它充当应用程序与Adobe Experience Platform之间的通信层:用于从Journey Optimizer中标识用户、收集行为事件并提供说明,包括推送通知、应用程序内消息和个性化内容。 如果没有这些信息,Journey Optimizer将无法看到您的应用程序用户在做什么,并且也无法联系他们。

  1. 安装和配置 Mobile SDK:按照Adobe Experience Platform Mobile SDK 文档操作,开始进行 SDK 集成。

  2. 创建移动属性:在 Adobe Experience Platform Data Collection 中设置移动属性。 了解如何创建和配置移动属性

  3. 配置推送通知

    • 针对 iOS 应用:在 APN(Apple 推送通知服务)中注册您的应用。 请在 Apple 文档中了解详情。
    • 对于 Android 应用程序:为 Android 应用程序设置 Firebase Cloud Messaging。 请在 Google 文档中了解详情。
  4. 测试您的移动端集成:使用移动端快速启动工作流来高效配置和测试您的移动端设置。

此页面提供了配置推送通知的详细步骤。

实施基于代码的体验 (Mobile SDK)

通过基于代码的体验,您可以向本机移动设备应用程序中的任何表面交付个性化内容 — 从入门培训屏幕和产品详细信息页面,到应用程序内横幅和功能标记 — 而无需发布新的应用程序。 使用Mobile SDK在运行时获取和呈现个性化内容,让您的团队可以完全控制版面和演示:

实施 web 体验 web-implementation

设置 Adobe Experience Platform Web SDK

Web SDK (alloy.js)是单个JavaScript库,它取代了您的网站可能需要的单独Adobe标记的补丁工作。 它会收集行为数据,通过您配置的数据流将其流式传输到Adobe Experience Platform,并接收返回的个性化指令 — 所有这些都在一个网络中来回传输。 设置完毕后,Journey Optimizer即可识别访客、从其操作触发旅程,并立即向您的页面交付定制的内容。

  1. 安装 Web SDK:按照 Web SDK 实施指南在您的网站上设置 SDK。

  2. 配置数据流:在 Adobe Experience Platform Data Collection 中创建并配置启用了 Journey Optimizer 的数据流。 有关更多信息,请参阅数据流文档

  3. 启用 Web 推送通知(可选): Web 推送通知现已正式发布。 在 Web SDK 配置中配置 pushNotifications 属性,并使用 sendPushSubscription 命令注册推送订阅。 了解 Web 推送配置

实施基于代码的体验 (Web SDK)

与营销人员完全控制布局的可视化渠道不同,基于代码的体验可让您完全掌控页面上个性化内容的呈现方式。 Journey Optimizer会返回包含个性化数据的JSON有效负载;您的代码可决定要在何处以及如何显示该有效负载。 此模型适用于任何Web表面(主页横幅、推荐轮播、搜索结果排名、A/B测试变体),而无需可视化编辑器或页面发布工作流程。

  1. 选择实施方法:客户端、服务器端或混合模式。 查看每种方法的实施示例

  2. 定义展示界面:确定应用程序中您希望提供个性化内容的位置。 了解展示界面配置

  3. 实施内容渲染:使用 Web SDK 获取和应用个性化内容。 请参阅基于代码的实施教程

  4. 发送展示与交互事件:追踪内容的展示时机以及用户何时与内容交互以进行分析和优化。

浏览 🔗GitHub 上的实施示例,了解实际应用中的基于代码的体验。

进一步了解基于代码的体验快速入门

实施事件流 event-streaming

发送事件以触发历程

历程在事件上运行 — 用户登录,将项目添加到购物车,完成购买,放弃表单。 你的工作是适时地从你的应用程序中发出这些事件。 每个事件都是发送到Experience Platform流摄取API的XDM结构化JSON有效负载;Journey Optimizer在毫秒内选取它,并将配置文件路由到任何匹配的旅程。 事件架构和有效负载结构由您的数据工程师定义 — 在开始编码之前与它们协调。

  1. 了解事件负载:与您的数据工程师协作,获取事件架构及所需的负载结构。 负载必须符合其配置的 XDM 架构。 了解事件架构要求

  2. 实施事件流:使用流式数据摄取 API 将事件发送至 Adobe Experience Platform。 了解发送事件的步骤

  3. 处理事件类型

    • 单一事件:针对特定用户的操作(例如按钮点击、购买完成)实现事件发送
    • 业务事件:发送业务相关事件(例如库存更新、价格变更)
  4. 测试事件传递:验证事件是否被正确接收并按预期触发客户历程。 了解事件故障排除

通过 API 发送事件的​实施示例

POST https://{DATACOLLECTION_ENDPOINT}/collection/{DATASTREAM_ID}
Content-Type: application/json

{
  "header": {
    "datasetId": "{DATASET_ID}",
    "imsOrgId": "{ORG_ID}",
    "source": {
      "name": "Web SDK"
    }
  },
  "body": {
    "xdmMeta": {
      "schemaRef": {
        "id": "{SCHEMA_ID}"
      }
    },
    "xdmEntity": {
      "_id": "unique-event-id",
      "eventType": "purchase",
      "timestamp": "2024-01-01T12:00:00Z",
      // ... your event data
    }
  }
}

进一步了解处理历程事件

开发自定义操作端点 custom-actions

当历程达到自定义操作步骤时,Journey Optimizer会对您提供的URL(您的后端、CRM、忠诚度平台、任何REST端点)进行出站HTTP调用。 您的工作是构建和公开该端点:定义请求合同(有效负荷形状、身份验证方法、响应格式),实施其背后的业务逻辑,并确保它可以处理Journey Optimizer将生成的调用量。 然后,您的管理员会在Journey Optimizer中注册该端点,以便营销人员可以将其用作其历程中的步骤。

  1. 构建您的 API 端点:创建 RESTful API 端点,供 Journey Optimizer 在历程执行期间调用。 您的端点应:

    • 接受 JSON 负载
    • 身份验证请求(OAuth、API 密钥或 JWT)
    • 在适当的超时限制内处理请求
    • 以预期格式返回响应
  2. 了解自定义操作功能:自定义操作可以连接到第三方系统,如 Epsilon、Slack、Firebase 或您自己的服务。 详细了解自定义操作

  3. 使用操作配置:您的管理员数据工程师将在 Journey Optimizer 中配置自定义操作,定义 API 端点 URL、身份验证方法和参数。 您将向他们提供您的 API 规范。 了解自定义操作配置。 您可以在超时/错误分支中定义可选的​错误响应负载,以实现更丰富的回退逻辑。

  4. 返回可操作数据:设计您的 API 以返回可在后续历程步骤中使用的数据。 了解操作响应

  5. 监视自定义操作运行状况:使用自定义操作监视仪表板跟踪成功的调用、错误、吞吐量、响应时间和队列等待时间。 了解自定义操作报告

  6. 实现速率限制:确保您的端点能够处理预期的请求量。 Journey Optimizer 设有 5000 次/秒的调用限制,但您的系统应具备一定弹性。 了解上限和限制

示例用例:使用自定义操作将历程事件写入 Experience Platform

使用 Journey Optimizer API apis

并非所有事情都需要通过Journey Optimizer UI发生。 有时,您需要从自己的后端触发营销活动、在隐私请求后禁止显示电子邮件地址,或从外部CMS同步内容模板。 Journey Optimizer的REST API允许您以编程方式访问平台的核心功能。 所有调用都使用OAuth服务器到服务器身份验证 — 弃用旧的JWT方法。

  1. 了解 API 功能: Journey Optimizer API 允许您以编程方式创建、读取、更新和删除各种资源。 了解 Journey Optimizer API

  2. 身份验证:按照本教程,使用 Adobe Developer Console 设置 API 身份验证。

  3. 浏览 API 参考文档:浏览完整的 API 文档,并直接在 Adobe Journey Optimizer API 参考中尝试 API 调用。

  4. API 触发的营销活动:通过 API 触发的营销活动构建交易型消息。 针对高流量场景(最高可达 5000 TPS),可探索使用高吞吐量模式(需要附加许可证)。

  5. 决策管理 API:使用专门的 API 进行产品建议管理和决策。 在决策管理 API 指南中了解更多信息。

  6. Decisioning 迁移 API:以编程方式将决策管理实体迁移到 Decisioning,它具有灵活的迁移范围、自动验证和回滚支持。 在 Decisioning 迁移 API 指南中了解详情。

  7. 短信 Webhook:配置入站 Webhook 以捕获传入消息,并配置反馈 Webhook 以接收投放回执和状态更新。 了解详情

测试与调试 testing

在实施上线之前,您需要确信事件会在正确的时间触发,历程会按预期触发,自定义操作会在实际负载下运行,并且个性化内容会正确呈现。 本节介绍用于及早发现问题的工具和技术,从低级别的SDK日志记录到使用真实用户档案进行的端到端旅程测试运行。

  1. 调试SDK实施:使用Adobe Experience Platform Assurance检查SDK事件,验证数据收集,并在集成问题发生时对其进行故障诊断。 进一步了解 Assurance

  2. 测试事件传递:验证您应用程序发出的事件是否被 Adobe Experience Platform 正确接收并按预期触发历程。 监控事件摄取过程并验证有效负载结构。

  3. 验证 API 集成:测试您的自定义操作端点,以确保其能正确处理 Journey Optimizer 请求、在超时限制内响应,并返回预期的数据格式。

  4. 对测试轮廓使用测试模式:与数据工程师协作获取对测试轮廓的访问权限,然后使用历程测试模式验证您的实施。 了解如何测试历程

  5. 监控 SDK 日志:在您的 SDK 实现中启用调试日志记录,以便在开发期间排查问题:

    • Mobile SDK:启用日志记录以查看 SDK 事件和 API 调用
    • Web SDK:使用浏览器控制台监控 SDK 活动
  6. 验证数据流配置:确保您的数据流已正确配置,可将数据发送至 Journey Optimizer。 检查事件是否通过数据流传递至正确的目标位置。

  7. 查询历程数据以供分析:在数据湖上使用 SQL 查询来分析历程步骤事件、调试问题并监控自定义操作性能。 探索用于历程分析的查询示例,包括:

    • 轮廓进入/退出追踪和丢弃原因分析
    • 自定义操作性能指标(延迟、吞吐量、错误率)
    • 事件交付和错误模式
    • 历程实例状态

高级开发人员主题 advanced-topics

一旦您的核心SDK、事件和API准备就绪,这些主题将帮助您走得更远:在运行时扩充历程数据而不扩充配置文件,处理同意信号以使选择退出在整个集成中传播,以及针对生产规模所需的吞吐量和可靠性调整您的实施。

处理上下文数据和扩充

历程通常需要的数据多于触发事件中提供的数据 — 产品名称、忠诚度等级和订单行项目列表。 上下文扩充允许您的旅程在运行时从AEP数据集查找它或从自定义操作响应中将其转发,而不是将所有这些预先加载到每个配置文件中。 然后,您的消息和分支条件可以引用该数据,而无需将其永久存储在用户档案中。

  • 对数组进行迭代:使用 Handlebars 语法在消息中展示来自事件、自定义操作响应及数据集查询的动态列表。 了解迭代上下文数据
  • 数据集查找:实施数据集查找以扩充 Adobe Experience Platform 数据集的历程数据。 与您的数据工程师协作进行配置。 了解数据集查找

处理同意与治理

Journey Optimizer在平台级别实施数据治理和同意策略,但您的集成也需要尊重它们。 当客户选择退出营销通信或数据使用标签限制字段的使用方式时,这些规则需要在自定义操作和数据集查找中传播 — 而不仅仅是UI中的阻止操作。

  • 数据治理:将数据使用策略应用于自定义操作。 进一步了解数据治理
  • 同意管理:在您的实施中处理客户同意偏好设置。 了解同意

优化与最佳实践

生产Journey Optimizer实施每秒会定期处理数百万个事件和数千次旅程执行。 这些资源可帮助您针对该规模调整集成 — 在点击速率限制之前了解这些限制,避免静默丢弃用户档案的常见旅程设计隐患,以及构建可正常降低而不是不透明地失败的错误处理。

调用Journey Optimizer REST API rest-apis

除了实施SDK和事件流之外,您还可以以编程方式从您自己的系统中驱动Journey Optimizer。 完整的API引用、OpenAPI规格和代码示例位于Journey Optimizer开发人员门户上。

NOTE
所有集成都必须使用OAuth服务器到服务器身份验证 — JWT方法已被弃用。 设置身份验证

执行API触发的营销活动 api-triggered

使用交互式消息执行REST API触发来自外部系统的事务性或营销消息。 在调用端点之前:

  • 在终结点接受调用之前,营销活动必须是​激活的
  • 调用的​超时为60秒;内部重试处理意外超时。
  • 如果配置了促销活动开始/结束日期,则超出这些日期的API调用将失败。
  • 要构建有效负载,请在Journey Optimizer UI中从实时营销活动的​ cURL请求 ​部分中检索生成的示例cURL请求 — 其中包括该营销活动的所有个性化变量。
  • 标准和高吞吐量营销活动使用不同的端点。

API引用 · 代码示例 · 使用API触发的营销活动

外部端点的上限和限制 capping-throttling

当历程通过自定义操作或数据源调用外部系统时,上限和限制API会保护这些系统免受过载。 设置上限可拒绝超出配置限制的调用;限制可使调用排队长达6小时(仅限生产沙盒、自定义操作)。

上限API引用 · 使用上限API · 使用限制API

更多REST API more-rest-apis

除了消息传递和封顶之外,Journey Optimizer还会公开REST端点,以用于禁止管理、内容模板、活动检索、验证和编排的活动执行。 当您需要自动执行操作时,请使用这些选项,否则UI中需要手动步骤,例如,拉取数据后批量隐藏地址,或从外部内容管道同步模板。

您需要执行的操作
API 参考
以编程方式从发送中排除电子邮件地址或域
隐藏API · 管理隐藏列表
检索历程元数据以进行审核或外部同步
历程API
从外部管道创建和管理内容模板和片段
内容API · 模板 · 片段
检索和过滤操作营销活动
促销活动API
预览营销活动并以编程方式发送验证
模拟API
验证数据集并触发编排的活动执行
数据集验证 · 触发器 · 启用数据集

其他资源 additional-resources

跨角色协作 next-steps

您的实施工作与其他团队成员相互关联:

与数据工程师协作

数据工程师协作处理数据和事件配置。 对用户行为做出反应的每个历程都取决于您发送的事件 — 数据工程师定义架构,您实施生成这些架构的代码。

  • 获取需要实施的XDM架构和事件结构
  • 了解您需要发送哪些事件及其所需的有效负载格式 — 请参阅处理历程事件
  • 确认每个事件有效负载中的哪些字段是必填字段还是可选字段,以及当预期字段缺失或格式错误时,旅程中会发生什么情况 — 请参阅架构要求
  • 使用Adobe Experience Platform Assurance一起测试事件投放和数据摄取
与管理员协作

管理员在访问和渠道配置上进行协作。 历程只能通过管理员设置的渠道联系用户 — 尽早协调,以便您的SDK工作及其配置保持同步。

与营销人员协作

营销人员协作进行历程设计和测试。 营销人员构建旅程和内容完全取决于您发送的事件和公开的外观 — 您对齐得越近,旅程上线的速度就越快。

开始实施

准备好开始构建了吗? 从以上部分中选择您的首个实施领域:

  1. 移动应用程序?Mobile SDK 集成开始
  2. 网站?Web SDK 设置开始
  3. API 集成? 跳转到使用 API
  4. 自定义系统? 查看自定义操作

每个部分都包含指向详细技术文档、代码示例和教程的链接,以指导您的实施工作。

其他角色指南 other-role-guides

角色
指南
管理员
管理员入门
数据工程师
数据工程师入门
Developer
开发人员入门
营销人员
营销人员入门指南

返回角色和职责概述 ·返回开始

recommendation-more-help
journey-optimizer-help