>im 在电视马拉松中寻找创建特定事件
@client.on(events.NewMessage(incoming=True))
async def my_event_handler(event):
if event.is_private:
print("ok")
在此代码中,我需要在NewMessage中具有"is_private",该如何执行此操作?
以及如何创建具有特定条件的事件?例如,我想每天在 12:00 send_message,我该怎么做?*请注意,我有一个事件,所以我无法运行,例如
client.send_message(chat_id, "message") # i want 2 this at 12:00 for example
每个事件都是一个EventBuilder
,这意味着它们都支持func
参数:
@client.on(events.NewMessage(incoming=True, func=lambda e: e.is_private))
async def my_event_handler(event):
print('ok')
如果你要经常重用它,你也可以为它创建一个单独的函数:
def private_incoming(event):
return not event.out and event.is_private
@client.on(events.NewMessage(func=private_incoming))
async def my_event_handler(event):
print('ok')
创建具有特定条件的事件?例如,我想每天在 12:00 send_message
这不是一个事件。事件是作为电报更新和电报调度发生的事情。您的代码可以执行任何它想要的操作,并且在编程时可以使用任意数量的其他库。Telethon的工作不是在特定日期运行东西(这是一个与Telegram交谈的图书馆,仅此而已(。
请参阅使用 asyncio 在每分钟的开始(00 秒(运行函数,或在 https://pypi.org 中搜索库以执行此操作。