Qnet match v upload queue — auto-prepoznavanje pesmi takoj ko izbere\u0161 fajle (parallel POST /api/qnet/match-batch). \u010ce baza prepozna komad, prikaz Artist \u2014 Title z station badge namesto 'Brez razvidnega imena'.
This commit is contained in:
+21
@@ -1772,6 +1772,27 @@ async def qnet_match_filename(filename: str, user: str = Depends(check_auth)):
|
||||
return qnet_match.match_filename(filename)
|
||||
|
||||
|
||||
class QnetBatchMatchRequest(BaseModel):
|
||||
filenames: list[str]
|
||||
min_confidence: float = 0.85
|
||||
|
||||
|
||||
@app.post("/api/qnet/match-batch")
|
||||
async def qnet_match_batch(payload: QnetBatchMatchRequest, user: str = Depends(check_auth)):
|
||||
"""Batch match — kliče client ob izbiri datotek za live preview v queue."""
|
||||
results = {}
|
||||
for fn in payload.filenames:
|
||||
if not fn:
|
||||
continue
|
||||
r = qnet_match.match_filename(fn)
|
||||
# Vrni samo zadetke nad minimum confidence; sicer null
|
||||
if r["matched"] and r["confidence"] >= payload.min_confidence:
|
||||
results[fn] = r
|
||||
else:
|
||||
results[fn] = None
|
||||
return {"results": results}
|
||||
|
||||
|
||||
@app.post("/api/qnet/sync")
|
||||
async def qnet_sync(background: BackgroundTasks, user: str = Depends(check_auth)):
|
||||
"""Sproži sync (fetch Songs.txt iz vseh playerjev). Async background task."""
|
||||
|
||||
Reference in New Issue
Block a user