Как запустить телеграм-бота из импортированной библиотеки?

Мне необходимо запускать несколько телеграм-ботов с одинаковым функционалом одновременно. Питон, библиотека telebot. Я хочу сделать это следующим образом: файл с програмой бота импортируется в основную программу и боты запускаются путём вызова соответствующей функции с токеном в качестве параметра. И уже в основной программе я буду запускать несколько потоков с разными токенами. Но я столкнулся с проблемой:

PythonВыделить код

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

import telebot
from telebot import types
 
bot=None
token=None
 
def start_bot(token):
    global bot
    bot = telebot.TeleBot(token)
    bot.polling(none_stop=True)
 
 
@bot.message_handler(commands=['start'])
def start(message):
    bot.send_message(message.chat.id, text="Привет")

Сейчас функция start ищет декоратор bot и не находит его, либо находит None. Ошибка.

Я пробовал задавать случайный токен бота изначально, а потом его изменять при помощи функции start_bot. Не работает, декораторы сохраняют привязку к старому токену.

Единственный рабочий вариант - закатать всю программу в одну функцию и вызывать уже её, но это явно не вариант. Как можно решить эту проблему? Заранее спасибо