Commit graph

175 commits

Author SHA1 Message Date
SergeantPanda
73956924f5 Enhancement: Stream group as available hash option: Users can now select 'Group' as a hash key option in Settings → Stream Settings → M3U Hash Key, allowing streams to be differentiated by their group membership in addition to name, URL, TVG-ID, and M3U ID 2025-12-18 15:26:08 -06:00
SergeantPanda
2b58d7d46e Enhancement: Ensure "Uncategorized" categories and relations exist for VOD accounts. This improves content management for movies and series without assigned categories. Closes #627 2025-11-25 17:14:51 -06:00
SergeantPanda
89a23164ff Enhancement: Add system event logging and viewer with M3U/EPG endpoint caching
System Event Logging:
- Add SystemEvent model with 15 event types tracking channel operations, client connections, M3U/EPG activities, and buffering events
- Log detailed metrics for M3U/EPG refresh operations (streams/programs created/updated/deleted)
- Track M3U/EPG downloads with client information (IP address, user agent, profile, channel count)
- Record channel lifecycle events (start, stop, reconnect) with stream and client details
- Monitor client connections/disconnections and buffering events with stream metadata

Event Viewer UI:
- Add SystemEvents component with real-time updates via WebSocket
- Implement pagination, filtering by event type, and configurable auto-refresh
- Display events with color-coded badges and type-specific icons
- Integrate event viewer into Stats page with modal display
- Add event management settings (retention period, refresh rate)

