直播数据报告

报告图片生成 API

为主播生成精美的周报、月报和年度总结图片

周报预览
使用测试数据生成的示例图片
点击上方按钮生成报告图片
环境变量配置
可选的自定义配置
REPORT_BACKGROUND_URL

设置报告图片的背景图 URL。如果不设置,将使用默认的渐变背景。

示例: https://img.url/bg.webp

API 使用说明
详细的接口文档

周报 API

POST /api/report/weekly
{
  "streamer_name": "小可爱主播",
  "avatar_url": "https://api.dicebear.com/7.x/adventurer/svg?seed=cute",
  "week_start": "2024-01-15",
  "week_end": "2024-01-21",
  "total_stream_minutes": 2580,
  "stream_days": 5,
  "session_count": 8,
  "peak_hour": 20,
  "peak_hour_minutes": 480,
  "longest_session_minutes": 320,
  "streak_days": 15,
  "daily_stats": [
    {
      "date": "2024-01-15",
      "total_minutes": 360,
      "session_count": 2,
      "sessions": [
        { "start_time": "14:00", "end_time": "17:30", "duration_minutes": 210 },
        { "start_time": "20:00", "end_time": "22:30", "duration_minutes": 150 }
      ]
    },
    {
      "date": "2024-01-16",
      "total_minutes": 420,
      "session_count": 1,
      "sessions": [
        { "start_time": "19:00", "end_time": "02:00", "duration_minutes": 420, "crosses_midnight": true }
      ]
    },
    {
      "date": "2024-01-17",
      "total_minutes": 0,
      "session_count": 0,
      "sessions": []
    },
    {
      "date": "2024-01-18",
      "total_minutes": 480,
      "session_count": 2,
      "sessions": [
        { "start_time": "10:00", "end_time": "12:00", "duration_minutes": 120 },
        { "start_time": "20:00", "end_time": "02:00", "duration_minutes": 360, "crosses_midnight": true }
      ]
    },
    {
      "date": "2024-01-19",
      "total_minutes": 540,
      "session_count": 1,
      "sessions": [
        { "start_time": "18:00", "end_time": "03:00", "duration_minutes": 540, "crosses_midnight": true }
      ]
    },
    {
      "date": "2024-01-20",
      "total_minutes": 480,
      "session_count": 2,
      "sessions": [
        { "start_time": "13:00", "end_time": "16:00", "duration_minutes": 180 },
        { "start_time": "21:00", "end_time": "02:00", "duration_minutes": 300, "crosses_midnight": true }
      ]
    },
    {
      "date": "2024-01-21",
      "total_minutes": 0,
      "session_count": 0,
      "sessions": []
    }
  ]
}

月报 API

POST /api/report/monthly
{
  "streamer_name": "小可爱主播",
  "avatar_url": "头像URL (可选)",
  "month": "2024-01",
  "total_stream_minutes": 10240,
  "stream_days": 25,
  "session_count": 48,
  "peak_hour": 21,
  "peak_hour_minutes": 1920,
  "longest_session_minutes": 420,
  "streak_days": 18,
  "weekly_stats": [
    { "week_number": 1, "total_minutes": 2400, "session_count": 12 },
    { "week_number": 2, "total_minutes": 2800, "session_count": 14 },
    { "week_number": 3, "total_minutes": 2640, "session_count": 11 },
    { "week_number": 4, "total_minutes": 2400, "session_count": 11 }
  ],
  "weekday_distribution": [960, 1440, 1680, 1440, 1920, 1440, 1360]
}

年度总结 API

POST /api/report/yearly
{
  "streamer_name": "小可爱主播",
  "avatar_url": "头像URL (可选)",
  "year": 2024,
  "total_stream_minutes": 108000,
  "stream_days": 280,
  "session_count": 520,
  "peak_hour": 21,
  "peak_hour_minutes": 21600,
  "longest_session_minutes": 720,
  "longest_streak_days": 45,
  "monthly_stats": [
    { "month": 1, "total_minutes": 8400, "stream_days": 22 },
    { "month": 2, "total_minutes": 7200, "stream_days": 20 },
    { "month": 3, "total_minutes": 9600, "stream_days": 25 },
    { "month": 4, "total_minutes": 8400, "stream_days": 22 },
    { "month": 5, "total_minutes": 10800, "stream_days": 28 },
    { "month": 6, "total_minutes": 9000, "stream_days": 24 },
    { "month": 7, "total_minutes": 10200, "stream_days": 26 },
    { "month": 8, "total_minutes": 9600, "stream_days": 25 },
    { "month": 9, "total_minutes": 8400, "stream_days": 22 },
    { "month": 10, "total_minutes": 9000, "stream_days": 24 },
    { "month": 11, "total_minutes": 8400, "stream_days": 22 },
    { "month": 12, "total_minutes": 9000, "stream_days": 24 }
  ],
  "top_streaming_months": [
    { "month": 5, "total_minutes": 10800 }
  ],
  "weekday_distribution": [
    { "weekday": 0, "total_minutes": 14400, "session_count": 60 }
  ]
}

返回说明

API 直接返回 PNG 图片流,Content-Type 为 image/png。 可以直接用于 img 标签的 src 属性,或保存为文件。图片尺寸为 1200x630 像素。

Powered by @vercel/og