telepot python telegram api - вызывать функцию при отсутствии нового сообщения в течение заданного времени - PullRequest
0 голосов
/ 10 июня 2019

Я хотел бы вызвать функцию, пока Python API телепота находится внутри message_loop, если нет новых сообщений в течение 300 секунд.

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

Вот пример того, что я имею в виду:

import telepot
import time

bot = telepot.Bot("api-token-here")
bot.message_loop(react)
print "waiting for messages"
while 1:
    time.sleep(1)

Теперь я ищу что-то вроде этого:

if time_passed_since_last_message > 300:
    do_sth()

в идеале без остановки и перезапуска бота.

...