> ## Documentation Index
> Fetch the complete documentation index at: https://docs.coze.cn/llms.txt
> Use this file to discover all available pages before exploring further.

你可以为低代码智能体添加触发器（Triggers），使得低代码智能体发布到飞书后，可以在特定时间或接收到特定事件时自动执行任务。
:::notice 注意
功能升级中，暂不支持为低代码智能体添加触发器。已添加的触发器不受影响，仍可使用。
:::
![Image=347x353](https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/a597a1cb83b8431399b2c56e2236e783~tplv-goo7wpa0wc-image.image)
## 什么是触发器 {#9703707d}
触发器功能是智能体的预置任务，添加触发器后，智能体会在指定的时间和指定事件发生时自动执行任务。
<!-- @cols-width: 157,682 -->
| | | \
|**类别** |**说明** |
|---|---|
| | | \
|触发方式 |触发器根据触发方式，可以分为以下两种： |\
| | |\
| |* **定时触发**（Scheduled trigger）：让智能体在指定时间执行任务，无需编写任何代码。 |\
| |* **事件触发**（Event trigger）：当你的服务端向触发器指定的 Webhook URL 发送 HTTPS 请求时，自动执行任务。 |
| | | \
|任务类型 |触发器被触发后，可执行的任务类型包括： |\
| | |\
| |* **智能体提示词**：自动执行某个自然语言指令。选择该模式时，需要同时设置一条自然语言的指令，扣子编程会在指定时间把这条指令发送给智能体，智能体也会立即回复用户。例如设置**触发时间** 13:00，**机器人提示**为`提醒我午休`，智能体会在每天 13:00 主动发送一条消息提醒用户午休。 |\
| |* **调用插件**：自动调用某个插件，并将插件的返回结果发送给用户。例如添加一个查询天气的插件，定时向用户发送指定地点的天气信息。 |\
| |* **调用工作流**：自动调用某个工作流，并将工作流的返回结果发送给用户。例如可以添加一个审批工作流，当触发后执行工作流完成业务审批。 |
| | | \
|设置方式 |开发者和用户都可以为智能体设置触发器，其区别如下： |\
| | |\
| |* **开发者设置**：开发者在编排智能体时可创建各种类型的触发器，此触发器在所有支持触发器的发布渠道均生效，提示所有用户。 |\
| |* **用户设置**：用户在和智能体对话时可以设置定时任务。智能体会根据用户的 IP 地址判断其所在时区，并基于时区与用户指定的时间执行某个指令。例如`每天早上八点推送新闻`。 |

## 使用限制 {#3a844de2}

* 开发者在每个智能体中最多可添加 10 个触发器，用户侧设置的定时任务不计入触发器数量。
* 触发器功能仅对**飞书**渠道生效，只有将智能体发布到飞书渠道，才可以自动执行触发器的任务。
* 触发器绑定的工作流或插件应在 1 分钟内运行完毕，且工作流应关闭流式输出功能，否则触发器可能不会按照预期的方式运行，例如不推送消息、推送的消息不完整。
* 为智能体或应用设置触发器后，其关联工作流中插件节点的授权操作以及问答节点、输入节点将运行异常。

## 用户设置定时任务 {#91caf7de}
当开发者在智能体编排页面的**触发器**区域，开启**允许用户在对话中创建定时任务**开关后，用户在**飞书**平台与智能体进行对话时，可以输入自然语言来创建定时任务。例如发送一条消息 `每天16:00推送新闻`。

::::cols
@col 50
**触发器配置**
![Image=1649x336](https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/63ae151a50304e57b5e839a4db3d4b0a~tplv-goo7wpa0wc-image.image)



@col 50
**在飞书中与智能体对话**
![Image=297x290](https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/b70e32efc3c048c09d6f7c8c78d89851~tplv-goo7wpa0wc-image.image)

::::


## 开发者添加触发器 {#827d7a3f}
开发者在智能体**编排**页面的**技能**区域添加触发器并将智能体发布到飞书后，智能体将根据指定的时区和时间执行预设的定时任务。
![Image=415x195](https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/5564177b3ca14210b1ca68b57570fca4~tplv-goo7wpa0wc-image.image)
### 定时触发器 {#c711a8da}
单击+图标，添加一个触发器，并在**创建触发器**对话框，完成以下配置。
<!-- @cols-width: 203,554 -->
| | | \
|**配置** |**说明** |
|---|---|
| | | \
|名称 |触发器名称。 |
| | | \
|触发器类型 |选择**定时触发**。 |
| | | \
|触发时间 |设置定时触发器的时区以及触发时间，智能体会在指定的时间执行指定的任务。支持设置固定时间和时间间隔，例如每天 13:00 执行任务、间隔 2 天执行任务等。 |
| | | \
|任务执行 |设置触发后执行任务的方式。支持设置为： |\
| | |\
| |* **机器人提示**：执行某个指令。选择该模式时，需要同时设置一条自然语言的指令。 |\
| |* **插件**：执行某个插件。选择该模式时，需要同时单击右侧 **+** 图标，添加一个插件。 |\
| |* **工作流**：执行某个工作流。选择该模式时，需要同时单击右侧 **+** 图标，添加一个工作流。 |\
| | |\
| |如果插件或工作流有输入参数，则需要设置参数值。 |

