请求的自定义触发器


自定义触发器用于为满足某些预配置条件的传入请求或记录配置自动化操作。

 

您可以自动化多个流程,例如发送自定义电子邮件通知、根据资源字段信息创建新请求,或设置与第三方应用程序的集成。

 

所需角色:SDAdmin 或 HelpDeskConfig

 

要配置请求自定义触发器,请转到 管理 > 自动化 > 自定义触发器 > 请求。

 

触发已定义的工作流  

 

当传入请求匹配某些条件时,您可以配置自动执行特定操作。这些条件是指在创建、编辑、永久删除或移至回收站时,请求字段必须包含的值。

 

除了指定的事件之外,自定义触发器还可以在以下情况下执行:

  • 请求被复制。

  • 事件请求被转换为服务请求,或反之亦然。

  • 通过维护生成请求。

 

自定义触发器被分类到不同的组中。

 

创建新组

 

  1. 单击 触发器组。

  2. 为该组提供名称和说明。

  3. 单击 保存保存并新增

 

 

配置自定义触发器

 

  • 将鼠标悬停在所需组上,然后单击 添加触发器

  • 使用以下说明填写显示的表单:

    • 触发器名称:为触发器提供一个名称。

    • 说明:添加有关需要该触发器的简短说明。

    • 执行操作:选择在请求生命周期中的何时或哪些事件执行该触发器:创建、编辑、永久删除或移至回收站。

    • 执行期间:选择触发器的执行时间范围——任意时间、在工作时间内,或在工作时间外。

    • 级联执行:选择触发器的执行顺序:

      • 应用列表视图中配置的下一个触发器。

      • 跳过当前触发器组中剩余的触发器,并执行下一个触发器组(如果有)。

      • 跳过所有触发器组中剩余的全部触发器。

    • 当请求到达时:定义传入请求的条件。您可以选择基于条件标准应用条件、基于自定义函数应用条件,或不应用任何条件。

      • 基于条件标准应用条件 - 使用下拉列表选择条件标准。您可以使用 AND/OR 运算最多配置 100 个条件标准。

        • 对于给定的条件标准,您可以配置多个子条件。

        • 对于请求者、技术人员、组等字段,您可以使用占位符为动态输入配置条件标准,例如 $All my groups 和 $Logged in user。

        • 对于状态、创建者和部门等多选字段,您可以通过单击 > 基于其子字段值配置条件标准

    • 使用自定义函数应用条件 - 使用请求自定义函数定义条件标准。
      • 不应用任何条件 - 自定义触发器将应用于所有传入请求。
如果未配置任何条件,则仅当触发器执行后产生的操作会修改或更改请求字段值时,才会执行该触发器。如果即使执行触发器也不会对请求字段值产生任何更改,则不会执行已配置的触发器。   

 

 

配置自定义操作  

  

自定义触发器被配置为对满足特定传入条件的请求执行各种操作。

 

在 ServiceDesk Plus 中,您可以为自定义触发器从以下 7 种自定义操作中进行选择:

 

 

您不能在同一个触发器中同时配置自定义函数、脚本和类。

 

通知

 

您可以使用自定义操作向技术人员、请求者和相关干系人发送电子邮件和短信通知。您还可以为这些通知创建新模板并保存。

 

您可以发送的通知示例如下:

  • 在请求创建时,立即将高优先级或重要请求通知给技术人员。

  • 当工单分配给技术人员时通知请求者。

 

要配置通知,请转到选择自定义操作 > 通知操作。

 

电子邮件通知模板窗口将打开。单击模板字段并选择所需的模板。

 

 

选择一个模板,并使用变量、占位符或组织角色来选择您想要通知的用户。

 

