service-digital-engagement-deployment-configure

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Configuring Embedded Messaging Deployment

配置嵌入式消息部署

Configures
EmbeddedServiceConfig
metadata for Salesforce Messaging for In-App and Web (MIAW). Supports two distinct workflows: creating new deployments via Connect API and updating existing deployments via Metadata API.
为Salesforce应用内和网页消息服务(Messaging for In-App and Web,简称MIAW)配置
EmbeddedServiceConfig
元数据。支持两种独立工作流:通过Connect API创建新部署,以及通过Metadata API更新现有部署。

Scope

适用范围

  • In scope: Creating new Embedded Service Deployments (API, Mobile, Web types) via Connect API; updating existing deployments with forms, branding, channel settings, and features via Metadata API; generating
    EmbeddedServiceConfig
    XML for updates
  • Out of scope: Creating the messaging channel itself (use
    service-digital-engagement-channel-configure
    ), publishing deployments (Connect API post-step), creating Experience Sites (Connect API prerequisite for Web type)

  • 包含场景:通过Connect API创建新的嵌入式服务部署(API、移动端、网页类型);通过Metadata API更新现有部署的表单、品牌、渠道设置及功能;生成用于更新的
    EmbeddedServiceConfig
    XML
  • 排除场景:创建消息渠道本身(请使用
    service-digital-engagement-channel-configure
    )、发布部署(Connect API后续步骤)、创建体验站点(网页类型部署的Connect API前置条件)

Clarifying Questions

澄清问题

Before generating, ask the user if not already clear:
  • Create or update? Are you creating a new deployment or updating an existing one?
  • Deployment type? API (headless), Mobile (native apps), or Web (browser widget)?
  • Channel name? What is the
    channelPlatformKey
    of the messaging channel to associate?
  • For create: What should the deployment be named?
  • For update: What features to configure? (pre-chat forms, business hours, T&C, UI toggles)
  • For update (Web): What is the Experience Site name? Branding overrides needed?

生成配置前,若信息不明确,请询问用户:
  • 创建还是更新? 您是要创建新部署还是更新现有部署?
  • 部署类型? API(无头)、移动端(原生应用)还是网页(浏览器小部件)?
  • 渠道名称? 要关联的消息渠道的
    channelPlatformKey
    是什么?
  • 若为创建:部署名称是什么?
  • 若为更新:需要配置哪些功能?(预聊天表单、营业时间、条款与条件、UI开关)
  • 若为网页类型更新:体验站点名称是什么?是否需要品牌覆盖设置?

Required Inputs

必填输入

Gather or infer before proceeding:
  • Operation:
    create
    or
    update
  • Deployment type:
    API
    ,
    Mobile
    , or
    Web
  • Deployment name: Used for
    masterLabel
    and the API name
  • Channel name: The
    channelPlatformKey
    of the associated messaging channel
For update operations additionally:
  • Site name (Web only): The Experience Site name (format
    ESW_<name>_<timestamp>
    )
  • Branding name (optional): Reference to existing
    BrandingSet
  • Pre-chat form fields (optional): Field names and required status
  • Business hours (optional): Name of existing
    BusinessHours
    record
Defaults unless specified:
  • isEnabled
    :
    true
  • deploymentFeature
    :
    EmbeddedMessaging

在开始前收集或推断以下信息:
  • 操作类型
    create
    (创建)或
    update
    (更新)
  • 部署类型
    API
    Mobile
    Web
  • 部署名称:用于
    masterLabel
    和API名称
  • 渠道名称:关联消息渠道的
    channelPlatformKey
