feat: expand platform adapters and preview tooling

This commit is contained in:
2026-05-13 19:40:43 +08:00
parent b81ead700d
commit 7a286fd619
44 changed files with 4370 additions and 115 deletions
+18
View File
@@ -15,10 +15,19 @@ using LiveRecorder.Infrastructure.Persistence;
using LiveRecorder.Infrastructure.Persistence.Repositories;
using LiveRecorder.Infrastructure.Platforms.Bilibili;
using LiveRecorder.Infrastructure.Platforms.Bilibili.Danmaku;
using LiveRecorder.Infrastructure.Platforms.Common;
using LiveRecorder.Infrastructure.Platforms.Douyu;
using LiveRecorder.Infrastructure.Platforms.Douyin;
using LiveRecorder.Infrastructure.Platforms.Douyin.Danmaku;
using LiveRecorder.Infrastructure.Platforms.Douyin.Signing;
using LiveRecorder.Infrastructure.Platforms.Huya;
using LiveRecorder.Infrastructure.Platforms.Kuaishou;
using LiveRecorder.Infrastructure.Platforms.Migu;
using LiveRecorder.Infrastructure.Platforms.PandaTV;
using LiveRecorder.Infrastructure.Platforms.TikTok;
using LiveRecorder.Infrastructure.Platforms.Twitch;
using LiveRecorder.Infrastructure.Platforms.Xiaohongshu;
using LiveRecorder.Infrastructure.Platforms.YouTube;
using LiveRecorder.Infrastructure.Services;
using LiveRecorder.WebApi.Middleware;
using Microsoft.EntityFrameworkCore;
@@ -172,6 +181,7 @@ builder.Services.AddScoped<CleanupOperationCoordinator>();
builder.Services.AddScoped<RetentionCleanupService>();
builder.Services.AddScoped<StoppedOrphanRecordSessionCleanupService>();
builder.Services.AddScoped<PlatformHttpClientFactory>();
builder.Services.AddScoped<PlatformHttpRequestService>();
builder.Services.AddScoped<RecordUploadService>();
builder.Services.AddScoped<DatabaseInitializer>();
builder.Services.AddScoped<SqliteToPostgresMigrationService>();
@@ -184,6 +194,14 @@ builder.Services.AddSingleton<DouyinLiveWsSignatureSigner>();
builder.Services.AddScoped<ILivePlatformAdapter, DouyinLivePlatformAdapter>();
builder.Services.AddScoped<ILivePlatformAdapter, BilibiliLivePlatformAdapter>();
builder.Services.AddScoped<ILivePlatformAdapter, HuyaLivePlatformAdapter>();
builder.Services.AddScoped<ILivePlatformAdapter, DouyuLivePlatformAdapter>();
builder.Services.AddScoped<ILivePlatformAdapter, KuaishouLivePlatformAdapter>();
builder.Services.AddScoped<ILivePlatformAdapter, TikTokLivePlatformAdapter>();
builder.Services.AddScoped<ILivePlatformAdapter, XiaohongshuLivePlatformAdapter>();
builder.Services.AddScoped<ILivePlatformAdapter, YouTubeLivePlatformAdapter>();
builder.Services.AddScoped<ILivePlatformAdapter, TwitchLivePlatformAdapter>();
builder.Services.AddScoped<ILivePlatformAdapter, PandaTvLivePlatformAdapter>();
builder.Services.AddScoped<ILivePlatformAdapter, MiguLivePlatformAdapter>();
builder.Services.AddScoped<ILivePlatformAdapterFactory, LivePlatformAdapterFactory>();
builder.Services.AddScoped<ILiveDanmakuAdapter, DouyinDanmakuAdapter>();
builder.Services.AddScoped<ILiveDanmakuAdapter, BilibiliDanmakuAdapter>();