做一个nonebot2的插件让它能够调用茉莉云api进行对话能够回复艾特他的人记住是回复艾特并且艾特一次后能够回复多次只发送插件文件
以下是一个使用茉莉云API进行对话的nonebot2插件示例,可以回复艾特的人并且能够多次回复:
import aiohttp
from nonebot import on_message
from nonebot.adapters.cqhttp import Bot, Event
from nonebot.typing import T_State
# 在这里替换成你自己的茉莉云API信息
API_KEY = "your_api_key"
API_SECRET = "your_api_secret"
# 创建插件对象
chat = on_message()
@chat.handle()
async def _(bot: Bot, event: Event, state: T_State):
# 判断是否是艾特了机器人
if not event.get_user_id() or event.get_user_id() != bot.self_id:
return
# 获取对话内容
message = str(event.get_message())
if not message:
return
# 调用茉莉云API进行对话
async with aiohttp.ClientSession() as session:
async with session.post(
"http://i.itpk.cn/api.php?question=" + message +
"&api_key=" + API_KEY + "&api_secret=" + API_SECRET
) as resp:
response = await resp.text()
# 发送对话回复
await chat.finish(response)
# 导出插件对象
plugin = chat
将以上代码保存为chat_plugin.py,并将API_KEY和API_SECRET替换为你在茉莉云申请的API密钥信息。
在nonebot2的配置文件中添加该插件,在bot.py中导入并注册该插件:
from nonebot import get_bot
bot = get_bot()
# 导入并注册插件
from chat_plugin import plugin
bot.load_plugin(plugin)
bot.run()
然后运行bot.py启动机器人,并艾特机器人进行对话,机器人将会使用茉莉云API进行回复
原文地址: https://www.cveoy.top/t/topic/hTFu 著作权归作者所有。请勿转载和采集!