例如创建一个定时任务，每天8:00练习口语。
![Image=302x272](https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/92d05dc3c81949479dd584d0f4443494~tplv-goo7wpa0wc-image.image)
### 事件触发器 {#48a0f8de}
在智能体的编排页面的技能区域，为智能体添加一个**事件触发**类型的触发器。成功添加后，如果你的服务端向触发器指定的 Webhook URL 发送 HTTPS 请求时，智能体会自动执行任务。
<!-- @cols-width: 203,554 -->
| | | \
|**配置** |**说明** |
|---|---|
| | | \
|名称 |触发器名称。 |
| | | \
|触发器类型 |选择**事件触发**。 |
| | | \
|模式 |目前仅支持 **Webhook** 模式。在该模式下，你将获取到触发器的 Webhook URL，通过向 Webhook URL 发送 HTTPS 请求，可触发该触发器。 |
| | | \
|Bearer Token |请求校验令牌。你可以直接使用默认提供的 Token，也可以修改 Token 值。向 Webhook URL 发送 HTTPS 请求时，请求头必须包含该 Token，用于完成请求的安全校验。 |
| | | \
|请求参数 |请求参数列表，单击右侧 **+** 图标即可添加参数。该参数列表为可选配置，用于关联触发器中插件或者工作流的请求参数，后续向 Webhook URL 发送请求时，需要以 JSON 格式传入参数值。 |
| | | \
|任务执行 |设置触发后执行任务的方式。支持选择： |\
| | |\
| |* **机器人提示**：该方式需要通过自然语言设置提示词。 |\
| |* **插件**或**工作流**：这两种方式需要你单击右侧 **+** 图标，添加插件或工作流（仅可添加一个）。如果插件或工作流有输入参数，则需要设置参数值。参数值可以在触发器内直接设置；也可以关联 Webhook 的请求参数列表，后续在发送 HTTPS 请求时传入参数值。 |

示例如下：
![Image=387x374](https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/1340ba4ba3bf429ca9523f6b7d5f2ea4~tplv-goo7wpa0wc-image.image)
## 试运行触发器 {#090c4efb}
在开发调试阶段，你可以在智能体编排页面的**预览与调试**区域，单击**技能** > **触发器**，运行某一事件触发器，进行调试。
![Image=1844x466](https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/8de1219d73c84adb8a731443b6c7b8fb~tplv-goo7wpa0wc-image.image)
当智能体发布后，则需要向触发器的 Webhook URL 发送 HTTPS POST 请求，触发任务执行。
以 cURL 构成的 HTTPS 请求为例，格式如下：
```Bash
curl --location --request POST '<Trigger Webhook URL>' \
--header 'Authorization: Bearer <Trigger Bearer Token>' \
--header 'Content-Type: application/json' \
--data '<Trigger Parameters>'
```


* `curl`：命令行工具，支持通过 HTTP、HTTPS、FTP 等多种协议发送请求或接收数据。
* `--request POST '<Trigger Webhook URL>'`：定义当前请求为 HTTPS POST 请求，其中 `<Trigger Webhook URL>` 为占位符，你需要替换为触发器真实的 Webhook 地址（可在智能体的事件触发器详情页复制 URL）。
* `--header 'Authorization: Bearer <Trigger Bearer Token>'`：请求头参数，通过 `Authorization` 完成请求校验来确保安全性，其中 `<Trigger Bearer Token>` 为占位符，你需要替换为触发器真实的 Bearer Token。
* `--header 'Content-Type: application/json'`：固定取值，用于定义消息体类型为 JSON。
* `--data '<Trigger Parameters>'`：HTTPS POST 请求包含的数据内容。如果触发器内的插件或工作流需要输入参数，则需要将 `<Trigger Parameters>` 占位符替换为 JSON 格式的请求参数体。

示例如下：
```Bash
curl --location 'https://api.xxxx/api/xxxx' \
--header 'Authorization: Bearer ABCxxxxx' \
--header 'Content-Type: application/json' \
--data '{
    "url": "www.example.com"
}'
```

发送请求后，响应结果包含的 BaseResp 中的 StatusCode 为 0 表示请求成功。如果 StatusCode 不为 0，你可以通过 HttpCallBackRespDatas 获取错误信息，并根据错误信息作出相应调整。

