feat:增加事件 DiscoverSource、MediaRecognizeConvert

This commit is contained in:
jxxghp
2025-02-06 17:35:58 +08:00
parent b2462c5950
commit 759c18acda
5 changed files with 101 additions and 5 deletions

View File

@@ -0,0 +1,27 @@
from typing import Any, List
from fastapi import APIRouter, Depends
from app import schemas
from app.core.event import eventmanager
from app.core.security import verify_token
from app.schemas import DiscoverSourceEventData
from app.schemas.types import ChainEventType
router = APIRouter()
@router.get("/source", summary="获取发现数据源", response_model=List[schemas.DiscoverMediaSource])
def source(_: schemas.TokenPayload = Depends(verify_token)) -> Any:
"""
获取发现数据源
"""
# 广播事件,请示额外的发现数据源支持
event_data = DiscoverSourceEventData()
event = eventmanager.send_event(ChainEventType.DiscoverSource, event_data)
# 使用事件返回的上下文数据
if event and event.event_data:
event_data: DiscoverSourceEventData = event.event_data
if event_data.extra_sources:
return event_data.extra_sources
return []