支持的占位符如下:

 

  • $Requester

  • $Ticket_Owner

  • $Group_Members

  • $On_Behalf_Of_Users

  • $Editor

  • $CC_Users

  • $Shared_Requesters

  • $Shared_Technicians

  • $Task_Owners

  • $Linked_To_Request_Owner

  • $Linked_Requests_Owners

  • $Dependent_Requests_Owners

  • $Current_Level_All_Approvers

  • $Current_Level_Approvers_of_Approved_Approvals

  • $Current_Level_Approvers_of_Pending_Approvals

  • $Current_Level_Approvers_of_Denied_Approvals

  • $Preceding_Levels_All_Approvers

  • $Preceding_Levels_Approvers_of_Pending_Approvals

  • $Preceding_Levels_Approvers_of_Approved_Approvals

  • $Preceding_Levels_Approvers_of_Denied_Approvals

  • $Succeeding_Levels_All_Approvers

  • $Email ids to be Notified

 

您还可以将附加字段用作变量。

 

 

单击 新建 以创建新模板。

 

提供模板名称并选择模式:短信/电子邮件。

 

提供相关主题。

 

请注意,短信模式不允许添加附件。对于电子邮件,默认附件大小为 10MB。此设置可由您的系统管理员修改。

 

 

自定义函数  

 

自定义函数允许您在 ServiceDesk Plus 和其他外部应用程序中处理数据。自定义函数支持的参数为 requestObj 和 context。

 

将自定义函数配置为自定义操作

 

  1. 操作 下,选择 自定义操作 > 自定义函数。

  2. 选择要执行的自定义函数,或单击 新建 立即创建函数。

  3. 单击保存。

 

 

要了解如何编写自定义函数,请访问此页面

 

自定义脚本  

 

自定义脚本允许用户修改应用程序的行为和用户界面。在脚本文件中,您可以编写要执行的操作。

 

 

默认支持以下请求操作:

 

按照下面文档中描述的步骤,有效地编写所需操作。

 

 

执行类 

 

在类文件中,您可以编写要执行的操作。

  1. 将类文件放置在 [SDP_Home]/integration/lib/ 目录下。

  2. 在“操作”下,选择 自定义操作 > 执行类

  3. 复制类文件名并将其粘贴到文本框中。

  4. 单击 保存

 

 

 Webhook 

 

Webhook 允许用户调用外部 URL 或 API,以促进 ServiceDesk Plus 与任何第三方应用程序之间的通信。

 

您可以在 管理 > 开发者空间 > Webhooks配置 Webhook

 

创建 Webhook 后,您可以选择某个 Webhook 作为自动化的操作。

 

  1. 在“操作”下,选择 自定义操作 > Webhooks

  2. 选择要执行的 Webhook。

  3. 单击 保存

 

 

用户定义操作

当满足触发条件时,可跨实例自动执行操作。支持的操作取决于所选实例。

当用户定义操作在与触发器相同的实例中执行时 - 您可以创建请求、子请求、公告、自定义模块记录,以及请求子实体,例如任务、备注和清单。

当用户定义操作在不同实例中执行时 - 您可以创建请求、自定义模块记录和公告。

要配置用户定义操作,

  1. 操作下,选择 自定义操作 > 用户定义操作

  2. 从下拉列表中选择所需的实例。实例会根据当前登录用户的权限显示。

  3. 系统会根据所选实例列出支持的操作。

  4. 要创建操作,请将鼠标悬停在所需操作上,然后单击 新建。在一个实例中,针对某项操作最多可添加 100 个操作。

  5. 要添加现有操作,请单击所需操作,并从可用选项中选择所需操作。您可以编辑或删除现有操作。

  6. 单击 选择

 

 

有关用户定义操作的行为和配置的详细说明,请参阅此处

审批级别操作

当满足触发条件时,可向请求添加多个审批级别。您最多可以配置五个审批级别。仅可为“已创建”、“已编辑”和“已导入”事件添加审批级别。

如果在“已编辑”事件期间再次触发这些操作,则审批级别也会再次触发,即使审批已经完成也是如此。但是,审批级别最多仅限五个。如果在“已创建”事件期间已经添加了五个审批级别,则在操作再次触发时不能再添加其他级别。

 

要配置审批级别操作,

  1. 操作下,选择 自定义操作 > 审批级别操作

  2. 选择现有操作,或单击 新建 以创建一个。

  3. 请根据以下说明填写表单:

 

字段

说明

名称*

为审批提供一个名称。

描述

简要描述该审批。

级别名称*

为审批级别提供一个名称。

