Files
sim/apps/docs/content/docs/zh/tools/slack.mdx
2025-12-18 21:01:51 -08:00

285 lines
11 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
title: Slack
description: 发送、更新、删除消息,在 Slack 中添加反应,或通过 Slack 事件触发工作流
---
import { BlockInfoCard } from "@/components/ui/block-info-card"
<BlockInfoCard
type="slack"
color="#611f69"
/>
{/* MANUAL-CONTENT-START:intro */}
[Slack](https://www.slack.com/) 是一个商业通信平台,为团队提供统一的消息、工具和文件管理场所。
<iframe
width="100%"
height="400"
src="https://www.youtube.com/embed/J5jz3UaWmE8"
title="Slack Integration with Sim"
frameBorder="0"
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
allowFullScreen
></iframe>
使用 Slack您可以
- **自动化代理通知**:将 Sim 代理的实时更新发送到任何 Slack 频道
- **创建 webhook 端点**:将 Slack 机器人配置为 webhook以通过 Slack 活动触发 Sim 工作流
- **增强代理工作流**:将 Slack 消息集成到您的代理中,以传递结果、警报和状态更新
- **创建和共享 Slack 画布**:以编程方式在 Slack 频道中生成协作文档(画布)
- **从频道读取消息**:从任何 Slack 频道检索和处理最近的消息,用于监控或工作流触发
- **管理机器人消息**:更新、删除以及为您的机器人发送的消息添加反应
在 Sim 中Slack 集成使您的代理能够以编程方式与 Slack 交互,并将完整的消息管理功能作为其工作流的一部分:
- **发送消息**:代理可以向任何 Slack 频道或用户发送格式化消息,支持 Slack 的 mrkdwn 语法以实现丰富的格式化
- **更新消息**:编辑之前发送的机器人消息,以更正信息或提供状态更新
- **删除消息**:在消息不再需要或包含错误时删除机器人消息
- **添加反应**:通过为任何消息添加表情符号反应来表达情感或确认
- **创建画布**:直接在频道中创建和共享 Slack 画布(协作文档),以实现更丰富的内容共享和文档化
- **读取消息**:读取频道中的最近消息,允许根据频道活动进行监控、报告或触发进一步操作
- **下载文件**:检索 Slack 频道中共享的文件以进行处理或存档
这允许实现强大的自动化场景,例如发送具有动态更新的通知、通过可编辑的状态消息管理对话流程、通过反应确认重要消息,以及通过删除过时的机器人消息保持频道整洁。您的代理可以提供及时的信息,随着工作流的进展更新消息,创建协作文档,或在需要注意时提醒团队成员。此集成弥合了您的 AI 工作流与团队沟通之间的差距,确保每个人都能获得准确、最新的信息。通过将 Sim 与 Slack 连接,您可以创建能够在适当的时间为团队提供相关信息的代理,通过自动共享和更新见解增强协作,并减少手动状态更新的需求——同时利用您的团队已经在使用的 Slack 工作区进行沟通。
## 使用说明
将 Slack 集成到工作流程中。可以发送、更新和删除消息,创建画布,读取消息并添加反应。在高级模式下需要使用 Bot Token 而不是 OAuth。可以在触发模式下使用当消息发送到频道时触发工作流程。
## 工具
### `slack_message`
向 Slack 频道或直接消息发送消息。支持 Slack mrkdwn 格式。
#### 输入
| 参数 | 类型 | 是否必需 | 描述 |
| --------- | ---- | -------- | ----------- |
| `authMethod` | string | 否 | 认证方法oauth 或 bot_token |
| `botToken` | string | 否 | 自定义 Bot 的令牌 |
| `channel` | string | 否 | 目标 Slack 频道(例如,#general |
| `userId` | string | 否 | 目标 Slack 用户 ID用于直接消息例如U1234567890 |
| `text` | string | 是 | 要发送的消息文本(支持 Slack mrkdwn 格式) |
| `thread_ts` | string | 否 | 回复的线程时间戳(创建线程回复) |
| `files` | file[] | 否 | 附加到消息的文件 |
#### 输出
| 参数 | 类型 | 描述 |
| --------- | ---- | ----------- |
| `message` | object | 包含 Slack 返回的所有属性的完整消息对象 |
| `ts` | string | 消息时间戳 |
| `channel` | string | 发送消息的频道 ID |
| `fileCount` | number | 上传的文件数量(当附加文件时) |
### `slack_canvas`
在频道中创建并分享 Slack 画布。画布是 Slack 内的协作文档。
#### 输入
| 参数 | 类型 | 是否必需 | 描述 |
| --------- | ---- | -------- | ----------- |
| `authMethod` | string | 否 | 认证方法oauth 或 bot_token |
| `botToken` | string | 否 | 自定义 Bot 的令牌 |
| `channel` | string | 是 | 目标 Slack 频道(例如,#general |
| `title` | string | 是 | 画布的标题 |
| `content` | string | 是 | 画布内容,使用 markdown 格式 |
| `document_content` | object | 否 | 结构化的画布文档内容 |
#### 输出
| 参数 | 类型 | 描述 |
| --------- | ---- | ----------- |
| `canvas_id` | string | 创建的画布 ID |
| `channel` | string | 创建画布的频道 |
| `title` | string | 画布的标题 |
### `slack_message_reader`
阅读 Slack 频道中的最新消息。通过筛选选项检索会话历史记录。
#### 输入
| 参数 | 类型 | 是否必需 | 描述 |
| --------- | ---- | -------- | ----------- |
| `authMethod` | string | 否 | 认证方法oauth 或 bot_token |
| `botToken` | string | 否 | 自定义 Bot 的令牌 |
| `channel` | string | 否 | 要读取消息的 Slack 频道(例如,#general |
| `userId` | string | 否 | DM 会话的用户 ID例如U1234567890 |
| `limit` | number | 否 | 要检索的消息数量默认10最大15 |
| `oldest` | string | 否 | 时间范围起始(时间戳) |
| `latest` | string | 否 | 时间范围结束(时间戳) |
#### 输出
| 参数 | 类型 | 描述 |
| --------- | ---- | ----------- |
| `messages` | array | 频道中的消息对象数组 |
### `slack_list_channels`
列出 Slack 工作区中的所有频道。返回机器人有权限访问的公共和私人频道。
#### 输入
| 参数 | 类型 | 是否必需 | 描述 |
| --------- | ---- | -------- | ----------- |
| `authMethod` | string | 否 | 认证方法oauth 或 bot_token |
| `botToken` | string | 否 | 自定义 Bot 的 Bot token |
| `includePrivate` | boolean | 否 | 包括机器人是成员的私人频道默认true |
| `excludeArchived` | boolean | 否 | 排除已归档的频道默认true |
| `limit` | number | 否 | 返回的最大频道数量默认100最大200 |
#### 输出
| 参数 | 类型 | 描述 |
| --------- | ---- | ----------- |
| `channels` | array | 工作区中的频道对象数组 |
### `slack_list_members`
列出 Slack 频道中的所有成员(用户 ID。可与获取用户信息功能结合使用将 ID 解析为名称。
#### 输入
| 参数 | 类型 | 是否必需 | 描述 |
| --------- | ---- | -------- | ----------- |
| `authMethod` | string | 否 | 认证方法oauth 或 bot_token |
| `botToken` | string | 否 | 自定义 Bot 的 Bot token |
| `channel` | string | 是 | 要列出成员的频道 ID |
| `limit` | number | 否 | 返回的最大成员数量默认100最大200 |
#### 输出
| 参数 | 类型 | 描述 |
| --------- | ---- | ----------- |
| `members` | array | 频道成员的用户 ID 数组例如U1234567890 |
### `slack_list_users`
列出 Slack 工作区中的所有用户。返回包含名称和头像的用户资料。
#### 输入
| 参数 | 类型 | 是否必需 | 描述 |
| --------- | ---- | -------- | ----------- |
| `authMethod` | string | 否 | 认证方法oauth 或 bot_token |
| `botToken` | string | 否 | 自定义 Bot 的令牌 |
| `includeDeleted` | boolean | 否 | 是否包含已停用/已删除的用户默认值false |
| `limit` | number | 否 | 返回的最大用户数量默认值100最大值200 |
#### 输出
| 参数 | 类型 | 描述 |
| --------- | ---- | ----------- |
| `users` | array | 工作区中的用户对象数组 |
### `slack_get_user`
通过用户 ID 获取特定 Slack 用户的详细信息。
#### 输入
| 参数 | 类型 | 是否必需 | 描述 |
| --------- | ---- | -------- | ----------- |
| `authMethod` | string | 否 | 认证方法oauth 或 bot_token |
| `botToken` | string | 否 | 自定义 Bot 的令牌 |
| `userId` | string | 是 | 要查询的用户 ID例如U1234567890 |
#### 输出
| 参数 | 类型 | 描述 |
| --------- | ---- | ----------- |
| `user` | object | 用户的详细信息 |
### `slack_download`
从 Slack 下载文件
#### 输入
| 参数 | 类型 | 是否必需 | 描述 |
| --------- | ---- | -------- | ----------- |
| `authMethod` | string | 否 | 认证方法oauth 或 bot_token |
| `botToken` | string | 否 | 自定义 Bot 的令牌 |
| `fileId` | string | 是 | 要下载的文件 ID |
| `fileName` | string | 否 | 可选的文件名覆盖 |
#### 输出
| 参数 | 类型 | 描述 |
| --------- | ---- | ----------- |
| `file` | file | 下载的文件存储在执行文件中 |
### `slack_update_message`
更新由机器人在 Slack 中之前发送的消息
#### 输入
| 参数 | 类型 | 是否必需 | 描述 |
| --------- | ---- | -------- | ----------- |
| `authMethod` | string | 否 | 认证方法oauth 或 bot_token |
| `botToken` | string | 否 | 自定义 Bot 的令牌 |
| `channel` | string | 是 | 消息发布的频道 ID例如C1234567890 |
| `timestamp` | string | 是 | 要更新的消息的时间戳例如1405894322.002768 |
| `text` | string | 是 | 新的消息文本(支持 Slack mrkdwn 格式) |
#### 输出
| 参数 | 类型 | 描述 |
| --------- | ---- | ----------- |
| `message` | object | 包含 Slack 返回的所有属性的完整更新消息对象 |
| `content` | string | 成功消息 |
| `metadata` | object | 更新的消息元数据 |
### `slack_delete_message`
删除由机器人在 Slack 中之前发送的消息
#### 输入
| 参数 | 类型 | 是否必需 | 描述 |
| --------- | ---- | -------- | ----------- |
| `authMethod` | string | 否 | 认证方法oauth 或 bot_token |
| `botToken` | string | 否 | 自定义 Bot 的令牌 |
| `channel` | string | 是 | 消息发布的频道 ID例如C1234567890 |
| `timestamp` | string | 是 | 要删除的消息的时间戳例如1405894322.002768 |
#### 输出
| 参数 | 类型 | 描述 |
| --------- | ---- | ----------- |
| `content` | string | 成功消息 |
| `metadata` | object | 已删除消息的元数据 |
### `slack_add_reaction`
为 Slack 消息添加表情符号反应
#### 输入
| 参数 | 类型 | 是否必需 | 描述 |
| --------- | ---- | -------- | ----------- |
| `authMethod` | string | 否 | 认证方法oauth 或 bot_token |
| `botToken` | string | 否 | 自定义 Bot 的令牌 |
| `channel` | string | 是 | 消息发布的频道 ID例如C1234567890 |
| `timestamp` | string | 是 | 要添加反应的消息的时间戳例如1405894322.002768 |
| `name` | string | 是 | 表情符号反应的名称不带冒号例如thumbsup、heart、eyes |
#### 输出
| 参数 | 类型 | 描述 |
| --------- | ---- | ----------- |
| `content` | string | 成功消息 |
| `metadata` | object | 反应元数据 |
## 注意
- 类别:`tools`
- 类型:`slack`