html = r""" Flussonic JSON → Channel Report (CSV & Excel)

Flussonic Streams → Report (CSV & Excel, Offline)

Upload/paste your Flussonic streams JSON. Filter by provider/category, sort by any column, export CSV/XLS.

1) Load data

— or paste JSON here —

2) Provider mapping

Map URL domains to a friendly provider name (editable JSON). Unmapped domains will be shown as the domain itself.

3) Filters

0 rows Page 1/1
# Channel No Channel Name Flussonic Name Main URL Backups Provider (Main) Transcode DVR (hours) On-demand? Active? Disabled?

Totals

Provider usage

Counts by provider and role (main vs. backup); also shows total channel references.
ProviderMain CountBackup CountTotal URLsChannels Using
• Active = not disabled AND not on-demand. On-demand = static:false (as per your rule). Disabled = disabled:true.
• Channel number & name are parsed from title as: leading integer + space + name (e.g., "63 STAR BHARAT 4K").
• Transcode = “Yes” when transcoder exists; shows audio/video bitrates where available.
• DVR shown in hours when dvr.expiration is present; otherwise blank.
• Provider is derived from the domain of the main URL (inputs[0]) and mapped via Provider Map.
""" out_path = Path("/mnt/data/flussonic_report_csv_xls_tool_filtered_sorted.html") out_path.write_text(html, encoding="utf-8") out_path.as_posix()