等待条件*

选择审批条件:

任意一人批准 - 只要至少一位审批人批准,即视为审批通过;仅当所有人都拒绝时才视为拒绝。

所有人批准 - 仅当所有审批人都批准时才视为审批通过;否则视为拒绝。

首个响应操作 - 第一位审批人批准时即视为审批通过;否则视为拒绝。

审批人*

可按组织角色、请求用户或用户引用附加字段来选择审批人。

输入用户名并从下拉列表中选择该用户。

通知模板

选择全局模板或自定义模板。

主题*

全局模板:系统会自动填充主题和消息。您不能直接编辑消息。若要修改消息,请转到 管理 > 自动化 > 通知规则 > 请求。在 电子邮件模板用于 部分下,单击“审批(级别 1)” > “自定义模板”,然后进行所需更改。

自定义模板:为审批通知提供主题和消息。您也可以根据需要包含变量。

消息

 

  • 单击 保存

If-If 操作  

 

If-If 操作允许您将多个自定义操作捆绑在一起,并在满足指定条件时执行这些操作。

 

对于一个自定义触发器,您只能配置一个 If-If 操作。

 

场景

 

如果传入请求的类别是 Server,则通过电子邮件通知站点负责人有关该问题。如果类别是 Quality Issue,您可以配置 webhook 向 Slack 中的某个频道发送通知。

If-If 操作如何工作?  

 

If-If 操作中的块会按顺序进行评估,并根据条件匹配情况执行。

 

您最多可以添加 10 个 If 块,并在每个 If 块中最多配置 5 个操作。

 

您可以将通知、自定义函数、自定义脚本或 webhook 配置为自定义操作。

 

您不能在同一个块中同时配置自定义函数和自定义脚本。

 

配置 If-If 操作  

  • 在“操作”下,单击 选择自定义操作 > If-If。

  • 使用下拉列表配置条件。您可以使用 AND/OR 组合最多创建 10 个条件。

  • 使用可用选项配置操作:通知操作、自定义函数、执行脚本或 Webhook。

  • 单击“添加 If 块”以添加另一个块,或单击 更新

 

 

 If -Else 操作  

您可以使用 If-Else 操作在条件满足和不满足时分别配置操作。

 

对于一个自定义触发器,您只能配置一个 If-Else 操作。

 

场景:当使用 Employee Onboarding 模板创建请求时,向人力资源部门发送电子邮件以启动入职流程。

 

  • 如果员工的职位是 Member Technical Staff,则使用自定义脚本在 AD 中创建账户,并将其添加到 Zylker 组。

  • 否则,使用自定义脚本在 AD 中创建账户,并将该员工添加到 Zylker Trainee 组。

 

If-Else 操作如何工作?  

 

If-Else 操作中的块会按顺序进行验证。

 

If-Else 操作包含三种类型的块:If、Else-If 和 Else。

 

If 块*

  • 根据条件匹配执行操作。

  • 默认提供一个 If 块。

Else-If 块

  • 仅当 If 块未执行时,才会验证 Else-If 块。

  • 根据条件匹配执行操作。

  • 您最多可以在 If 和 Else 块之间添加 8 个 Else-If 块。

Else 块*

  • 仅当 If 块和 Else-If 块都未执行时,才会执行 Else 块。

  • 默认提供一个 Else 块。

* 必需块

 

配置 If-Else 操作  

 

  • 在“操作”下,单击 选择自定义操作 > If-Else

  • 在 If 块中,使用下拉列表配置条件。您最多可以使用 AND/OR 组合添加 10 个条件。

  • 使用可用选项配置操作:通知操作、自定义函数、执行脚本或 Webhook。您最多可以在每个块中配置 5 个操作。

  • 要添加 Else-If 块,请单击 添加条件 并配置条件和操作。

  • 定义 If 和 Else-If 块后,在 Else 块中配置一个操作,然后单击 更新

 

 

配置 Zia 代理

要配置 Zia 代理,请转到 选择自定义操作 > Zia 代理
选择 Zia 代理。要了解更多信息,请单击此处

注意:每个自定义触发器只能配置一个代理。