Telebot сообщения пишутся в одного бота при подключении нескольких
В 1-ом варианте когда пишешь сообщения любому боту всегда отвечает 2-ой. Как сделать 1-ый вариант так же как 2-ой (где, которому боту пишешь, тот и отвечает), но с помощью цикла?
import telebot
from threading import Thread
option = 1
bot = [
'TOKEN_1',
'TOKEN_2'
]
for i in range(len(bot)):
bot[i] = telebot.TeleBot(bot[i], parse_mode = "MarkdownV2")
if option == 1:
# 1
for i in range(len(bot)):
@bot[i].message_handler(content_types = ['text'])
def main(message):
bot[i].send_message(message.chat.id, 'message')
Thread(target = bot[i].infinity_polling).start()
elif option == 2:
# 2
@bot[0].message_handler(content_types = ['text'])
def main(message):
bot[0].send_message(message.chat.id, 'message')
@bot[1].message_handler(content_types = ['text'])
def main(message):
bot[1].send_message(message.chat.id, 'message')
Thread(target = bot[0].infinity_polling).start()
Thread(target = bot[1].infinity_polling).start()
print('end_of_commands')
Источник: Stack Overflow на русском