我想怎么做:調(diào)度操作,如何結(jié)束文件發(fā)送。但事實(shí)證明,該動(dòng)作持續(xù)了 5 秒,然后又花了 5 秒來(lái)發(fā)送文件,而這次用戶(hù)不明白是機(jī)器人被凍結(jié)還是文件仍在發(fā)送。如何在直接發(fā)送文件之前增加操作持續(xù)時(shí)間?import telebot...def send_file(m: Message, file): bot.send_chat_action(m.chat.id, action='upload_document') bot.send_document(m.chat.id, file)
1 回答

慕桂英3389331
TA貢獻(xiàn)2036條經(jīng)驗(yàn) 獲得超8個(gè)贊
作為提比布斯。M說(shuō)這是不可能的,因?yàn)樗胁僮鞫际峭ㄟ^(guò) API 發(fā)送的。但線(xiàn)程幫助我解決了這個(gè)問(wèn)題。解決方案如下所示:
from threading import Thread
def send_action(id, ac):
bot.send_chat_action(id, action=ac)
def send_doc(id, f):
bot.send_document(id, f)
def send_file(m: Message):
file = open(...)
Thread(target=send_action, args=(m.chat.id, 'upload_document')).start()
Thread(target=send_doc, args=(m.chat.id, file)).start()
...
send_file(m)
因此,可以做到動(dòng)作一結(jié)束,就立即發(fā)送文件,沒(méi)有時(shí)間間隔
添加回答
舉報(bào)
0/150
提交
取消