
Я слежу за постом herokuвключая этот конкретный раздел. Если я делаю изменение noop и запускаю новый deploy, бот отвечает. Но затем через некоторое время я вижу, что бот перестает отвечать:
- Панель управления Heroku не показывает ничего странного (не показывает, что он спит)
- Загружается веб-страница приложения.https://yourappname.herokuapp.com(не из кэша)
- В журналах ошибок нет.
Возможно ли, что это проблема с кодом starbot, который не поддерживает открытое соединение? Как я могу это диагностировать?
решение1
Вы используете vanilla starbot без других модификаций? Ваш вопрос неясен.
Вот несколько возможных решений для вас (в произвольном порядке):
1) Попробуйте запустить starbot локально и посмотрите, поддерживает ли он открытое соединение.
2) Попробуйте запустить starbot на VPS или какой-либо другой хостинговой платформе и посмотрите, поддерживает ли он открытое соединение.
3) звездный бот используетСлэк JSкак библиотека, которая обрабатывает базовое соединение Slack. Он использует довольно старую версию (6.1.0 согласнопакет.json). Возможно, это может быть причиной. (Текущая версия — 11.0.2.) Вы можете попробовать запустить ответвленную версию starbot с обновленными зависимостями, хотя это может привести к поломке кода.
4) Развивая предыдущий пункт,rtm.client
похоже, больше не является частью официального API. С другой стороны, я посмотрел на два других случайных проекта на GitHub, которые реализуют эту библиотеку (ретроботивыполнить), и оба они, похоже, используют синтаксис rtm.client
, поэтому я не могу сказать, не проведя дополнительных исследований библиотеки. Вы можете попробовать найти репозиторий на GitHub, содержащий уже написанного бота, который использует самую последнюю версию библиотеки, чтобы увидеть, как он выглядит/работает.
5) Вы можете написать собственного бота, который напрямую использует библиотеку Slack JS.
6) Вы можете написать своего собственного бота, который используетофициальный Slack SDK для NodeJSа не неофициальный SlackJS.