如何从Rails发送Slack消息(附实例)

207 阅读1分钟

本教程介绍了如何从Rails应用程序中发送Slack消息。

创建一个Slack应用程序

在编写任何代码之前,我们需要按照Slack的教程来创建一个应用并获得一个令牌。在该教程中,有一个名为 "创建预配置的应用程序 "的部分,允许我们选择一个工作区并创建一个应用程序。查看配置后,我们可以点击'创建'。

创建应用后,我们会被带到应用设置页面。在 "基本信息 "部分,有一个按钮可以在我们的工作区安装该应用程序。

最后,我们可以导航到 "安装应用程序 "部分,以获取OAuth令牌。

从Rails发送消息

为了处理这个问题,我们将使用 slack-ruby-clientgem。第一步是将其添加到Gemfile中并运行bundler:

1
gem 'slack-ruby-client'

接下来,我们要在一个新的初始化文件中添加一个 Slack.configure块到一个新的初始化文件中,我们将其称为 config/initializers/slack.rb.在里面,我们将使用一个ENV var,它被设置为先前获得的OAuth令牌:

1
2
3
Slack.configure do |config|
  config.token = ENV['SLACK_BOT_USER_OAUTH_TOKEN']
end

发送消息很简单,只有两行代码:

1
2
client = Slack::Web::Client.new
client.chat_postMessage(channel: '#general', text: "Hello world!", as_user: true)