概览

在 Zendesk 中,您不可以限制用户在帐户中提交的工单数量。但是,您可以创建自定义工作流程,建立一个系统,限制组织内用户在特定时间范围内提交的工单数量。

在此工作流程中,您将找到实施组织字段的步骤,以监测在指定时间范围内提交的工单量,以便进行必要的调整。

此工作流程包括以下步骤。

  • 第 1 步:创建数字型组织字段
  • 第 2 步:创建 Webhook
  • 第 3 步:创建触发器

第 1 步:创建数字型组织字段

此工作流程使用两个自定义数字组织字段来监测并记录用户提交的工单数量。

创建自定义组织字段

  1. 创建 自定义组织字段
  2. 在 选择字段类型下,选择 数字
  3. 在 显示名称下,输入 Counter,选择 保存并添加另一个
  4. 在 选择字段类型下,选择 数字
  5. 在 显示名称下,输入 Counter Last Update Unix并选择 保存

第 2 步:创建 Webhook

此工作流程使用触发器中的 Webhook 来更新请求者的组织和工单标签。

创建 Webhook 的步骤

  1. 创建第一个 Webhook
  2. 使用以下配置 
    • 姓名:更新组织
    • 端点 URL: https://yoursubdomain.zendesk.com/api/v2/tickets/{{ticket.organization.id}}并将 替换为 yoursubdomain 替换为您的帐户子域名。
    • 请求方法:放置
    • 身份验证:基本身份验证
  3. 创建第二个 Webhook
  4. 使用以下配置 
    • 姓名:更新工单标签
    • 端点 URL: https://yoursubdomain.zendesk.com/api/v2/tickets/{{ticket.id}}/tags 并将 替换为 yoursubdomain 替换为您的帐户子域名。
    • 请求方法:放置
    • 身份验证:基本身份验证

Webhook 应如下图所示。

第 3 步:创建触发器

此工作流程使用触发器来验证请求者的当前工单数,并相应更新相应的组织字段和工单标签。

创建第一个触发器的步骤

  1. 创建 新触发器
  2. 在满足以下所有条件下添加:
    • 工单 > 工单 | 是 | 创建于
  3. 在 满足以下任意条件下添加:
    • 组织 > 计数器 | 小于 | 5
    • 组织 > 计数器 | 没有

  4. 在操作下添加:
    • 通知方式 > 活跃的 webhook > 更新组织 ,然后在 JSON 正文中添加以下 JSON 信息:

      {
      "organization": {
      "organization_fields": {
      "counter": "{{ ticket.organization.custom_fields.counter | plus:'1' }}",
      "counter_last_updated_epoch": "{{ 'now' | date: '%s' }}"
      }
      }
      }
  5. 单击创建触发器

创建第二个触发器

  1. 创建 新触发器
  2. 在满足以下所有条件下添加:
    • 工单 > 工单 | 是 | 创建于
    • 组织 > 计数器 | 是 |5

  3. 在 操作 下添加:
    • 通知方式 > 活跃的 Webhook > 更新工单标签 ,然后在 JSON 正文中添加以下信息:
      {% assign nowDateSec = "now" | date: "%s" | minus: 0 %}
      {% assign modDateSec = ticket.organization.custom_fields.counter_last_updated_epoch | date: "%s" | minus: 0 %}
      {% assign result = nowDateSec | minus: modDateSec %}
      {
      "tags": [
      "{% if result < 3600 %}last_ticket_within_1_hour{% else %}last_update_over_1_hour_ago{% endif %}"
      ]
      }
  4. 单击创建触发器

创建第三个触发器

  1. 创建 新触发器
  2. 在满足以下所有条件下添加:
    • 工单 > 工单 | 是 | 已更新
    • 工单 > 工单 标签 > 至少包含以下中的一个 | last_update_over_1_hour_ago
  3. 在 操作 下添加:
    • 通知方式 > 活跃的 webhook > 更新组织 ,然后在 JSON 正文中添加以下信息:
      {
      "organization": {
      "organization_fields": {
      "counter": 1,
      "counter_last_updated_epoch": "{{ 'now' | date: '%s' }}"
      }
      }
      }
    • 工单 > 添加工单标签 | last_update_over_1_hour_ago
  4. 单击创建触发器

创建第四个触发器

  1. 创建 新触发器
  2. 在满足以下所有条件下添加:
    • 工单 > 工单 | 是 | 已更新
    • 工单 > 工单 标签 > 至少包含以下中的一个 | last_ticket_within_1_hour
    • 组织 > 计数器 | 是 |5
  3. 在 操作 下添加:
    • 工单 > 状态类别 > 已关闭
    • 其它 > 按用户电邮通知 | 工单 >(请求者)

      注意:通知用户是可选的,但可以改善用户体验。
  4. 单击创建触发器

此概要概述了用户提交新建工单的工作流程。

  1. 工单创建:
    • 每当创建工单时,都会通过增加工单计数器并保存此更新的时间戳来更新组织字段
  2. 计数器评估:
    • 如果计数器小于允许的最大限制,则工单将继续执行正常的提交流程。
    • 如果计数器达到允许的最大限制,系统会检查最后更新时间,以确定其是否在规定的时间范围内提交
  3. 时间范围检查:
    • 如果最后更新在指定的时间范围外,系统将计数器重置为 1。新的时间戳会记录更改
    • 如果最后一次更新是在该时间范围内,则系统不会更新计数器或保存新的时间戳,将立即关闭工单(通知用户是可选的)
免责声明:本文仅供说明之用。Zendesk 不支持并不保证该代码。如有任何问题,请将其发布在评论部分,或尝试在线搜索解决方案。

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

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

由 Zendesk 提供技术支持