Bluefissure / OtterBot

A QQ bot of FFXIV
https://xn--v9x.net
GNU General Public License v3.0
522 stars 129 forks source link

[Other] 提供机器可读的 OtterBot 列表 API #178

Closed nullqwertyuiop closed 2 years ago

nullqwertyuiop commented 2 years ago

原因

OtterBot 已提供人类可读的机器人列表,但是似乎并没有提供机器可读的 API。提供机器可读的 API 便于机器人开发者快速完成黑名单的制作,防止各机器人项目出现互相触发的情况。

功能简述

JSON 文件形式将机器人列表保存于仓库,或通过 RESTful API 呈现。

[
    {
        "nickname": "OtterBot",
        "id": "1234567890",
        "group_count": 0,
        "friend_count": 0,
        "client_version": "Go",
        "maintainer": "1234567890",
        "available": true
    },
    {
        "nickname": "OtterBot Anonymous",
        "id": "12****890",
        "group_count": 0,
        "friend_count": 0,
        "client_version": "Go",
        "maintainer": "12****890",
        "available": false
    }
]

功能逻辑

JSON 方法

JSON 文件形式将机器人列表保存于仓库,更新即 Push,其他机器人项目通过 raw.githubusercontent.com 直接取得数据。

RESTful API 方法

RESTful API 形式提供,更新即 PATCH POST DELETE,其他机器人项目通过 GET 直接取得数据。

实现参考

直接以 JSON 文件形式保存在仓库

通过 RESTful API 呈现

Bluefissure commented 2 years ago

目前的机器人列表通过 server rendered HTML 提供,RestAPI 计划在 https://github.com/users/Bluefissure/projects/1/views/2 实现。

Bluefissure commented 2 years ago

重构遥遥无期,暂时先提供了个 https://github.com/Bluefissure/OtterBot/wiki/WebAPI#%E6%9C%BA%E5%99%A8%E4%BA%BA%E5%88%97%E8%A1%A8