一次性任务
有些时候,我们只希望执行"一下"操作,然后就退出,要怎么实现呢?
执行“一下”操作,那么就不用监听事件了,所以我们并不需要定义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())