Как завершить цикл infinity_polling(), либо чем его заменить?
Сейчас как вы понимаете код не выполняется дальше строки bot.infinity_polling(), а необходимо как раз чтобы код опросил телеграм-бота на наличие входящих сообщений и пошел дальше выполнять функцию main.tochka(). Как это реализовать? Есть ли функции так скажем единоразового опроса бота, а не зацикленного?
import telebot
import asyncio
import config
import main
import time
bot = telebot.TeleBot(config.TOKEN)
@bot.message_handler(commands=['start'])
def start_message(message):
bot.send_message(message.chat.id, 'Работаем...')
@bot.message_handler(commands=['qwerty'])
def message(message):
try:
bot.send_document(message.chat.id, main.log_file())
except ZeroDivisionError:
bot.send_message(message.chat.id, 'Твой запрос по понятной тебе причине вызвал в коде ошибку ZeroDivisionError.\n'
'Повтори свой запрос позже, примерно через час ;)')
def log_every_day():
if main.timer() == '12:00' or '12:01' or '12:02' or '12:03' or '12:04' or \
'12:05' or '12:06' or '12:07' or '12:08' or '12:09' or '12:10':
bot.send_document(462809334, main.log_file())
try:
while True:
bot.infinity_polling()
main.tochka()
except TimeoutError:
print(f'\n==========================================='
f'===========================================Похоже возникла ошибка подключения к сети.\n'
f'===========================================Попробую переподкючиться через минуту.'
f'\n===========================================\n')
with open(f"log_{main.ti}.txt", 'a') as file:
print(f'\n==========================================='
f'===========================================Похоже возникла ошибка подключения к сети.\n'
f'===========================================Попробую переподкючиться через минуту.'
f'\n===========================================\n', file=file)
time.sleep(60)
while True:
bot.infinity_polling()
main.tochka()