error: Error: Stale RTM connection, closing RTM; rtm_close event not triggered

error: Error: Stale RTM connection, closing RTM; rtm_close event not triggered

我已经创建了一个基本的机器人并保持连接状态。一段时间后,它给出了错误 Stale RTM connection, closing RTMrtm_close 事件未触发,进程仍在 运行 那么为什么机器人停止监听。

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

环境: 当前版本:"version":“0.5.4”(来自 botkit package.json) OS: 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});

事实上,rtm_close 回调被调用,但它抛出了一个没有被捕获的错误。所以,它似乎没有被调用。