创建通过 webhook 启动的工作流程
- 所有成员(默认)
- 在付费套餐中可用
工作流程是自动化多步骤任务或流程,可以直接在 Slack 中运行。工作流程繁简随意,通常无需编写任何代码。要创建工作流程并设置为在外部服务中发生某个事件时运行,你可以使用 webhook。
开始使用须知
- 熟悉如何使用命令行或其他工具来发送 HTTP 申请
- 了解 incoming webhook。如需获取指导,请阅读关于 Slack API 的文档,或向你团队中的开发人员寻求帮助
注意:拥有者和管理员可以限制对使用 webhook 创建工作流程的访问。如果你在工作流程构建器中看不到此选项,请向拥有者或管理员求助。
工作流程设置
Webhook 工作流程基础知识
Slack 中的所有工作流程都是响应触发器的操作启动的。要使用 webhook 触发工作流程,你将需要配置 webhook,以便在另一个服务中发生特定事件时运行工作流程。例如,你可以创建这种工作流程:在网站出现问题后在特定频道中发布消息,以便工程团队检查相应故障。
配置你的 webhook
你用来创建和配置 webhook 的外部服务必须允许你在某些事件发生时向 Slack 发出 HTTP POST 请求。你的工作流程一旦发布,Slack 将为其生成唯一的请求网址,你可以配置 webhook 以通过 HTTP 请求主体将信息传递至 Slack。你的 webhook 发送至 Slack 的任何数据都可以通过创建变量,以供添加到工作流程中的步骤引用。
小窍门:如果你不确定如何配置你的 webhook,我们建议你向团队中的开发人员寻求帮助,或参考由所用服务提供的支持文档,如 Postman 或 Zapier。
创建自定义变量
你可以添加最多 20 个变量,以从另一项服务将数据传递给 Slack,并在添加到你的工作流程的 步骤中包含特定于 Slack 的信息(例如显示名或电子邮件地址)。
要创建自定义变量,你可以在工作流程构建器中添加键值对作为基于文本的变量。在你添加变量后,你会看到 HTTP 正文的预览,这样你就可以确保这些值与你通过 webhook 连接至 Slack 的其他服务中的 JSON 输出相匹配。请注意,工作流程变量中目前还不能使用嵌套的 JSON 结构。
在下面的示例中,如果用户、严重程度和事件说明没有与你的 webhook 请求一起发送,工作流程就会失败。
小窍门:如果你需要在任何节点添加、移除或修改变量,请在工作流程构建器中打开工作流程。然后单击先从 webhook 开始旁边的 铅笔图标,以便作出修改。你还需要确保对变量的任何修改都会反映在发送 webhook 请求的外部服务中。
获取你的网络请求网址
当你发布工作流程时,Slack 会生成一个唯一的请求网址,你可以将其添加到你的 webhook 中,以确保它将你设置的 POST 发送至正确频道。申请网址以 https://hooks.slack.com/triggers 作为开头,后接随机字符串。
保证你的申请网址的安全,因为任何拥有此链接的人员都可以触发你的工作流程。
注意:webhook 工作流程每秒只能接受一个申请。了解更多关于 Slack API 速率限制的信息。
添加步骤来结束工作流程
增加步骤
一旦你配置了 webhook 并创建了任何你想使用的变量,你就可以为你的工作流程添加步骤了。
- 在工作流程构建器中打开你的工作流程。
- 单击添加步骤。
- 选择你想要添加的步骤类型,然后按照提示自定义步骤。
测试你的工作流程
在将工作流程发布至你的工作区成员经常使用的频道中之前,你可以设置将第一步发布到测试频道中。
- 向你的工作流程的请求网址发送一个 POST,并执行所有步骤来确保一切正常工作。
- 回到工作流程构建器,更新工作流程的第一步,将其发布到你喜欢的频道,然后发布更改。