Slack RTM Bot - не может оставаться на связи

Я использую бот Slack RTM, и он работает нормально, за исключением того, что он часто теряет связь без видимых ошибок. Он просто перестает отвечать. Завершив работу кода Python и перезапустив его, я могу восстановить его.

У меня есть перехват ошибок по всему коду, чтобы убедиться, что ошибка не приводит к сбою всего кода. Но кроме того, у меня есть все соединение со Slack в блоке try: exception:, следующим образом:

while True:
        try:
            if slack_client.rtm_connect(with_team_state=False, auto_reconnect=True):
                bot_id = slack_client.api_call("auth.test")["user_id"]
                while True:
                    command, channel = parse_bot_commands(slack_client.rtm_read())

                    if command:
                        handle_command(command.upper(), channel)
                    time.sleep(RTM_READ_DELAY)
            else:
                print("Connection failed.")
        except ConnectionResetError:
            pass

Примечание. Приведенный выше код основан на информации, приведенной здесь: https://www.fullstackpython.com/blog/build-first-slack-bot-python.html Подробную информацию о функциях parse_bot_commands() и handle_command() можно найти там. Хотя я предполагаю, что они не являются источником проблемы.

Обратите внимание, что когда бот не отвечает, консоль НЕ показывает никаких сообщений об ошибках, и сообщение "Ошибка подключения" НЕ отображается.

Любые идеи будут оценены.

0 ответов

Другие вопросы по тегам