前言

Mirai 是一个在全平台下运行,提供 QQ Android 和 TIM PC 协议支持的高效率机器人框架。

笔者将利用 mirai-api-http 搭建一个可以使用 http 通信的 API 后端。

实验环境

  • 服务器:Ubuntu 20.04 LTS arm64

服务器安装 JRE

这里需要注意的是 JRE 分由 Oracal 公司自行编译的封闭的版本和由社区分发的开源版本。

这里建议安装开源版本。

$sudo apt update
$sudo apt install default-jre

服务器安装 mcl

因为 Mirai 直接启动过于复杂,而大家都过于懒惰,所以就出现了 mirai-console-loader 项目(下称 mcl ),用于一键启动 Mirai 项目和管理插件。

下载并解压

点击 此处 前往下载最新版并解压。

安装插件

编辑 config/MiraiApiHttp/setting.yml 文件,修改配置如下。

config/MiraiApiHttp/setting.yml

## 该配置为全局配置,对所有Session有效

# 可选,默认值为0.0.0.0
host: '0.0.0.0'

# 可选,默认值为8080
port: 8080          

# 可选,默认由插件第一次启动时随机生成,建议手动指定
authKey: 1234567890  

# 可选,缓存大小,默认4096.缓存过小会导致引用回复与撤回消息失败
cacheSize: 4096

# 可选,是否开启websocket,默认关闭,建议通过Session范围的配置设置
enableWebsocket: false

# 可选,配置CORS跨域,默认为*,即允许所有域名
cors: 
  - '*'

## 消息上报
report:
# 功能总开关
  enable: false
  # 群消息上报
  groupMessage:
    report: false
  # 好友消息上报
  friendMessage:
    report: false
  # 临时消息上报
  tempMessage:
    report: false
  # 事件上报
  eventMessage:
    report: false
  # 上报URL
  destinations: []
  # 上报时的额外Header
  extraHeaders: {}

## 心跳
heartbeat:
  # 功能总开关
  enable: false
  # 启动延迟
  delay: 1000
  # 心跳间隔
  period: 15000
  # 心跳上报URL
  destinations: []
  # 上报时的额外信息
  extraBody: {}
  # 上报时的额外头
  extraHeaders: {}

在终端上打开目录,运行下列命令以安装插件。

$.\mcl --update-package net.mamoe:mirai-api-http --channel stable --type plugin

运行下列命令以启动。

./mcl

mcl 将自动下载安装相关组件并启动。

考虑到 Linux 环境下无法使用常规方式解决验证码,需要定义常量 mirai.slider.captcha.supported 调整其行为。

$java -Dmirai.slider.captcha.supported -jar mcl.jar

亦可将 ./mcl 文件修改为上述命令后再启动。

登录 QQ

待相关依赖处理完毕后,既可和 mcl 交互。

使用 /autologin add [account] [password] 以添加账户,然后重启 mcl

未完待续

Last modification:February 18, 2021
如果您觉得我的文章有用,给颗糖糖吧~