本篇文章已有180人收藏 | Loading收藏

🤖sheepBot

sheepBot 一个普通的QQ小助手,为你的QQ群提供一些便捷的微服务

Lisence Release Python Version NoneBot2 go-cqhttp Visitors

前言

此项目作为个人日常使用,由于只在自己的同好群里使用,所以功能不是很多。

此项目提供一个docker镜像:grayzhao/sheepbot

功能列表

  •  💡 命令帮助
  •  📰 60秒读懂世界
  •  🖼 必应每日一图
  • 📅 摸鱼人日历
  • ⏲ 历史上的今天
  • 🤣 随机一则笑话
  • 🏞 随机一幅风景照
  • ♻ 垃圾分类小助手

部署方法

容器化部署

  1. 在 Linux 服务器上部署,首先安装 dockerdocker-compose:

    # 一键安装docker
    curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
    
    # 查看docker版本
    docker -v
    
    # 设置开机启动
    systemctl enable docker
    
    # 启动
    systemctl start docker
    
    # 安装docker-compose
    pip3 install docker-compose
    
    # 查看docker-compose版本
    docker-compose --version
  2. 下载发行版或克隆本仓库:

    # 克隆本仓库
    git clone https://github.com/zhy201810576/sheepBot
    
    # 切换至仓库目录
    cd sheepBot
  3. 按自己的需求修改sheepBot/src/plugins中各个功能插件的config.py中的配置参数

  4. 安装go-cqhttp,相关教程可参考 go-cqhttp官方文档,从 release 界面下载最新版本的go-cqhttp

    支持平台 支持状况
    Windows ✔️
    MacOS ✔️
    UNIX, Linux ✔️

    官方也提供go-cqhttp的 Docker 镜像,可参考 使用Docker

    P.S. 需要配置反向WebSocket,修改 config.yml 文件中的 universal: ws://your_websocket_universal.server  universal: ws://127.0.0.1:端口号/onebot/v11/ws/,端口号10000~50000之间随机设置一个

  5. 修改 sheepBot/.env.dev 配置文件 (在开发模式下运行)

    # 配置 NoneBot 超级用户(哪些QQ可以管理该机器人)
    SUPERUSERS=["123456789]
    # 配置机器人的昵称,可以设置多个
    NICKNAME=["小白羊"]

    设置为生产模式需修改 sheepBot/.env 文件下的 ENVIRONMENT=dev  ENVIRONMENT=prod

    编写 sheepBot/.env.prod

    # 配置 NoneBot 监听的 IP/主机名
    HOST=0.0.0.0
    # 配置 NoneBot 监听的端口
    PORT=8080
    # 配置 NoneBot 超级用户(哪些QQ可以管理该机器人)
    SUPERUSERS=["123456789"]
    # 配置机器人的昵称,可以设置多个
    NICKNAME=["小白羊"]
    # 配置命令起始字符 以"/"开头表示对机器人发指令
    COMMAND_START=["/"]
  6. 创建 Docker 容器

    docker run -p {ssh_port}:22 -p {ws_port}:8080 -v {sheepBot_path}:/app --name sheepBot grayzhao/sheepbot

    参数说明:

    ssh_port: 可选 - SSH服务端口,以方便二次开发

    ws_port:必填 - 必须与go-cqhttpconfig.yml中设置的反向WebSocket端口号相同!!

    sheepBot_path:必填 - 下载的sheepBot项目路径

  7. docker-compose.yml

    version: '3.5'
    services:
      sheepBot:
        image: grayzhao/sheepbot
        container_name: sheepBot
        volumes:
          # 下载的 sheepBot 项目路径
          - ${PWD}/sheepBot:/app
        ports:
          - 10022:22 # SSH服务端口
          - 10080:8080 # 必须与`go-cqhttp`的`config.yml`中设置的反向WebSocket端口号相同!!
        restart: unless-stopped

官方文档

如果在使用过程中遇到问题可以提 issue,或者查阅以下官方文档。

功能调用示例

图片中的内容是通过 API 获取的外部信息,仅作功能展示示例。

我们假设机器人昵称为 小白羊 。

  • 💡 命令帮助 | @小白羊 /帮助|helpmy-little-q-group-helper-sheepbot_preview_help.png
  • 📰 60秒读懂世界| @小白羊 /新闻|60smy-little-q-group-helper-sheepbot_preview_News.png
  • 🖼 必应每日一图 | @小白羊 /必应|每日一图my-little-q-group-helper-sheepbot_preview_bing.png
  • 📅 摸鱼人日历 | @小白羊 /摸鱼|moyumy-little-q-group-helper-sheepbot_preview_moyu.png
  • ⏲ 历史上的今天 | @小白羊 /历史|历史上的今天my-little-q-group-helper-sheepbot_preview_history.png
  • 🤣 随机一则笑话 | @小白羊 /笑话|jokemy-little-q-group-helper-sheepbot_preview_joke.png
  • 🏞 随机一幅风景照 | @小白羊 /风景|scenicmy-little-q-group-helper-sheepbot_preview_photo.png
  • ♻ 垃圾分类小助手 | @小白羊 /垃圾|垃圾分类 物品名称my-little-q-group-helper-sheepbot_preview_waste.png

 

开源许可

本项目使用 Apache-2.0 作为开源许可证。