本文所述功能仅限于以下客户使用:在 2025 年 2 月 2 日前已获取人工智能专员(未正式或已正式发布版本)。有关人工智能专员(高级)附加功能中等效功能的信息,请参阅为人工智能专员(高级)构建对话。
进行 API 调用 步骤允许用于消息传送的人工智能专员使用 REST API 请求从外部系统(例如Shopify或Salesforce)抓取数据。

在本配方中,您将创建一个人工智能专员答案,用于检索终端用户提供的位置的天气数据。回复:从 OpenWeather API获取数据。您可以以此配方中创建的回答工作流程为起点,自行创建由 API 提供技术支持的回答。

本配方涉及以下任务:
  • 任务 1:正在检查您的设置
  • 任务 2:创建 API 连接
  • 任务 3:创建自定义工单字段
  • 任务 4:构建人工智能专员回答
  • 任务 5:测试更改
注意:Zendesk 提供的本文章仅供说明之用。Zendesk 不支持此文章中的示例。也不支持第三方技术,例如 OpenWeather API。

任务 1:正在检查您的设置

要完成此配方,您需要:

  • 一个 Zendesk 帐户,其已发布用于消息传送的人工智能专员。您可以 在沙盒测试环境中 先对人工智能专员进行测试,然后再用于生产环境。

    要在 Web 和移动消息传送渠道中设置人工智能专员,请参阅 为您的 Web 和移动渠道创建人工智能专员。有关在沙盒环境中使用消息传送的信息,请参阅 在沙盒环境中使用消息传送。

  • OpenWeather帐户的 API 密钥。本配方中使用的 API 在 OpenWeather 的免费服务模式中可用。

    要注册免费的 OpenWeather 帐户,请参阅 openweathermap.org上的创建新帐户页面。登录后,您可以在您的 OpenWeather 帐户页面获取一个 API 密钥。

    要激活 OpenWeather API 密钥,您必须验证您的帐户电邮地址。验证后,API 密钥可能需要两小时才能激活。如需更多信息,请参阅 openweathermap.org上的常见问题解答。

任务 2:创建 API 连接

首先,创建一个 API 连接以存储您的 OpenWeather API 密钥。您的人工智能专员可使用此连接对 OpenWeather API 的调用进行身份验证。

创建连接的步骤
  1. 在管理中心,单击侧栏中的应用和整合 (),然后选择连接 > 连接。
  2. 单击创建连接。
  3. 选择 API 密钥 身份验证类型。
  4. 输入 openweather_api_key 作为 连接名称。
  5. 输入 x-api-key 作为 标头名称。
  6. 输入您的 OpenWeather API 密钥作为 值。
  7. 输入 api.openweathermap.org 作为 允许的域名。
  8. 单击保存以创建连接。

任务 3:创建自定义工单字段

接下来,创建一个自定义工单字段以捕获终端用户提供的位置。

创建自定义工单字段
  1. 在管理中心,单击侧栏中的对象和规则 (),然后选择工单 > 字段。
  2. 单击添加字段。
  3. 选择文本字段类型。

  4. 输入 位置 作为 显示名称。
  5. 在权限下,选择客户可编辑。
  6. 在 客户下,输入 位置 作为 向客户显示的标题。
  7. 单击保存。

如果您的帐户只使用一张工单表格,新字段将自动显示在该工单表格中。要移除该字段,请参阅 编辑工单表格。

任务 4:构建人工智能专员回答

本部分将引导您完成在智能机器人生成器中创建回复、设置其意向以及添加回复的步骤。这涉及以下步骤:

  • 第 1 步:创建回复
  • 第 2 步:设置答案的意向
  • 第 3 步:添加初始消息步骤
  • 第 4 步:询问终端用户位置
  • 第 5 步:正在检索位置的天气数据
  • 第 6 步:发送天气消息给终端用户
  • 第 7 步:添加失败消息
  • 第 8 步:发布已更新的人工智能专员

第 1 步:创建回复

使用智能机器人生成器为您的人工智能专员创建答案。

创建回复
  1. 在管理中心,单击侧栏中的人工智能 (),然后选择人工智能专员 > 人工智能专员。
  2. 单击您要处理的人工智能专员。
  3. 在答案标签上,单击 创建答案。

第 2 步:设置答案的意向

设置答案的意向和训练短语。包括用于触发对话中回复的短语和字词。

