fix(savetv): /api/filelist returns dict {files,count} as documented and expected by Jellyfin-Server sync client

This commit is contained in:
cursor-agent 2026-04-20 19:21:54 +02:00
parent 73171d0cf7
commit 9889b2df76

View file

@ -183,6 +183,29 @@ def register_extra_routes(app, progress_lock=None, load_progress_raw=None, save_
except Exception:
pass
@app.route("/api/filelist")
def api_filelist():
"""MP4-Dateinamen in /mnt/savetv die noch nicht ans NAS uebertragen sind.
Sortiert nach mtime (aelteste zuerst). Der Sync-Client filtert selbst
nach Alter/Jitter."""
done = _load_nas_done()
entries = []
try:
for fp in SAVETV_DIR.iterdir():
if fp.suffix != ".mp4":
continue
if fp.name in done:
continue
try:
entries.append((fp.stat().st_mtime, fp.name))
except OSError:
continue
entries.sort()
except Exception:
pass
_files = [name for _, name in entries]
return jsonify({"files": _files, "count": len(_files)})
@app.route("/api/nas_synced", methods=["POST"])
def api_nas_synced():
data = request.get_json(silent=True) or {}