在电视马拉松中添加新事件



>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 中搜索库以执行此操作。

最新更新