设置回答的意向
  1. 在人工智能专员编辑页面的“答案”标签上,单击 创建答案。
  2. 单击自行创建答案,然后单击下一步。
  3. 输入 获取天气 作为答案的 意向。
  4. 在 训练短语下,输入 获取天气预测 和 获取当前温度。
  5. 单击下一步。

    回复随即在智能机器人生成器中打开,您可以在其中构建回复。

第 3 步:添加初始消息步骤

添加一个 发送消息 步骤,询问用户位置。这是回复流程的第一步。

添加初始消息步骤
  1. 在智能机器人生成器中,单击 添加步骤。
  2. 在 选择步骤下,选择 发送消息。
  3. 在 人工智能专员消息中,输入以下文本:
    
            What location would you like to get the weather for?
    
    Include the country code. For example: "Melbourne, AU" or  "San Francisco, US"
           

第 4 步:询问终端用户位置

在初始消息后,添加“ 询问详情” 步骤,向终端用户显示一个基本表格。该表格有一个文本框,用于输入 位置 工单字段的值。

添加“询问详情”步骤
  1. 在智能机器人生成器中,单击 添加步骤 图标( )。
  2. 在 选择步骤下,选择 询问详情。
  3. 输入 Get location 作为 名称。
  4. 在 字段中,输入并选择 位置 工单字段。

第 5 步:正在检索位置的天气数据

添加一个 进行 API 调用 步骤,以便从 OpenWeather API 的 当前天气数据 端点获取该位置的天气数据。

添加“进行 API 调用”步骤
  1. 在智能机器人生成器中,单击 添加步骤。
  2. 在 选择步骤下,选择 进行 API 调用。
  3. 输入 获取天气 作为 名称。
  4. 在 API 详情下, 输入 https://api.openweathermap.org/data/2.5/weather?units=metric&q=作为 端点 URL。
  5. 使用 添加变量 图标( )以便将 位置 字段变量附加到 端点 URL 值。

    最终的 端点 URL 值应如下所示:

  6. 在 身份验证中,选择 openweather_api 连接。
  7. 要测试 API 请求,单击 进行 API 调用。
  8. 在 测试数据下,输入 澳大利亚墨尔本 作为 位置。
  9. 单击进行 API 调用。
  10. 使用其默认名称保存以下变量:
    • 主要>临时工
    • 天气>项目 1>描述

第 6 步:发送天气消息给终端用户

检索天气数据后,使用 发送消息 步骤,用包含天气数据的消息进行回复。

添加 API 成功消息
  1. 在智能机器人生成器中,单击 获取天气 步骤的 API 调用成功 分支下的 添加步骤 。
  2. 在 选择步骤下,选择 发送消息。
  3. 在 人工智能专员消息中,输入以下文本:
    
            It's {{temp}}° C with {{description}} in
           
  4. 使用 添加变量 图标( )以将 位置 字段变量附加到 人工智能专员消息 值。然后添加句点 (.)。

    完成后的 人工智能专员消息 值应如下所示:

第 7 步:添加失败消息

在 “进行 API 调用” 步骤中发出的请求可能会失败。例如,请求中可能包含不存在的位置。将 发送消息 步骤添加到 API 调用失败 分支。如果 OpenWeather API 调用失败,此步骤将返回一条消息。

添加 API 失败消息
  1. 在智能机器人生成器中,单击 获取天气 步骤的 API 调用失败 分支下的 添加步骤 。
  2. 在 选择 步骤下,选择 发送消息。
  3. 在 人工智能专员 消息中,输入以下文本:
    
            I'm sorry. I wasn't able to get weather data for
           
  4. 使用 添加变量 图标( )以将 位置 字段变量附加到 人工智能专员消息 值。然后添加句点 (.)。

    完成后的 人工智能专员消息 值应如下所示:

第 8 步:发布已更新的人工智能专员

要实时推送答案,请发布更新后的人工智能专员。

发布人工智能专员
  1. 单击智能机器人生成器右上角的完成。
  2. 在人工智能专员页面上,单击 发布人工智能专员。
  3. 单击发布。

任务 5:测试更改

发布更改后,您可以询问“How's the天气?”来测试新的答案。正在与更新后的人工智能专员对话中。有关测试消息传送人工智能专员的更多信息,请参阅 测试终端用户的消息传送体验。

翻译免责声明:本文章使用自动翻译软件翻译,以便您了解基本内容。 我们已采取合理措施提供准确翻译,但不保证翻译准确性

如对翻译准确性有任何疑问,请以文章的英语版本为准。

由 Zendesk 提供技术支持