项目简介
本项目是基于Go语言开发的开源系统,其核心功能是将用户的比赛信息推送到QQ群,方便群友进行点评。系统集成了OpenDota API以获取玩家比赛信息,利用Mirai框架实现与QQ的交互,还具备生成荣誉证书图像并发送到群里的能力。
项目的主要特性和功能
- 事件处理:接收Mirai机器人上报的多种事件,包括消息、群消息、好友消息等,并执行对应的命令处理函数。
- 数据获取:通过OpenDota API获取玩家比赛信息,用于生成每周最佳玩家图像。
- 命令管理:支持用户使用特定命令触发不同操作,如订阅、查询订阅信息等。
- 图像生成:能够生成荣誉证书图像,例如每周最佳玩家图像,并发送到指定QQ群。
- 数据库操作:运用Ent框架进行数据库操作,涵盖创建、更新、删除实体以及执行查询等。
安装使用步骤
安装依赖
确保系统已安装Golang和Make,然后安装项目依赖的包,如go-resty/resty
、entgo.io/ent
等。
配置文件
在~/.behappy.yaml
中进行配置,示例如下:
yaml
mirai:
botqq: 10001
steamapi:
key: AXAFJQPDJV2312
datasource:
url: USERNAME:PASSWORD@tcp(example-mysql.com:3306)/behappy?charset=utf8mb4&parseTime=True&loc=Local
编译项目
执行make
命令,编译后的文件会存放在bin
目录下。若只需编译到Windows平台,可执行make windows-amd64
。
运行程序
首次启动会自动初始化schema和tables。可使用以下命令运行:
shell
./behappy run
或者使用go run
命令:
shell
go run main.go
启动Mirai机器人
启动Mirai机器人,并将其事件上报的URL配置为behappy
程序的监听地址。
使用命令
在QQ群内发送特定命令(如“订阅”或“查询订阅”),触发程序执行相应操作。
注意事项
若要使用“最佳劳模”功能,需要在系统中安装simkai.ttf字体。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】