本文僅供學習,代碼已開源至github
0.總述
Mirai是一個基於kotlin,java(mcl)的機器人框架,以其生態系統著名
如果要深入學習Mirai框架,需要了解其生態系統以及運維,這樣解決問題也更簡單。
Mirai-console
的插件,是基於java或者kotlin
官方提供了一個api:mirai-api-http
具體的模式如下圖所示
1.准備
- 准備一個JDK (版本≥12)
- .到Github的Releases出下載zip包
- Windows store 下載Windows Terminal
- 在Terminal 里cd到zip包的對應路徑並輸入
java
測試有沒有正常輸出 - 准備好你的小號
2.登錄##
- 在Terminal 里輸入
./mcl
- 提示登錄小號(第一次登錄會有登錄認證)
- 輸入
exit
3.正式搭建
- 在Terminal里輸入
.\mcl --update-package net.mamoe:mirai-api-http --channel stable --type plugin
添加插件 - 輸入
.\mcl
測試 - 如果未報錯就輸入
exit
退出mcl - 找到根目錄下的
/config/net.mamoe.mirai-api-http/setting.yml
用記事本打開 - 里面有一個authkey, 可以自己設置,作為以后的連接密碼(切記:連接密碼和QQ密碼不同)
- 找到
enable_websocket=false
把false改成true - 運行.\mcl和根目錄下的bot.py
- 如果bot.py報錯缺少模塊就用
pip install 相應缺少庫
4.Python回復模塊
- 嘗試向你的機器人發送一條信息,此時機器人不會回復你,而mcl會顯示你向機器人發送的信息
- 在bot.py添加監聽機制,使用plain關鍵詞發送信息,(這里注意一定要用異步的async def和await,否則會堵塞住進程)
- 監聽群組的機制也是一樣的,注意@bcc.reciver要改成GroupMessage類,並且提前導入庫
graia.application.group
- 向你的機器人發送信息,如果不出意外的話機器人會通過plain方法向你發送測試信息