如果没有消息到达,Telethon 会做一些事情

Telethon do something if no messages arrive

此代码使 python 同步等待消息。 有什么方法可以 运行 一个函数,经常在没有收到电视节目消息时?

async def main():
    me = await client.get_me()
    print(me.stringify())
    @client.on(events.NewMessage('TelegramID'))
    async def new_message_listener(event):
        mensaje = event.message.message
        if mensaje != None:
           print(mensaje)

我希望它每隔 10 分钟在没有收到消息的情况下做一些事情,而不是停止等待接收新消息。

只要异步事件循环是运行,就会收到消息。这意味着您可以执行以下操作,它仍然有效:

import asyncio  # <- new

async def main():
    me = await client.get_me()
    print(me.stringify())
    @client.on(events.NewMessage('TelegramID'))
    async def new_message_listener(event):
        mensaje = event.message.message
        if mensaje != None:
           print(mensaje)

    while client.is_connected():  # <- new
        await asyncio.sleep(10 * 60)
        # do something else every 10 minutes...