为集成的自定义操作添加配置

笔记:本文适用于 AWS Lambda、Function、Genesys Cloud、Google、Microsoft Dynamics 365、Salesforce、Web 服务和 Zendesk 数据操作集成。

创建自定义操作时,首先添加合约,然后添加配置。 配置定义了操作如何执行合同。 有关更多信息,请参阅 创建自定义操作 和向自定义操作 添加合约

注意: 您可以在发布操作后修改配置。 有关更多信息,请参阅在自定义操作中 修改配置
  1. 单击配 选项卡。 
  2. 选择 HTTP 方法。
  3. 请求下,配置操作发送到 Web 服务的请求。 Genesys 建议使用 “ 简单” 下的字段配置请求
    提示: 单击 “ 可用输入” 下的属性 以复制并快速将其粘贴到请求中。 这些属性来自你的输入合约。 有关更多信息,请参阅向自定义操作 添加合约。 你可以在模板中使用宏。 有关详细信息,请参阅数据操作的 Velocity 宏

    输入显示的字段的信息。 显示的字段根据所选的 HTTP 方法和添加的合同而有所不同。

    注释:
    • 对于 AWS Lambda 数据操作集成和 Google Cloud Functions(第一代),请参阅以下内容特殊要求配置部分。
    • 过度嵌套的 JSON 对象会影响数据操作服务的性能。 为了保持性能,JSON 对象的深度限制为 50 级。 有关更多信息,请参阅 Genesys Cloud 开发者中心中的限制。
  4. 请求 URL 模板

    将 请求 URL 模板设置 为 HTTP 请求点击的远程终端节点。

  5. 标题 (可选)

    在发送到远程终端节点的请求中作为 HTTP 标头添加的键值对。

    注意: 如果要设置 Accept 标头,则必须使用 JSON 媒体类型作为标头值。

  6. 执行超时

    将数据操作的执行超时时间设置为 1 至 60 秒之间。当您未设置超时值时,将使用默认超时值 60 秒。当HTTP请求运行的时间超过设定的时间时,数据操作将返回超时响应。超过指定时间限制后,数据动作执行将不再受并发限制。有关详细信息,请参阅数据操作超时前需要等待多少秒?

    笔记:为了确保流的超时逻辑正确执行并防止不必要的数据操作处理,请将数据操作的超时设置为比流的配置超时长一秒。此最佳实践可确保数据操作在流程超时后不会继续,从而帮助管理并发限制。

  7. 传输编码

    如果您的 Web 服务不支持 设置为分 块的 传输编码,请添加 传输编码: 标题下缓冲。 有关详细信息,请参阅 自定义操作因意外原因而失败

  8. 授权

    您可以在请求配置中包含授权信息。 有关更多信息,请参阅 如何使用用户定义的凭据类型如何使用用户定义 (OAuth) 凭据类型

  9. 特殊要求配置

    与 AWS Lambda 数据操作集成关联或执行 Google Cloud Functions(第 1 代)的自定义操作的请求配置与 Web 服务的标准请求配置不同。

    • 请求 URL 模板

      将 请求 URL 模板设置 为 AWS Lambda 函数的 ARN。 有关更多信息,请参阅 创建 IAM 资源以调用 AWS Lambda 函数。 

    • 请求类型

      请求 类型设置POST。 此 HTTP 方法可确保操作发送带有请求配置的任何请求正文。

    • 标头

      添加到 ClientContext 对象上的 自定义 映射的键值 对。 C lientContext 对象又是调用上 下文 对象上的一个值。 如果存在以下属性,则会在上下 对象上自动设置这些属性:

      • 组织内 ID
      • 在家中组织 ID
      • inin-关系-ID
      • inin-User-ID
      • Inin-InIn-Integration-ID

      有关 ClientContext 对象的 Java 示例,请参阅 接口客户端上下文。 

    • 请求模板

      您在 请求模板下指定的任何值都 将在调用的 AWS Lambda 函数的 事件 参数中提供。

    • 请求 URL 模板

      将 请求 URL 模板设置 为 HTTP 请求点击的远程终端节点。

    • 请求类型

      请求 类型设置POST。 此 HTTP 方法可确保操作发送带有请求配置的任何请求正文。

    • 标头

      添加到 ClientContext 对象上的 自定义 映射的键值 对。 C lientContext 对象又是调用上 下文 对象上的一个值。 如果存在以下属性,则会在上下 对象上自动设置这些属性:

      • 组织内 ID
      • 在家中组织 ID
      • inin-关系-ID
      • inin-User-ID

      有关 ClientContext 对象的 Java 示例,请参阅 接口客户端上下文。 

    • 请求模板

      您在请求模板将在事件调用的 AWS Lambda 函数的参数。 客户端上下文有长度限制,不能用于传递 Genesys Cloud Function 数据操作所需的证书。要包含凭据中配置的证书,请使用请求模板的主体,该主体没有大小限制。

    • 请求 URL 模板

      设置请求 URL 模板到您希望执行数据操作的 Google Cloud Function(第 1 代)的位置: https://{函数位置}-{项目拥有函数}/{函数名称}

    • 请求类型

      请求 类型设置POST

    • 请求模板

      请求模板${input.rawRequest}

    有关请求各部分的详细说明,请参阅 请求数据操作的配置

    熟悉 JSON 的人可以使用 JSON 输入选项。 在其他操作或以下示例中使用请求作为创建 JSON 的指南。

    {
      "requestUrlTemplate": "https://www.example.com/health/check/services/${input.service}",
      "requestType": "GET",
      "headers": {},
      "requestTemplate": "${input.rawRequest}"
    }

  10. 响应下,添加 JSON 配置。

    JSON 配置定义了如何处理来自 Web 服务或 AWS Lambda 函数的响应。

    您可以在其他操作或以下示例中使用响应作为创建 JSON 的指南。 有关在成功模板中使用宏的详细信息,请参阅针对数据操作的 Velocity 宏

    提示: 单击 可用输出下的属性 以复制它们并将其快速粘贴到响应中。 这些属性来自你的输出合约。 有关更多信息,请参阅向自定义操作 添加合约
    {
          "translationMap": {
              "buildNumber": "$.Build-Version",
              "serviceName": "$.name",
              "status": "$.Status"
          },
          "successTemplate": "{\r\n      \t\"build\": ${buildNumber},\r\n      \t\"name\": ${serviceName},\r\n\"status\": ${status}\r\n      }"
     }

    有关响应各部分的详细说明,请参阅数据操作的 响应配置

下一个,添加函数用于 Genesys Cloud Function。对于其他数据操作,测试动作验证和执行错误。

有关更多信息,请参阅 关于集成的自定义操作

有关集成的更多信息,请参阅 关于数据操作集成