M3U/EPG Endpoint Optimizations:
- Implement content caching with 5-minute TTL to reduce duplicate processing
- Add client-based event deduplication (2-second window) using IP and user agent hashing
- Support HEAD requests for efficient preflight checks
- Cache streamed EPG responses while maintaining streaming behavior for first request
2025-11-20 17:41:06 -06:00
SergeantPanda
afedce5cb2 Enhancement: Implement background profile refresh task with rate limiting to prevent provider bans during account profile updates. 2025-11-18 09:27:22 -06:00
SergeantPanda
b9e819e343 Enhancement: Adds support for UDP streams. Closes #617 2025-11-11 18:30:59 -06:00
SergeantPanda
a7f449f746
Merge pull request #565 from ragchuck:enable-rtsp
feat: added support for rtsp
2025-11-11 17:29:03 -06:00
SergeantPanda
dc22dff713 Bug Fix: Refactor parse_extinf_line to improve attribute extraction and display name handling. Fixes #637 2025-11-11 16:11:42 -06:00
SergeantPanda
1b282f1987
Merge pull request #594 from 0x53c65c0a8bd30fff/truncated-channel-titles-fix
Channel name truncation when containing apostrophes or special characters
2025-10-30 16:53:30 -05:00
0x68732f6e69622fff
1fde8e4600 Fixes the issue where channel titles are truncated early after an apostrophe 2025-10-29 13:38:51 +00:00
SergeantPanda
5c27bd2c10 Enhancement: Increase maximum URL length for Stream model to 4096 characters (from 2000) and add validation for URL length in processing tasks.
Fixes #585
2025-10-28 15:02:36 -05:00
SergeantPanda
91eaa64ebb Enhancement: Force a specific EPG for auto channel sync channels. 2025-10-18 13:43:49 -05:00
SergeantPanda
0a4c7cae25 Bug fix: Fix bug where channel logo would revert back to provider logo after a refresh (for auto channel sync channels) 2025-10-18 12:38:43 -05:00
SergeantPanda
ca8e9d0143 Enhancement: Add custom logo support for channel groups in Auto Sync Channels.
Closes #555
2025-10-17 10:03:21 -05:00
Ragchuck
ae8b85a3e2 feat: added support for rtsp 2025-10-15 22:06:01 +02:00
SergeantPanda
951af5f3fb Enhancement: Add auto-enable settings for new groups and categories in M3U and VOD components
Bug Fix: Remove orphaned categories for VOD and Series
Fixes #540
Closes #208
2025-10-09 15:28:37 -05:00
SergeantPanda
da245c409a Bug fix: Backend now notifies frontend when a new playlist is creating. This should fix where accounts will sometimes only show fetching groups after a new account is added. 2025-10-07 09:55:35 -05:00
SergeantPanda
13874d64ad Bug fix: If no streams are found during an XC account refresh we were not releasing the task lock and we weren't processing vods.
Fixes #449
2025-10-06 20:04:22 -05:00
SergeantPanda
e841343e5b Dont convert m3u_id to string for hash. 2025-10-02 11:06:10 -05:00
SergeantPanda
a3e4f23891 Enhancement: Add m3u_id parameter to generate_hash_key and update related calls 2025-10-02 09:14:22 -05:00
SergeantPanda
6fa12f90c5 Improved url transofrmation logic to support more advanced regex during profile refreshes. 2025-09-24 15:51:26 -05:00
SergeantPanda
63729fb0ea Improved logging for stream filters. 2025-09-21 10:42:23 -05:00
SergeantPanda
74aff3fb1a Enhance M3U profile management: add optional notes field, improve validation for default profiles, and update UI to display notes where applicable.
Also adds the ability to modify the name of the defualt profile.
Closes #280 [Feature]: add general text field in m3u/xs
2025-09-10 17:26:18 -05:00
SergeantPanda
84c752761a Ability to refresh account info from account info modal and provide notification on results. 2025-09-09 18:15:33 -05:00
SergeantPanda
c023cde8fe Add custom properties to M3UAccountProfile and implement account info retrieval 2025-09-09 16:05:58 -05:00
SergeantPanda
6c1bfaf052 Increase server url max length from 200 to 1000 characters to accomodate tokens in the url 2025-09-02 10:20:23 -05:00
SergeantPanda
6f6c28ca7c Convert custom_properties to jsonb in the backend. 2025-09-02 09:41:51 -05:00
SergeantPanda
a87f7c875d Merge custom properties when refreshing groups instead of overwriting. 2025-09-02 09:10:52 -05:00
SergeantPanda
071e74124e Remove relations to groups that no longer exist in the m3u account. Also delete groups that are left orphaned after the relation is removed. 2025-09-01 21:09:50 -05:00
SergeantPanda
7ea10064d7 Update group custom_properties during m3u update.
Fixes issue when converting from M3U account to XC. Will add the xc_id now.
2025-09-01 19:48:30 -05:00
SergeantPanda
10d5d487c3 Fix regex replacement pattern for M3U profile consistency in auto channel sync 2025-08-31 09:03:11 -05:00
SergeantPanda
3aa68c1a36 Enhancement: Allow overriding of default stream profile for auto channel sync. 2025-08-31 08:49:45 -05:00
SergeantPanda
b17bc21159 Cleanup orphaned channels if stale stream retention deleted the last stream from the channel and was created by auto channel sync for the current m3u. 2025-08-31 08:30:17 -05:00
SergeantPanda
fc2caa0e12 Cleaned up code for fetching. 2025-08-30 20:21:19 -05:00
SergeantPanda
22498de395 Better error detection and logging for the user when m3u downloads fail. 2025-08-30 20:14:58 -05:00
SergeantPanda
b5e32421bd Cleanup unused code. 2025-08-30 09:33:56 -05:00
SergeantPanda
41bd372b14 Save all custom_properties for xc. 2025-08-29 19:55:02 -05:00
SergeantPanda
c24da847fc Get all live streams at once and filter by category. 2025-08-29 19:18:25 -05:00
SergeantPanda
d2b6096570 Changes to XC processing for faster parsing. 2025-08-29 16:39:57 -05:00
SergeantPanda
e3f988b071 Remove shared task from batch m3u processesing. 2025-08-29 15:51:42 -05:00
SergeantPanda
3a81227a73 Move tuner calculation to central location and use it to dynamically calculate tuner counts for XC api user_info 2025-08-28 15:26:51 -05:00
dekzter
11bc2e57a9 optimized vod parsing, added in vod category filtering, added UI individual tabs for movies vs series VOD category filters 2025-08-25 14:37:20 -04:00
SergeantPanda
3ecd7137ff Added misssing bulk fetch function for vod categories. 2025-08-22 17:12:50 -05:00
dekzter
c80752a21d attempting to fix updated reference name 2025-08-22 17:36:57 -04:00
dekzter
a19bd14a84 added vod category filtering 2025-08-22 16:59:00 -04:00
SergeantPanda
24f876d09f Add priority for providers so VOD's can be auto selected based on the priority. 2025-08-20 17:38:21 -05:00
SergeantPanda
2903773c86 Merge branch 'dev' of https://github.com/Dispatcharr/Dispatcharr into vod-relationtest 2025-08-19 12:39:21 -05:00
dekzter
5a92487d38 fixed group filtering: 2025-08-06 14:45:55 -04:00
dekzter
b7abdac800 merged in dev 2025-08-05 10:56:01 -04:00
dekzter
f300da6eff case sensitive flag and other possible custom properties for filters 2025-08-03 08:40:00 -04:00
SergeantPanda
bcebcadfaa Add ability to scan for vods during m3u refresh. 2025-08-02 12:01:26 -05:00