对于更新操作,还需额外收集:
  • 站点名称(仅网页类型):体验站点名称(格式为
    ESW_<name>_<timestamp>
  • 品牌名称(可选):现有
    BrandingSet
    的引用
  • 预聊天表单字段(可选):字段名称及必填状态
  • 营业时间(可选):现有
    BusinessHours
    记录的名称
默认设置(除非另行指定):
  • isEnabled
    true
  • deploymentFeature
    EmbeddedMessaging

Workflow

工作流

All steps are sequential. Do not skip or reorder. Branch based on the operation type.
所有步骤按顺序执行,请勿跳过或重新排序。根据操作类型分支处理。

Phase 1 — Gather Context

阶段1 — 收集上下文

  1. Verify org API version — run
    scripts/check-api-version.sh 67.0 <org-alias>
    and report any errors it returns. If the script fails, generate a
    sfdx-project.json
    in the metadata output folder with
    "sourceApiVersion": "67.0"
    .
  2. Determine operation — ask whether the user wants to create a new deployment or update an existing one.
  3. Collect inputs — gather deployment name, type, and channel name per Clarifying Questions above.
  4. Read deployment settings reference — load
    references/deployment_settings.md
    to understand all available configuration options.
  1. 验证组织API版本 — 运行
    scripts/check-api-version.sh 67.0 <org-alias>
    并报告返回的任何错误。若脚本执行失败,在元数据输出文件夹中生成
    sfdx-project.json
    文件,设置
    "sourceApiVersion": "67.0"
  2. 确定操作类型 — 询问用户是要创建新部署还是更新现有部署。
  3. 收集输入信息 — 根据上述澄清问题收集部署名称、类型和渠道名称。
  4. 读取部署设置参考文档 — 加载
    references/deployment_settings.md
    以了解所有可用配置选项。

Phase 2A — Create New Deployment

阶段2A — 创建新部署

Use this path when the operation is
create
.
  1. Determine API method by type:
    Deployment TypeCreation MethodPrerequisites
    APIMetadata API deployChannel must exist
    MobileMetadata API deployChannel must exist
    WebConnect APIChannel must exist + Experience Site required
  2. For API/Mobile types — read the template
    assets/esd_api_mobile_template.xml
    and generate the
    EmbeddedServiceConfig
    XML with:
    • deploymentType
      set to
      API
      or
      Mobile
    • deploymentFeature
      set to
      EmbeddedMessaging
    • All defaults applied
  3. For Web type — inform the user that Web deployments require Connect API for initial creation because of a circular dependency between Network and CustomSite. Read
    references/connect_api_creation.md
    for the Connect API payload and instructions.
  4. Generate output — produce the
    .EmbeddedServiceConfig-meta.xml
    file (for API/Mobile) or Connect API instructions (for Web).
  5. Present output and next steps — show the generated file and summarize what was configured. Recommend as next steps:
    • Publish the deployment via Connect API to make it live:
      bash
      sf api request rest "/services/data/v67.0/connect/embeddedservice/embeddedserviceconfig/publish/<EMBEDDED_SERVICE_CONFIG_ID>" -X POST -o <org-alias>
      To obtain the
      EMBEDDED_SERVICE_CONFIG_ID
      :
      bash
      sf data query --query "SELECT Id FROM EmbeddedServiceConfig WHERE DeveloperName = '<DEPLOYMENT_NAME>'" --target-org <org-alias>
    • Generate code snippet for integration — see
      references/code_snippet.md
当操作类型为
create
时使用此路径。
  1. 根据类型确定API方法
    部署类型创建方法前置条件
    APIMetadata API部署渠道必须已存在
    移动端Metadata API部署渠道必须已存在
    网页Connect API渠道必须已存在 + 需体验站点
  2. 对于API/移动端类型 — 读取模板
    assets/esd_api_mobile_template.xml
    并生成
    EmbeddedServiceConfig
    XML,包含:
    • deploymentType
      设置为
      API
      Mobile
    • deploymentFeature
      设置为
      EmbeddedMessaging
    • 应用所有默认设置
  3. 对于网页类型 — 告知用户网页部署需要通过Connect API进行初始创建,因为Network和CustomSite之间存在循环依赖。读取
    references/connect_api_creation.md
    获取Connect API负载及说明。
  4. 生成输出 — 生成
    .EmbeddedServiceConfig-meta.xml
    文件(适用于API/移动端)或Connect API说明(适用于网页)。
  5. 展示输出及后续步骤 — 显示生成的文件并总结配置内容。推荐后续步骤:
    • 发布部署:通过Connect API使部署生效:
      bash
      sf api request rest "/services/data/v67.0/connect/embeddedservice/embeddedserviceconfig/publish/<EMBEDDED_SERVICE_CONFIG_ID>" -X POST -o <org-alias>
      获取
      EMBEDDED_SERVICE_CONFIG_ID
      的命令:
      bash
      sf data query --query "SELECT Id FROM EmbeddedServiceConfig WHERE DeveloperName = '<DEPLOYMENT_NAME>'" --target-org <org-alias>
    • 生成集成代码片段 — 参见
      references/code_snippet.md

Phase 2B — Update Existing Deployment (Metadata API)

阶段2B — 更新现有部署(Metadata API)

Use this path when the operation is
update
.
  1. Retrieve the existing deployment — retrieve the current
    EmbeddedServiceConfig
    metadata from the org before making changes:
    bash
    sf project retrieve start --metadata EmbeddedServiceConfig:<DEPLOYMENT_NAME> --target-org <org-alias>
    Use the retrieved file as the starting structure. If retrieval is not possible, load
    assets/esd_web_update_template.xml
    as a fallback reference.
  2. Apply messaging channel settings — configure
    <embeddedServiceMessagingChannel>
    with:
    • messagingChannel
      — the channel's
      channelPlatformKey
    • shouldShowAgentforceTagline
      — Agentforce branding
    • shouldShowDeliveryReceipts
      — delivery receipts
    • shouldShowEmojiSelection
      — emoji picker
    • shouldShowReadReceipts
      — read receipts
    • shouldShowTypingIndicators
      — typing indicators
    • shouldStartNewLineOnEnter
      — Enter key behavior
    • isChatInvitationCustomizable
      /
      isInvitationEnabled
      — chat invitation settings
  3. Apply pre-chat forms — if the user needs pre-chat data collection, generate
    <embeddedServiceForms>
    with
    <embeddedServiceFormFields>
    elements containing
    embeddedServiceFormFieldName
    and
    isRequired
    .
  4. Apply branding customization (Web only) — a BrandingSet is automatically created with defaults when the deployment is created via Connect API. If the user wants to override specific branding properties (colors, fonts, dimensions), read
    references/branding_and_tooling.md
    for the Tooling API steps to update individual properties.
  5. Apply invitation (Web only) — if the user wants the widget to proactively invite visitors based on conditions:
    • Set
      isInvitationEnabled
      to
      true
      in
      <embeddedServiceMessagingChannel>
    • Generate repeatable
      <embdMsgChannelInvitationConditions>
      elements with
      sequence
      ,
      conditionType
      ,
      operand
      ,
      value
      , and optionally
      customVariableName
    • Update the
      formula
      field in
      <embeddedServiceMessagingChannel>
      to reference the condition sequences (e.g.,
      1 AND 2
      ,
      1 OR 2
      ). The formula must be updated whenever conditions are added or removed to stay in sync with the
      sequence
      numbers
    • See
      references/deployment_settings.md
      for available condition types and operators
  6. Apply additional settings:
    • isTermsAndConditionsEnabled
      /
      isTermsAndConditionsRequired
      — T&C in pre-chat
    • Do NOT update
      site
      — the site name is auto-generated during creation and must never be modified
  7. Generate the file — produce the
    .EmbeddedServiceConfig-meta.xml
    file at the path the user specifies, or default to
    EmbeddedServiceConfig/
    in the project's metadata source path.
  8. Present output and next steps — show the generated file and summarize what was configured. Recommend as next steps:
    • Publish the deployment via Connect API to make changes live:
      bash
      sf api request rest "/services/data/v67.0/connect/embeddedservice/embeddedserviceconfig/publish/<EMBEDDED_SERVICE_CONFIG_ID>" -X POST -o <org-alias>
      To obtain the
      EMBEDDED_SERVICE_CONFIG_ID
      :
      bash
      sf data query --query "SELECT Id FROM EmbeddedServiceConfig WHERE DeveloperName = '<DEPLOYMENT_NAME>'" --target-org <org-alias>
    • Generate code snippet for integration — see
      references/code_snippet.md
当操作类型为
update
时使用此路径。
  1. 检索现有部署 — 在进行更改前,从组织中检索当前的
    EmbeddedServiceConfig
    元数据:
    bash
    sf project retrieve start --metadata EmbeddedServiceConfig:<DEPLOYMENT_NAME> --target-org <org-alias>
    将检索到的文件作为起始结构。若无法检索,加载
    assets/esd_web_update_template.xml
    作为备用参考。
  2. 应用消息渠道设置 — 配置
    <embeddedServiceMessagingChannel>
    ,包含:
    • messagingChannel
      — 渠道的
      channelPlatformKey
    • shouldShowAgentforceTagline
      — Agentforce品牌标识
    • shouldShowDeliveryReceipts
      — 送达回执
    • shouldShowEmojiSelection
      — 表情选择器
    • shouldShowReadReceipts
      — 已读回执
    • shouldShowTypingIndicators
      — 输入状态提示
    • shouldStartNewLineOnEnter
      — 回车键行为
    • isChatInvitationCustomizable
      /
      isInvitationEnabled
      — 聊天邀请设置
  3. 应用预聊天表单 — 若用户需要预聊天数据收集,生成
    <embeddedServiceForms>
    ,包含
    <embeddedServiceFormFields>
    元素,其中包含
    embeddedServiceFormFieldName
    isRequired
  4. 应用品牌自定义(仅网页类型) — 当通过Connect API创建部署时,会自动创建带有默认设置的BrandingSet。若用户想要覆盖特定品牌属性(颜色、字体、尺寸),请阅读
    references/branding_and_tooling.md
    了解使用Tooling API更新单个属性的步骤。
  5. 应用邀请设置(仅网页类型) — 若用户希望小部件根据条件主动邀请访客:
    • <embeddedServiceMessagingChannel>
      中将
      isInvitationEnabled
      设置为
      true
    • 生成可重复的
      <embdMsgChannelInvitationConditions>
      元素,包含
      sequence
      conditionType
      operand
      value
      ,以及可选的
      customVariableName
    • 更新
      <embeddedServiceMessagingChannel>
      中的
      formula
      字段以引用条件序列(例如
      1 AND 2
      1 OR 2
      )。每当添加或删除条件时,必须更新公式以与
      sequence
      编号保持同步
    • 参见
      references/deployment_settings.md
      了解可用的条件类型和运算符
  6. 应用其他设置
    • isTermsAndConditionsEnabled
      /
      isTermsAndConditionsRequired
      — 预聊天中的条款与条件
    • 请勿更新
      site
      字段
      — 站点名称在创建时自动生成,绝不能修改
  7. 生成文件 — 在用户指定的路径生成
    .EmbeddedServiceConfig-meta.xml
    文件,或默认保存到项目元数据源路径的
    EmbeddedServiceConfig/
    目录下。
  8. 展示输出及后续步骤 — 显示生成的文件并总结配置内容。推荐后续步骤:
    • 发布部署:通过Connect API使更改生效:
      bash
      sf api request rest "/services/data/v67.0/connect/embeddedservice/embeddedserviceconfig/publish/<EMBEDDED_SERVICE_CONFIG_ID>" -X POST -o <org-alias>
      获取
      EMBEDDED_SERVICE_CONFIG_ID
      的命令:
      bash
      sf data query --query "SELECT Id FROM EmbeddedServiceConfig WHERE DeveloperName = '<DEPLOYMENT_NAME>'" --target-org <org-alias>
    • 生成集成代码片段 — 参见
      references/code_snippet.md

Phase 3 — Validate

阶段3 — 验证

  1. Verify against checklist — confirm all items in the Verification Checklist below pass.

  1. 对照检查清单验证 — 确认以下验证检查清单中的所有项均已通过。

Rules / Constraints

规则 / 约束

ConstraintRationale
Always retrieve existing deployment before updatingEnsures current settings are preserved and only intended changes are applied
deploymentType
must be
API
,
Mobile
, or
Web
Platform rejects other values
Never update the
site
field on a Web deployment
Site name is auto-generated at creation and must not be changed
Web deployments cannot be created via Metadata APICircular dependency between Network and CustomSite — use Connect API
embeddedServiceMessagingChannelName
must reference an existing channel
Deployment fails if channel doesn't exist
site
field required for Web type updates
Web widget must be associated with an Experience Site
BrandingSet is auto-created with defaults by Connect APITo override branding properties, use Tooling API — see
references/branding_and_tooling.md
Pre-chat form fields must reference valid channel custom parametersChoiceList fields need the parameter deployed on the channel first
File extension is
.EmbeddedServiceConfig-meta.xml
Metadata API uses this specific extension
Do not hardcode file paths — respect
sfdx-project.json
package directories
Customer orgs customize source paths
Never include deploy/push commands in generated outputThis skill produces artifacts only
Publish step (Connect API) required after Web ESD updatesChanges are not live until published

约束理由
更新前始终检索现有部署确保保留当前设置,仅应用预期更改
deploymentType
必须为
API
Mobile
Web
平台会拒绝其他值
绝不能更新网页部署的
site
字段
站点名称在创建时自动生成,不得更改
网页部署无法通过Metadata API创建Network和CustomSite之间存在循环依赖 — 请使用Connect API
embeddedServiceMessagingChannelName
必须引用现有渠道
若渠道不存在,部署会失败
网页类型更新需要
site
字段
网页小部件必须关联到体验站点
Connect API会自动创建带有默认设置的BrandingSet要覆盖品牌属性,请使用Tooling API — 参见
references/branding_and_tooling.md
预聊天表单字段必须引用有效的渠道自定义参数选择列表字段需要先在渠道上部署参数
文件扩展名为
.EmbeddedServiceConfig-meta.xml
Metadata API使用此特定扩展名
请勿硬编码文件路径 — 遵循
sfdx-project.json
中的包目录
客户组织会自定义源路径
生成的输出中请勿包含部署/推送命令此技能仅生成工件
网页ESD更新后需要执行发布步骤(Connect API)更改必须发布后才会生效

Gotchas

常见问题

IssueResolution
Web ESD creation fails via Metadata APIWeb type requires Connect API for initial creation; use Metadata API only for updates
Site name not foundSite must exist before Web ESD update; format is
ESW_<name>_<timestamp>
Branding overrides not appliedUse Tooling API to update individual BrandingSet properties after the deployment is created
Pre-chat ChoiceList not showingChoiceList requires two-step deploy: create ChoiceList first, then assign to form field
Changes not appearing in widgetWeb ESDs must be published via Connect API after any update
embeddedServiceFlowConfig.enabled
error
Set to
false
unless you specifically need embedded flows (not routing flows)
reCAPTCHA configuration rejectedreCAPTCHA is
@HideInWsdl
— must use Tooling API
Business hours not taking effectOnly updating existing business hours works; creation is managed separately
Deploy fails with "required field missing" or "upsert failed null"All attributes are mandatory: boolean fields in
embeddedServiceMessagingChannel
(include all even with default
false
), and all form field attributes (
formField
,
formFieldType
,
isHidden
,
isRequired
,
displayOrder
,
messagingChannelParameterType
)
Standard pre-chat field not foundUse
_
prefix for standard fields in
formField
:
_FirstName
,
_LastName
,
_Email
,
_Subject

问题解决方法
通过Metadata API创建网页ESD失败网页类型需要通过Connect API进行初始创建;仅使用Metadata API进行更新
站点名称未找到更新网页ESD前必须存在站点;格式为
ESW_<name>_<timestamp>
品牌覆盖设置未生效创建部署后,使用Tooling API更新单个BrandingSet属性
预聊天选择列表未显示选择列表需要两步部署:先创建选择列表,再分配给表单字段
更改未在小部件中显示网页ESD在任何更新后都必须通过Connect API发布
embeddedServiceFlowConfig.enabled
错误
除非明确需要嵌入式流程(而非路由流程),否则设置为
false
reCAPTCHA配置被拒绝reCAPTCHA为
@HideInWsdl
— 必须使用Tooling API
营业时间未生效仅更新现有营业时间有效;营业时间的创建需单独管理
部署失败,提示“必填字段缺失”或“upsert失败 null”所有属性都是必填的:
embeddedServiceMessagingChannel
中的布尔字段(即使默认值为
false
也需全部包含),以及所有表单字段属性(
formField
formFieldType
isHidden
isRequired
displayOrder
messagingChannelParameterType
标准预聊天字段未找到
formField
中为标准字段添加
_
前缀:
_FirstName
_LastName
_Email
_Subject

Verification Checklist

验证检查清单

Universal Checks

通用检查

  • Is
    deploymentType
    one of
    API
    ,
    Mobile
    , or
    Web
    ?
  • Is
    masterLabel
    populated and unique?
  • Does
    messagingChannel
    reference an existing channel?
  • Is
    deploymentFeature
    set to
    EmbeddedMessaging
    ?
  • Is
    isEnabled
    set to
    true
    ?
  • deploymentType
    是否为
    API
    Mobile
    Web
    之一?
  • masterLabel
    是否已填充且唯一?
  • messagingChannel
    是否引用了现有渠道?
  • deploymentFeature
    是否设置为
    EmbeddedMessaging
  • isEnabled
    是否设置为
    true

Web Type Checks

网页类型检查

  • Is
    site
    populated with the Experience Site name?
  • If branding is configured, does
    embeddedServiceBrandingName
    reference an existing BrandingSet?
  • Are pre-chat form field names valid (match channel custom parameters)?
  • If
    isInvitationEnabled
    is
    true
    , is
    formula
    populated and consistent with all
    sequence
    numbers in
    <embdMsgChannelInvitationConditions>
    ?
  • site
    是否已填充体验站点名称?
  • 若配置了品牌,
    embeddedServiceBrandingName
    是否引用了现有BrandingSet?
  • 预聊天表单字段名称是否有效(匹配渠道自定义参数)?
  • isInvitationEnabled
    设置为
    true
    formula
    是否已填充且与
    <embdMsgChannelInvitationConditions>
    中的所有
    sequence
    编号一致?

API/Mobile Type Checks

API/移动端类型检查

  • Is
    siteUrl
    empty (no site needed)?
  • Is
    deploymentType
    correctly set to
    API
    or
    Mobile
    ?
  • siteUrl
    是否为空(无需站点)?
  • deploymentType
    是否正确设置为
    API
    Mobile

Post-Deploy Checks

部署后检查

  • Is user reminded to publish (Connect API) for Web deployments?
  • Is user reminded to activate components (Tooling API) if messaging components were deployed?

  • 是否提醒用户网页部署需通过Connect API发布?
  • 是否提醒用户若部署了消息组件,需通过Tooling API激活组件?

Output Expectations

输出预期

Deliverables:
  • For API/Mobile create:
    <source-path>/EmbeddedServiceConfig/<DeploymentName>.EmbeddedServiceConfig-meta.xml
  • For Web create: Connect API payload and instructions (no XML file)
  • For update:
    <source-path>/EmbeddedServiceConfig/<DeploymentName>.EmbeddedServiceConfig-meta.xml
File structure follows the templates in
assets/
.

交付物:
  • API/移动端创建
    <source-path>/EmbeddedServiceConfig/<DeploymentName>.EmbeddedServiceConfig-meta.xml
  • 网页创建:Connect API负载及说明(无XML文件)
  • 更新操作
    <source-path>/EmbeddedServiceConfig/<DeploymentName>.EmbeddedServiceConfig-meta.xml
文件结构遵循
assets/
中的模板。

Cross-Skill Integration

跨技能集成

NeedDelegate to
Creating the messaging channel
service-digital-engagement-channel-configure
skill
Creating Omni-Channel routing flows
automation-flow-generate
skill
Creating permission sets for agents
platform-permission-set-generate
skill

需求委托给
创建消息渠道
service-digital-engagement-channel-configure
技能
创建全渠道路由流程
automation-flow-generate
技能
创建代理权限集
platform-permission-set-generate
技能

Reference File Index

参考文件索引

FileWhen to read
assets/esd_api_mobile_template.xml
Before generating API or Mobile type deployments
assets/esd_web_update_template.xml
Before generating Web type updates
references/deployment_settings.md
When configuring deployment options beyond defaults
references/connect_api_creation.md
When creating Web type deployments (Connect API required)
references/branding_and_tooling.md
When user asks about branding configuration
references/code_snippet.md
When user wants the JavaScript embed code snippet for their website
scripts/check-api-version.sh
Phase 1 — verify org API version meets the passed minimum (67.0)
examples/esd_api.xml
To verify output for API type deployment
examples/esd_mobile.xml
To verify output for Mobile type deployment
examples/esd_web_full.xml
To verify output for fully configured Web deployment
文件读取时机
assets/esd_api_mobile_template.xml
生成API或移动端类型部署前
assets/esd_web_update_template.xml
生成网页类型更新前
references/deployment_settings.md
配置默认以外的部署选项时
references/connect_api_creation.md
创建网页类型部署时(需使用Connect API)
references/branding_and_tooling.md
用户询问品牌配置时
references/code_snippet.md
用户需要用于网站的JavaScript嵌入代码片段时
scripts/check-api-version.sh
阶段1 — 验证组织API版本是否满足最低要求(67.0)
examples/esd_api.xml
验证API类型部署的输出时
examples/esd_mobile.xml
验证移动端类型部署的输出时
examples/esd_web_full.xml
验证完全配置的网页部署的输出时