第一次将Slack应用程序安装到工作区时会触发哪种事件类型?

时间:2018-08-24 05:20:28

标签: slack slack-api

我正在尝试构建一个应用程序,该应用程序在首次安装到工作区时会执行某些操作,例如:对每个团队成员执行Ping操作。

我找不到在安装应用后触发的事件类型: https://api.slack.com/events

有没有办法做到这一点?

2 个答案:

答案 0 :(得分:1)

我认为这里的事件概念可能存在误解。事件总是直接链接到一个特定的Slack应用程序,并且需要由该应用程序处理。对于工作场所中发生的事情,例如正在安装的新应用程序,没有所谓的“一般”事件。因此,没有安装应用的事件。

尽管如此,您可以使用Slack来实现您提到的功能,例如首次安装应用后,对所有团队成员执行ping操作。您所需要做的就是将此功能包括在Slack应用的installation process中,例如在安装过程完成并且应用程序验证这是此工作空间的首次安装后,开始ping。您不需要为此的事件。

答案 1 :(得分:0)

这是部分答案,因为我想知道同一件事,并希望分享我发现的内容。在此oauth tutorial上,具有以下代码段:

app.get('/auth', function(req, res){
  if (!req.query.code) { // access denied
    return;
  }
  var data = {form: {
    client_id: process.env.SLACK_CLIENT_ID,
    client_secret: process.env.SLACK_CLIENT_SECRET,
    code: req.query.code
  }};
  request.post('https://slack.com/api/oauth.access', data, function (error, response, body) {
    if (!error && response.statusCode == 200) {
      // Get an auth token
      let oauthToken = JSON.parse(body).access_token;
      // OAuth done- redirect the user to wherever
      res.redirect(__dirname + "/public/success.html");
    }
  })
});

我相信您可以在此时请求ping所有人,甚至可以直接在该处调用函数来代替ping res.redirect(__dirname + "/public/success.html");,并且在安装应用程序后立即触发。