松弛的RTM API获取频道列表

时间:2017-05-11 10:54:51

标签: node.js api bots slack-api rtm

我正在使用简单的slack bot RTM API模板,该模板在https://github.com/slackapi/node-slack-sdk

中给出
var RtmClient = require('@slack/client').RtmClient;
var CLIENT_EVENTS = require('@slack/client').CLIENT_EVENTS;
var bot_token = process.env.SLACK_BOT_TOKEN || '';
var rtm = new RtmClient(bot_token);

问题是如何获取频道名称?

我发现我应该使用与WEB API兼容的channel.list

但是当我使用RTM API时如何调用WEB API?而且,一般来说,为什么所有这些都过于复杂?

1 个答案:

答案 0 :(得分:2)

以下样本怎么样?请在使用时导入您的访问令牌。

示例:

var WebClient = require('@slack/client').WebClient;
var web = new WebClient('## your access token ##');
web.channels.list(function(err, info) {
  if (err) {
    console.log(err);
  } else {
    for(var i in info.channels) {
      console.log("%s", info.channels[i].name, info.channels[i].id);
    }
  }
});

结果:

channelName1 channelID1
channelName2 channelID2
channelName3 channelID3

如果我误解了你的问题,我很抱歉。