如何在 Slack 中创建自定义斜杠命令
Slack是一种团队生产力工具,附带许多用于定制的配置和服务。Slash Commands是其可定制功能中最好的一项。斜杠命令本质上是关键字,当您在 Slack 中将它们作为消息输入并带有前面的正斜杠符号 (/)时,它们会执行特定操作
另请阅读:
10 个提高工作效率的有用 Slack 工具
内置斜杠命令
当前的一组内置 Slash 命令 在 Slack 中执行一系列预定义的功能。例如,通过/away
在消息输入框中输入 Slash 命令,您可以切换帐户状态,如下图所示。

自定义斜杠命令
您还可以在 Slack 中创建自定义 Slash 命令。自定义 Slash 命令允许开发人员向 Web 应用程序或服务发出安全的 HTTP 请求,并接收来自它们的相关响应,这些响应显示为新的 Slack 消息。
推荐阅读:
如何从您的应用程序向 Slack 发送自定义消息
例如,假设有一个 Web 服务以纯文本形式返回足球比赛的当前比分。您可以创建一个 Slash 命令来向该 Web 服务发出安全的 HTTP 请求,并在 Slack 消息窗口中显示收到的分数作为响应文本。
创建斜杠命令
要创建 Slash 命令,请在浏览器的地址栏中输入https://[yourTeam].slack.com/apps/build/custom-integration URL,只需将 [yourTeam] 占位符替换为您的 Slack 团队的名称,然后单击斜杠命令选项。

在下一个屏幕上,输入要用于 Slack 命令的关键字(不要使用任何空格),然后单击添加斜线命令集成按钮。如果需要,您可以稍后编辑此关键字。

在下一个屏幕上,您可以配置Slash 命令的设置。您需要输入要将请求发送到的Web 应用程序的 URL 。您还可以看到刚刚创建的 Slash 命令的令牌值,您可以在 Web 服务器中使用它来验证Slack 发送的请求。

显示响应
默认情况下,对 Slash 命令发出的请求的响应在消息窗口中显示为纯文本。如果您更愿意以 Slack 消息格式显示消息,则响应需要采用有效的JSON格式。
此外,默认情况下,斜杠命令的响应仅对输入该命令的用户可见,而对频道中的其他用户不可见。只有当响应是一个有效的 JSON携带value调用的属性"response_type"
"in_channel"
时才能更改,然后通道中的所有用户都可以看到响应。该"text"
属性包含将在消息中显示的主要文本。
1个
2个
3个
4个
5个
|
// Example JSON response { "response_type" : "in_channel" , "text" : "..." } |
例如,我将显示一个 ASCII 艺术棋盘以响应我/lets-play
在上一节中创建的自定义 Slash 命令,以演示您也可以在响应中显示更复杂的字符。您可以在 Slack API 文档 中阅读有关Slack 消息格式的 更多信息。
下面,您可以看到我的示例 Slash 命令将显示的JSON 响应的屏幕截图,或者您可以在 Github 上找到相同的 JSON 文件。
如果您还希望在消息中换行,请在属性值中使用\n
换行符"text"
。
运行命令
转到 Slack 中的频道或DM消息窗口,然后在消息输入字段中输入新的 Slash 命令。如果您在 Slash 命令设置中勾选了在自动完成列表中显示此命令复选框,您将在键入时在建议列表中看到您的命令。
如果您还没有,并且想现在更新此设置,则可以返回到 Slash 命令设置页面,然后通过单击命令右侧的小铅笔图标来编辑您的配置。
您可以在下面看到一个 gif 演示,它演示了我的带有 ASCII 艺术棋盘的自定义 Slash 命令如何在 Slack 中工作。