先贴一下资源,回头整理。
- 安装java环境
- 通过MiraiOK安装
mirai-console
,运行一次后会创建项目目录 -
下载
mirai-http-api
的jar包放到2中项目里的plugins文件夹下,配置config\MiraiApiHttp\setting.yml
文件里的authKey
,自己随便填写即可。 - 重启
mirai-console
,除了最后的报错应该没有红字,如下图
mirai-console.png - 登录qq账号,命令形如
login qq号码 密码
- 选择需要的SDK,我这边用的社区开发的Python SDK,地址在这里,安装方法见他们的文档,主要是两句
pip install graia-application-mirai
pip install graia-broadcast --upgrade
-
启动bot代码,显示如下信息则正常
python-sdk.png
示例代码
from graia.broadcast import Broadcast
from graia.application import GraiaMiraiApplication, Session
from graia.application.message.chain import MessageChain
import asyncio
from graia.application.message.elements.internal import Plain
from graia.application.friend import Friend
loop = asyncio.get_event_loop()
bcc = Broadcast(loop=loop)
app = GraiaMiraiApplication(
broadcast=bcc,
connect_info=Session(
host="http://localhost:8080", # 填入 httpapi 服务运行的地址
authKey="0123456789", # 填入在setting.yml中设置的authKey
account=88888888, # 你的机器人的 qq 号
websocket=True # Graia 已经可以根据所配置的消息接收的方式来保证消息接收部分的正常运作.
)
)
@bcc.receiver("FriendMessage")
async def friend_message_listener(message: MessageChain, friend: Friend, app: GraiaMiraiApplication):
msg = message.asDisplay()
if msg.startswith(".help"):
await app.sendFriendMessage(friend, MessageChain(__root__=[Plain(".help\t显示帮助指令\r\n.copy\t复读")]))
elif msg.startswith(".copy "):
msg = msg[6:]
await app.sendFriendMessage(friend, MessageChain(__root__=[Plain(msg)]))
else:
await app.sendFriendMessage(friend, MessageChain(__root__=[Plain("收到!")]))
app.launch_blocking()
- 尝试给机器人发消息看是否收到回复。