一次性任务
有些时候,我们只希望执行"一下"操作,然后就退出,要怎么实现呢?
执行“一下”操作,那么就不用监听事件了,所以我们并不需要定义handler,但是我们要执行操作,也就是说,我们要调用 API,那么,对应协议端的adapter还是要配置的,对应的协议端也是要启动的
adapter的配置,见此处
默认情况下,PepperBot 会持续监听事件,是因为我们调用了
bot.run()
方法,所以,如果我们只想跑一次的话,只要配置了 adapter,然后 asyncio.run()一下我们定义的任务即可
import asyncio
from pepperbot import PepperBot
from pepperbot.core.bot.universal import ArbitraryApi
from pepperbot.core.message.segment import Text
bot = PepperBot(
    port=53521,
    debug=True,
)
bot.register_adapter(
    bot_protocol="onebot",
    receive_protocol="websocket",
    backend_protocol="http",
    backend_host="127.0.0.1",
    backend_port=5700,
)
# bot.register_adapter(
#     bot_protocol="keaimao",
#     receive_protocol="http",
#     backend_protocol="http",
#     backend_host="192.168.0.109",
#     backend_port=8090,
# )
api = ArbitraryApi
async def main():
    await api.onebot.group_message("1041902989", Text("消息测试"))
asyncio.run(main())