Bililive-go API接口详解与使用指南

Bililive-go API接口详解与使用指南

bililive-go 一个直播录制工具 bililive-go 项目地址: https://gitcode.com/gh_mirrors/bi/bililive-go

项目概述

Bililive-go是一款功能强大的直播流监控与录制工具,专门用于监控和录制多个直播平台的直播内容。该项目提供了完善的API接口,允许开发者通过HTTP请求来管理和控制直播监控任务。本文将详细介绍Bililive-go提供的各项API功能及其使用方法。

API基础信息

获取应用信息

通过GET /api/info接口可以获取当前Bililive-go应用的基本信息,包括:

  • 应用名称和版本号
  • 构建时间和Git提交哈希
  • 运行平台和Go语言版本
  • 当前进程ID

这个接口非常适合用于健康检查或版本兼容性验证。

{
  "app_name": "BiliLive-go",
  "app_version": "0.5.0-rc.3-3-g31ceeda",
  "build_time": "2020-05-05_01:07:16",
  "git_hash": "31ceeda8f508ba5546cfdefef5f3945828a87651",
  "pid": 33295,
  "platform": "darwin/amd64",
  "go_version": "go1.14.2"
}

直播管理API

获取所有直播信息

GET /api/lives接口返回当前监控的所有直播间信息列表,每个直播间包含以下关键信息:

  • 唯一ID标识
  • 直播间URL
  • 平台中文名称
  • 主播名称
  • 房间名称
  • 直播状态(是否正在直播)
  • 监听状态(是否正在监听)
  • 录制状态(是否正在录制)
[
  {
    "id": "212d9c98c7b376b730d4336bb49f6d3f",
    "live_url": "https://live.bilibili.com/14917277",
    "platform_cn_name": "哔哩哔哩",
    "host_name": "湊-阿库娅Official",
    "room_name": "【B站限定】棉花糖&唱歌!!!!",
    "status": false,
    "listening": true,
    "recording": false
  }
]

获取单个直播信息

通过GET /api/lives/{id}可以获取指定ID的直播间详细信息,参数为直播间的唯一ID。这个接口返回的数据结构与获取所有直播信息中的单个元素相同。

添加直播监控

POST /api/lives接口用于添加新的直播监控任务。请求体需要包含直播间URL和是否立即开始监听的标志。

[
    {
        "url": "https://live.bilibili.com/14917277",
        "listen": true
    }
]

成功添加后,接口会返回新增直播间的完整信息。

删除直播监控

DELETE /api/lives/{id}接口用于删除指定ID的直播监控任务。成功删除后会返回操作成功的确认信息。

启动/停止监控

Bililive-go提供了两个接口来控制直播监控的启停:

  • GET /api/lives/{id}/start - 开始监听指定直播间
  • GET /api/lives/{id}/stop - 停止监听并停止录制指定直播间

这两个接口都会返回更新后的直播间状态信息。

配置管理API

获取当前配置

GET /api/config接口返回当前应用的运行时配置,包括:

  • RPC服务设置
  • 调试模式状态
  • 监控间隔时间(秒)
  • 输出路径
  • 特性开关(如是否使用原生FLV解析器)
  • 直播间列表
{
  "RPC": {
    "Enable": true,
    "Bind": "127.0.0.1:8080"
  },
  "Debug": false,
  "Interval": 15,
  "OutPutPath": "/tmp",
  "Feature": {
    "UseNativeFlvParser": false
  },
  "LiveRooms": null
}

保存配置

PUT /api/config接口将当前内存中的配置保存到配置文件中。这个操作会持久化所有变更,包括新增或删除的直播间监控任务。

原始配置操作

对于高级用户,Bililive-go还提供了直接操作原始配置文件的接口:

  • GET /api/raw-config - 获取原始配置文件内容(YAML格式)
  • PUT /api/raw-config - 更新整个配置文件

这些接口适合批量配置修改或配置迁移场景。

使用建议

  1. 监控管理:建议先通过GET /api/lives获取当前监控列表,再决定是否需要添加或删除监控任务。

  2. 状态检查:定期检查直播间状态(status字段)可以了解主播是否在线,而listeningrecording字段则反映监控工具的工作状态。

  3. 配置备份:修改重要配置前,建议先通过GET /api/raw-config备份当前配置。

  4. 错误处理:所有API都遵循统一的错误格式,包含错误码和错误信息字段,开发时应妥善处理可能的错误情况。

通过合理使用这些API,开发者可以构建出功能丰富的直播监控管理系统,满足各种自动化监控和录制需求。

bililive-go 一个直播录制工具 bililive-go 项目地址: https://gitcode.com/gh_mirrors/bi/bililive-go

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

范凡灏Anastasia

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值