使用Telegram Bot按定义的时间间隔发送文本消息时出现问题

时间:2018-10-07 01:35:08

标签: python telegram-bot python-telegram-bot

我刚刚开始尝试学习如何使用电报bot API。我正在尝试编写一些代码,以一定的时间间隔向我发送一条短信。我希望能够用一个数字向机器人发送消息,并使用该数字来更改发送消息的时间间隔。这是我的代码:

import sys
import time
import telepot
from pprint import pprint
from telepot.loop import MessageLoop
from random import randint

bot = telepot.Bot('*****')

def RepresentsInt(s):
    try: 
        int(s)
        return True
    except ValueError:
        return False

def handle(msg):
    chat_id = msg['chat']['id']
    command = msg['text']

    print ('Got command: %s' % command)

    if RepresentsInt(command):
        secondscount = int(command)
        bot.sendMessage(123456789, "Messages will now be sent every " + str(secondscount) + " seconds.")

MessageLoop(bot, handle).run_as_thread()

while 1:
    time.sleep(secondscount)
    bot.sendMessage(123456789, "Test message.")

问题在于,当我向机器人发送数字时,间隔实际上并没有得到更新。有没有一种方法可以修复我的代码,以便当我向机器人发送数字时,间隔会更新?抱歉,如果这是一个幼稚的问题,我对此很陌生。

0 个答案:

没有答案