我有一个处理程序:
@dp.message_handler(content_types=["video"])
如何通过它保存视频,哪个会去输入?
我想做这个功能:
def f(???):
print(???)
f(1 2 3 4 5)
我需要以某种方式做到这一点,不是用逗号,而是用空格。帮助
写一个电报机器人,就出现了这样的问题。我使用 shedule 每 10 秒向用户发送一条消息:
schedule.every(10).seconds.do(get_sending_function,str(message.chat.id)).tag(str(message.chat.id))
其中 message.chat.id 只是特定用户的 id。我正在调用一个函数:
def get_sending_function(chatId):
bot.send_message(chatId, "ATTENTION! You didn't answer the questions!")
for i in db.collection('users').document('ID').get().to_dict().items():
if i[0] == str(chatId):
mas = i[1]
break
if mas[0] == False:
schedule.clear(chatId)
return
else:
return 0
这里我通过数据库获取一个特殊列中的值,如果它是 False,那么 shedule 应该停止工作。问题是,在那之后它会进行另一次发送,并且只有在那之后它才会停止工作。如何解决?
需要一个电报机器人的计时器。底线是,如果用户在 1 小时内没有发送消息,那么机器人必须给他写信,否则会中断循环。代码如下所示:
@bot.message_handler(content_typer=['text'])
def fio(message):
text = message.text
timing = time.time()
while True:
if message.text != text:
break
if time.time() - timing > 3600:
bot.send_message(message.chat.id,'ВНИМАНИЕ! Вы не ответили на вопросы!')
timing = time.time()
sleep(10)
问题是 message.text 不会改变,即使你给机器人写了一些东西。所以我不知道如何摆脱这个循环。帮助某人
python电报机器人