package models // Channel represents a single IPTV channel parsed from an M3U playlist. type Channel struct { ID string `json:"id"` Name string `json:"name"` Group string `json:"group"` LogoURL string `json:"logo_url"` StreamURL string `json:"stream_url"` } // StreamStatus represents the current streaming state. type StreamStatus struct { ChannelName string `json:"channel_name"` // current IPTV channel name Live bool `json:"live"` // true when a channel is selected Transitioning bool `json:"transitioning"` // true while switching to a new channel UpstreamDown bool `json:"upstream_down"` // true when no data is detected from the selected upstream PlaylistVersion int64 `json:"playlist_version"` // increments when playlist reloads }