Привет habr! Я решил сделать бота, который будет принимать некие параметры, после он будет начинать отправлять сообщения по заданным параметрам ( entity, delay, text, times ), но возникла проблема, я пытаюсь запустить два eventloop`а, один из них telebot infinity polling для бота который получает данные, а второй тоже telebot infinity polling но для клиент-аккаунта телеграм, который будет выполнять функционал бота. Моя последняя, проблемная функция выглядит так:
def implement(message):
if message.text == "✅Да":
bot.send_message(message.chat.id, "Погнали!")
bot.send_message(message.from_user.id, message.from_user.id)
startBot(message, user.count, user.text, user.delay) # вот она, проблемная функция, при её выполнении вылезает ошибка ниже, после кода. Все данные сохраняются в объекте user, если это как-то касается решения.
elif message.text == "❌Нет":
msg = bot.send_message(
message.chat.id, "Возвращаю в главное меню...", reply_markup=markup)
bot.register_next_step_handler(msg, welcome)
Ошибка:
2022-05-25 21:16:20,277 (__init__.py:573 MainThread) ERROR - TeleBot: "Infinity polling exception: There is no current event loop in thread 'WorkerThread2'."
2022-05-25 21:16:20,278 (__init__.py:575 MainThread) ERROR - TeleBot: "Exception traceback:
Traceback (most recent call last):
File "C:\Users\User\AppData\Local\Programs\Python\Python310\lib\site-packages\telebot\__init__.py", line 569, in infinity_polling
self.polling(none_stop=True, timeout=timeout, long_polling_timeout=long_polling_timeout,
File "C:\Users\User\AppData\Local\Programs\Python\Python310\lib\site-packages\telebot\__init__.py", line 620, in polling
self.__threaded_polling(non_stop=non_stop, interval=interval, timeout=timeout, long_polling_timeout=long_polling_timeout,
File "C:\Users\User\AppData\Local\Programs\Python\Python310\lib\site-packages\telebot\__init__.py", line 694, in __threaded_polling
raise e
File "C:\Users\User\AppData\Local\Programs\Python\Python310\lib\site-packages\telebot\__init__.py", line 650, in __threaded_polling
self.worker_pool.raise_exceptions()
File "C:\Users\User\AppData\Local\Programs\Python\Python310\lib\site-packages\telebot\util.py", line 143, in raise_exceptions
raise self.exception_info
File "C:\Users\User\AppData\Local\Programs\Python\Python310\lib\site-packages\telebot\util.py", line 89, in run
task(*args, **kwargs)
File "C:\Users\Администратор\Desktop\workspace\python\autopost bot\main.py", line 142, in debug
autoPost(message, user.count, user.text, user.delay)
File "C:\Users\Администратор\Desktop\workspace\python\autopost bot\main.py", line 132, in autoPost
client.send_message(entity, text)
File "C:\Users\User\AppData\Local\Programs\Python\Python310\lib\site-packages\telethon\sync.py", line 35, in syncified
loop = asyncio.get_event_loop()
File "C:\Users\User\AppData\Local\Programs\Python\Python310\lib\asyncio\events.py", line 656, in get_event_loop
raise RuntimeError('There is no current event loop in thread %r.'
RuntimeError: There is no current event loop in thread 'WorkerThread2'.