SergeantPanda
c5f6d8ccf3
Enhancement: Update xc_player_api to return server_info for unknown actions to align with provider behavior
2025-11-21 10:57:35 -06:00
SergeantPanda
cb1953baf2
Enhancement: Implement comprehensive logging for user authentication events and network access restrictions
2025-11-21 10:50:48 -06:00
SergeantPanda
d94d615d76
Fix: Handle missing channel profiles in m3u and EPG generation with appropriate error logging
2025-11-20 18:54:32 -06:00
SergeantPanda
05f98e9275
Bug fix: Fixes DVR cards not respecting users preference for date and time formats.
...
UI now reflects date and time formats chosen by user
2025-11-20 18:22:43 -06:00
SergeantPanda
db276f6d32
Merge pull request #679 from Dispatcharr/event-viewer
...
Enhancement: Add system event logging and viewer with M3U/EPG endpoint caching
2025-11-20 17:44:29 -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
Biologisten
1f0fe00cbf
UI now reflects date and time formats chosen by user
2025-11-20 17:34:03 +01:00
SergeantPanda
204a5a0c76
Merge pull request #659 from FiveBoroughs/fix/channel-stream-order-serialization
...
Fix: Preserve stream order in ChannelSerializer PATCH/PUT responses
2025-11-19 15:59:38 -06:00
GitHub Actions
fea7c99021
Release v0.12.0
2025-11-19 03:39:13 +00:00
SergeantPanda
3e77259b2c
Merge pull request #670 from Dispatcharr/dev
2025-11-18 21:38:34 -06:00
SergeantPanda
968a8f1cd0
Merge branch 'dev' of https://github.com/Dispatcharr/Dispatcharr into dev
2025-11-18 10:02:47 -06:00
SergeantPanda
b6c3234e96
Enhancement: Improve zombie channel handling in ProxyServer by checking client connections and cleaning up orphaned metadata, ensuring better resource management and stability.
2025-11-18 10:02:35 -06:00
SergeantPanda
dc2a408041
Merge pull request #666 from Dispatcharr:XC-Profile-rate-limit
...
Enhancement: Implement background profile refresh task with rate limiting to prevent provider bans during account profile updates.
2025-11-18 09:28:36 -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
d8df848136
Enhancement: Add success notification for channel updates in API, improving user feedback on successful operations.
2025-11-17 17:57:04 -06:00
SergeantPanda
1b16df4482
Enhancement: Improve batch EPG association in ChannelViewSet by adding validation for associations and implementing bulk updates, enhancing performance and error handling.
2025-11-17 17:41:52 -06:00
SergeantPanda
1560afab97
Enhancement: Optimize bulk channel editing in ChannelViewSet by validating updates first and applying them in a single transaction, improving performance by about 50% and error handling.
2025-11-17 17:33:10 -06:00
FiveBoroughs
bbe1f6364b
Fix: Preserve stream order in ChannelSerializer PATCH/PUT responses
...
The ChannelSerializer.to_representation() method was not respecting the
ChannelStream.order field when serializing PATCH/PUT responses. This
caused streams to be returned in an arbitrary order rather than the
order specified in the request.
The update() method correctly saves the stream order to the database
using the ChannelStream.order field, and GET requests (with
include_streams=True) correctly return ordered streams via
get_streams(). However, standard PATCH/PUT responses were using
PrimaryKeyRelatedField which doesn't respect the ordering.
This fix ensures that all representations (GET, PATCH, PUT) return
streams ordered by the channelstream__order field.
Impact:
- PATCH/PUT responses now correctly reflect the stream order saved
- Clients can trust the response data without needing a follow-up GET
- No breaking changes - only fixes inconsistent behavior
Tested with:
- PATCH request with ordered stream IDs
- Verified response matches request order
- Verified GET request confirms order persisted to database
2025-11-16 23:29:17 +01:00
SergeantPanda
6bd5958c3c
Enhancement: Improve channel shutdown logic in ProxyServer to handle connection timeouts and grace periods more effectively, ensuring proper channel management based on client connections.
2025-11-15 14:22:26 -06:00
SergeantPanda
0700cf29ea
Enhancement: Add copy link functionality to SeriesModal and VODModal, allowing users to easily copy episode and VOD links to clipboard with notifications for success or failure.
2025-11-14 20:13:40 -06:00
SergeantPanda
2514528337
Enhancement: Update channel state handling in ProxyServer and views to include 'STOPPING' state, ensuring proper cleanup and preventing reinitialization during shutdown.
2025-11-14 19:57:59 -06:00
SergeantPanda
827501c9f7
Better spacing for version text.
2025-11-14 18:00:08 -06:00
SergeantPanda
23e2814fe7
Enhancement: Add loading state and dynamic text to submit buttons in Channel forms. Also remove old unused "Channels.jsx" form
2025-11-14 17:52:57 -06:00
SergeantPanda
5160ead093
Merge pull request #166 from maluueu/dev
...
Improve handling POST requests for M3U generation and add tests
2025-11-14 17:35:32 -06:00
SergeantPanda
acbcc46a91
Revert "docker: init: 02-postgres.sh: allow DB user to create new DB (for tests)"
...
This reverts commit 7e5be6094f .
2025-11-14 17:32:05 -06:00
SergeantPanda
ed7e16483b
Merge branch 'dev' of https://github.com/Dispatcharr/Dispatcharr into pr/maluueu/166
2025-11-14 17:11:00 -06:00
SergeantPanda
a3be679acf
Enhancement: Add loading state to login button for better user feedback
2025-11-14 16:52:26 -06:00
SergeantPanda
4f29f7f3f9
Enhancement: Conditionally render Sidebar based on authentication status
2025-11-14 16:45:38 -06:00
SergeantPanda
7321a6d7f8
Enhancement: Allow saving password to local storage.
2025-11-14 16:42:40 -06:00
SergeantPanda
761ee42396
Enhancement: Add version to login form.
2025-11-14 16:02:10 -06:00
SergeantPanda
6dab5e3cf3
Enhancement: Add "Remember Me" checkbox to login for that will save the current username to local storage.
2025-11-14 15:25:56 -06:00
SergeantPanda
b2a041c7c4
Enhancement: Add forgot password link to login form with instructions on how to properly reset a forgotten password.
2025-11-14 15:18:57 -06:00
SergeantPanda
575b764487
Refactor LoginForm: Enhance UI with logo, updated title, and improved layout for better user experience.
2025-11-14 15:06:33 -06:00
SergeantPanda
325c836510
Merge pull request #625 from 0x53c65c0a8bd30fff/force-epg-menu-alphabetical-sorting
2025-11-14 13:51:08 -06:00
SergeantPanda
0360292b94
Refactor LoginForm: Restore navigation effect and streamline login handling. Also remove "Loading..." from M3U & EPG Manager that would clear forms during initial login.
2025-11-14 12:00:22 -06:00
SergeantPanda
cc7cd32c90
Improved syncronization of timeline and guide for mobile touch (including momentum)
2025-11-13 21:19:54 -06:00
SergeantPanda
4b5d3047bb
Enhancement: Add wheel scrolling support for TV guide and synchronize scrolling with timeline
2025-11-13 19:47:39 -06:00
SergeantPanda
6e79b37a66
When stream_type is UDP do not add user_agent to FFmpeg command.
2025-11-13 14:04:46 -06:00
SergeantPanda
4720e045a3
Implement manual redirect for non-HTTP protocols (RTSP/RTP/UDP) in stream URL handling
2025-11-12 17:31:27 -06:00
SergeantPanda
79895a1ce4
Enhancement: Update URL validation to support authentication for non-FQDN hostnames in rtsp/rtp/udp URLs
2025-11-12 16:58:07 -06:00
SergeantPanda
a3c16d48ec
Skip HTTP validation for non-HTTP protocols (UDP/RTP/RTSP) in stream URL validation
2025-11-12 16:17:06 -06:00
SergeantPanda
431ea6da32
Merge pull request #640 from Dispatcharr:udp-stream-support
...
Enhancement: Adds support for UDP streams. Closes #617
2025-11-11 18:32:09 -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
b608af1d51
Auto detect RTSP streams when proxy profile is selected and force FFmpeg.
2025-11-11 17:26:56 -06:00
SergeantPanda
21723e29bc
Update URL validation to support FQDNs for rtsp/rtp protocols and improve regex pattern for flexibility.
2025-11-11 17:17:01 -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
9a5e04af0e
Better confirmation dialog messages for vod logo table.
2025-11-07 16:16:07 -06:00
SergeantPanda
6037c158f4
Fix header checkbox not clearing on bulk delete in logo tables.
2025-11-07 15:25:09 -06:00
SergeantPanda
860c671f8c
Fix delete button not activating for vod logo table.
2025-11-07 15:05:43 -06:00