Skip to content

Privoce/PyOneBot-Vocechat

Repository files navigation

PyOneBot-Vocechat

PyOneBot-Vocechat

✨ Vocechat 平台的 OneBot v12 实现 ✨

license OneBot 12 Vocechat Bot

文档(WIP) · 快速上手

中文 | English

Note

该项目目前处于早期开发阶段,如果您遇到任何问题,请提交issue反馈。

简介

基于 pylibob 的 Vocechat 平台 OneBot v12 实现。

功能特性

  • 支持 OneBot v12 标准
  • 支持多种通信方式(HTTP、WebSocket、WebSocket Reverse)
  • 支持 Vocechat 消息的接收和解析
  • 提供简单易用的配置接口
  • 支持自定义消息处理和事件处理
  • 内置日志记录和错误处理机制

Important

当前版本仅在Vocechat服务器端0.4.2版本上进行过测试。

项目结构

  • core/: 包含 Vocechat Webhook 处理和机器人动作实现的核心逻辑
    • bot_actions.py: 实现 OneBot 动作到 Vocechat API 的映射
    • webhook.py: 处理来自 Vocechat 的 Webhook 消息
    • logger.py: 日志记录模块
  • main.py: 项目的入口文件,负责初始化 OneBot 实现和运行
  • config.py: 配置文件,用于设置 OneBot 连接方式、Webhook 服务器地址和端口,以及 Vocechat 机器人信息
  • pylibob/: 修改过的 Libonebot,提供 OneBot v12 标准实现
  • requirements.txt: Python 依赖列表

快速开始

安装

本仓库对 pylibob 进行了修改,请不要使用 pip 直接安装 pylibob

  1. 克隆本仓库:
git clone https://github.com/Privoce/PyOneBot-Vocechat.git
  1. 安装依赖:
pip install -r requirements.txt

配置

通过修改 .env 文件进行配置
首次启动时会自动生成.env配置文件
根据提示修改.env文件后重新启动程序即可。

运行

python main.py

开发指南

自定义消息处理

core/bot_actions.py 中,你可以自定义如何处理接收到的消息和事件:

# 示例:处理文本消息
async def handle_message(message):
    if message.type == "text":
        # 处理文本消息
        pass

错误处理

系统内置了错误处理机制,主要错误类型包括:

  • 配置错误
  • 网络连接错误
  • API 调用错误
  • 消息处理错误

错误日志会被记录到控制台和日志文件中。

故障排除

  1. Webhook 无法接收消息

    • 检查 Vocechat 后台的 Webhook 配置是否正确
    • 确保服务器防火墙允许指定端口的访问
    • 检查网络连接是否正常
  2. 机器人无响应

    • 确认 API Key 配置正确
    • 检查日志文件中的错误信息
    • 验证 Vocechat 服务器状态

开源协议

GPL v3

特别鸣谢

Herta-villa/pylibob

贡献者

About

Vocechat 平台的 OneBot v12 实现

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages