雖然最終沒有成功配置好qqbot,但是感覺這個過程還是值得記錄的,所以寫出了下文
最終因為登陸qq時的code45問題導致沒有成功登錄,據說更換qq號或者配置簽名服務器是有可能可行的。
安裝環境
安裝mcl(mirai的控制臺)
創建一個文件夾mcl 并進入文件夾
mkdir mcl && cd mcl
尋找適合你的操作系統的的mcl安裝包 (下載鏈接),將安裝包下載到剛剛創建的文件夾中
下面shell指令以mcl-installer-1.0.7-linux-amd64為例
wget https://github.com/iTXTech/mcl-installer/releases/download/v1.0.7/mcl-installer-1.0.7-linux-amd64
賦予可運行權限,運行
chmod +x
./mcl-installer-1.0.7-linux-amd64
這時候就安裝好mcl了,之后只需要進入文件夾后使用
./mcl
就可以打開mcl了
安裝mirai-api-http
打開mcl的目錄,使用指令安裝
./mcl --update-package net.mamoe:mirai-api-http --channel stable-v2 --type plugin
運行mcl
./mcl -u
安裝aliceBot
使用pip安裝
pip install alicebot
pip install alicebot-adapter-mirai
安裝驗證器
驗證器用在登錄qq中
fix-protocol-version
https://github.com/cssxsh/fix-protocol-version
基于mirai的qsign api對接。
qsign(簽名)
已經及咯!TAT
倉庫
https://github.com/MrXiaoM/qsign/tree/bak
發行版下載
https://github.com/MrXiaoM/qsign/releases
mirai-login-solver-sakura
mirai-login-solver-sakura 滑塊驗證解決器
進入mcl的plugins,將github項目中的發行版jar放入文件夾中
wget https://github.com/KasukuSakura/mirai-login-solver-sakura/releases/download/v0.0.12/mirai-login-solver-sakura-0.0.12.mirai2.jar
mirai-device-generator
mirai-device-generator 仿真設備信息生成器
在mcl目錄中使用指令一鍵安裝
./mcl --update-package xyz.cssxsh.mirai:mirai-device-generator --channel maven-stable --type plugin
配置Mirai協議適配器
配置Mirai-api-http
https://docs.alicebot.dev/guide/adapters/mirai-adapter (aliceBot手冊)
編輯 mirai-api-http 的配置文件 setting.yml
。
Websocket Adapter模式
在mirai中的setting.yml文件中合并如下內容(即若原先出現了某個屬性,則進行修改,若原先沒有某屬性則添加)
(setting.yml文件在 ./config/net.mamoe.mirai-api-http/setting.yml
, 若您沒有該文件,請檢查是否安裝并更新好mirai-api-http)
adapters:- ws
enableVerify: true
verifyKey: 1234567890
adapterSettings:ws:host: localhostport: 8080reservedSyncId: -1
創建一個aliceBot項目
官方文檔
項目結構
.
├── plugins (插件目錄)
│ └── xxx.py
├── config.toml (配置文件)
└── main.py
具體步驟
創建一個目錄
mkdir alicebot-start && cd alicebot-start
創建plugins文件夾,用來存放插件
mkdir plugins
創建一個main.py
文件,并寫入如下信息
- shell指令:
vim main.py
- 文件內容:
from alicebot import Botbot = Bot()if __name__ == "__main__":bot.run()
創建config.toml并編寫內容
- shell指令:
vim config.toml
- 文件內容(其中verify_key填寫為上文setting.yml中的verifykey內容 , qq = 填寫為qqbot的qq號)
[bot]
adapters = ["alicebot.adapter.mirai"][adapter.mirai]
adapter_type = "ws"
verify_key = "1234567890"
qq = 機器人QQ號
運行
后臺運行指令
以運行python為例
nohup python3 -u main.py > out.log 2>&1 &
該命令會運行當前目錄下的test.py并把輸出和報錯都發送到文件out.log中。
使用jobs
指令查看后臺運行的進程
jobs
使用kill 指令殺死某個后臺運行的進程(注意使用kill 1
代表殺死進程號為1的進程, kill %1
才是殺死作業號為1的作業)
kill %1