cpp-mirai-client  v2.6.1
cpp client for mirai-api-http
cpp-mirai-client

UnitTest Status FOSSA Status AGPLv3.0 License Project Version C++ Version

关于本项目

cpp-mirai-client 是一个基于 miraimirai-api-http 的跨平台C++机器人框架。

本项目在一定程度上参考了 cyanray/mirai-cpp 项目,您也可以考虑使用该项目进行C++ QQ机器人的开发。

当前适配的 mirai-api-http 版本: v2.9.1

安装要求

本项目使用CMake进行项目构建,要求CMake版本3.16以上。编译器需要支持C++17标准,目前已在最新版本的GCC、Clang与MSVC 编译器下测试通过。

使用cpp-mirai-client只需要将整个仓库克隆或下载到你的项目子目录中,并在项目的CMakeList.txt中添加

add_subdirectory(/path/to/cpp-mirai-client)
set(MIRAI_BUILD_UNIT_TESTS OFF CACHE BOOL "Build UnitTests" FORCE)
target_link_libraries(your_target_name PRIVATE cpp-mirai-client::cppmirai)

即可。

也可以通过 cppmirai-template 模板直接生成一个基础的程序框架

项目依赖

cpp-mirai-client 使用了以下第三方项目,可在 cmake/externals.cmake 文件内找到

  1. machinezone/IXWebSocket websocket and http client and server library, with TLS support and very few dependencies
  2. yhirose/cpp-httplib A C++ header-only HTTP/HTTPS server and client library
  3. nlohmann/json JSON for Modern C++
  4. marzer/tomlplusplus Header-only TOML config file parser and serializer for C++17
  5. google/googletest GoogleTest - Google Testing and Mocking Framework

其中 google/googletest 仅用于测试,实际使用时将忽略。 这些项目将自动通过 CMake 中的 FetchContent 下载并编译, 你也可以单独安装这些第三方库,cpp-mirai-client会自动使用 find_package 来找到对应的文件。所有依赖均为私有依赖,仅用于编译,使用cpp-mirai-client 时不需要链接这些第三方库。

本项目的文档生成使用了 Doxygenjothepro/doxygen-awesome-css

Read Next: 快速入门