错误:错误:过时的RTM连接,关闭RTM; rtm_close事件未触发

时间:2017-05-08 19:36:47

标签: javascript slack-api botkit

我创建了一个基本的机器人并将其连接起来。过了一段时间,它给出了错误Stale RTM connection, closing RTMrtm_close事件未被触发且进程仍在运行,那么机器人为何停止聆听。

如何处理生产中的此类问题?为什么rtm_close事件没有被触发?

环境: 当前版本:"版本":" 0.5.4" (来自botkit package.json) 操作系统:macOS Sierra(版本:10.12.4)

简单代码:

function rtmManager(controller, config) {
  var bot = controller.spawn(config);
  bot.startRTM(function(err, bot) {
  if (err) {
    debug('Failed to start RTM')
  }
  } );
  controller.on('rtm_close', function(bot) {
    debug('RTM connection is closed');
  });
  return bot;
}
var Botkit = require('botkit');
var bot_options = {
   debug : process.env.DEBUG || false,
};
var controller = Botkit.slackbot(bot_options);
controller.startTicking();
rtmManager(controller, {token: process.env.SLACK_TOKEN});

enter image description here

1 个答案:

答案 0 :(得分:0)

实际上,调用了rtm_close回调,但是它抛出的错误是没有被捕获的。所以,它似乎没有被称为。