How alvspen/gxmobile-iptv works
广西移动 IPTV 自动播放列表生成与发布工具:定时或手动运行时,从运营商 API 获取频道数据,清洗、校验并生成确定性的 M3U;只有有效频道达到安全阈值且输出实质变化时,工作流才提交并部署。内部层包括频道列表解析、频道规范化与过滤、以及 M3U 构建。工作流细节依据 README 描述;未采样的实现连线仅在文档明确时展示。
Main entry points: update-m3u.yml Update workflow · json_to_m3u.py CLI entry point · channels.m3u M3U playlist
Components 12
Playlist generator
- CLI entry point
json_to_m3u.py - Fetch and retry
json_to_m3u.py - Extract channels
json_to_m3u.py - Validate and normalize
json_to_m3u.py - Build M3U
json_to_m3u.py
Scheduled publishing
- Update workflow
.github/workflows/update-m3u.yml
Playlist artifact
- M3U playlist
channels.m3u
Other components
- Schedule or operator
- Channel API
- Git remote
- GitHub Pages
- Playlist player
Connections 13
- Schedule or operator → Update workflow: triggers
- Update workflow → CLI entry point: runs
- CLI entry point → Fetch and retry: calls
- Fetch and retry → Channel API: requests JSON
- Fetch and retry → Extract channels: returns data
- CLI entry point → Extract channels: calls
- CLI entry point → Build M3U: calls
- Build M3U → Validate and normalize: validates channels
- Build M3U → M3U playlist: writes atomically
- Update workflow → M3U playlist: checks changes
- Update workflow → Git remote: commits and pushes
- Update workflow → GitHub Pages: deploys on change
- Playlist player → M3U playlist: reads