0

我创建了一个基本的机器人并将其保持连接。一段时间后,它给出了错误Stale RTM connection, closing RTM。该rtm_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});

在此处输入图像描述

4

1 回答 1

0

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

于 2017-05-09T05:31:45.603 回答