200 Commits

Author SHA1 Message Date
mhdzumair 2bf44ad67b Update streaming routes to use 'playback' instead of 'stream' 2025-06-08 20:24:09 +05:30
Mohamed Zumair 991d312f5b Add support for DLHD playback with MediaFlow & fix debrid playback on external player with MediaFlow (#519) 2025-06-01 07:27:50 +05:30
mhdzumair 010166874a #474: add user IP handling to DebridLink requests 2025-03-12 00:51:23 +05:30
mhdzumair 303ccd751f #467: Fix pikpak exception on a missing media link & add media link validation for PikPak downloads for an inactive media link 2025-03-12 00:33:16 +05:30
mhdzumair 4dd4de236f refactor: enhance season and episode parsing by adding release date parsing support and improving fallback logic 2025-03-05 12:07:40 +05:30
mhdzumair 6b827aa4ba refactor: improve season and episode parsing with enhanced regex patterns and fallback logic 2025-03-04 14:55:00 +05:30
mhdzumair 25501e0a5c fix: remove unnecessary annotation requests in parser 2025-03-03 05:43:56 +05:30
mhdzumair 2a970cac21 override content type header for the download link via mediaflow 2025-03-02 20:53:01 +05:30
mhdzumair 233836845c reset the file annotation request after successfully setting episode data 2025-03-02 17:44:31 +05:30
mhdzumair 860c1e3d9e fix: handle missing infoHash and improve annotation request check 2025-02-28 11:19:54 +05:30
mhdzumair 66f5f4bd92 fix known_file_details issue 2025-02-28 06:57:12 +05:30
mhdzumair 9d37e825c8 PikPak: Capture error message for storage space and usage limit messages 2025-02-26 09:10:33 +05:30
mhdzumair ec20feca52 refactor: streamline torrent file selection and metadata update process
Add support for telegram notification when unable to detect episode files, refactor file selection and update db function
2025-02-20 10:13:04 +05:30
mhdzumair bc955ed1dc Fix EasyDebrid series episode matching 2025-02-17 00:44:49 +05:30
ragmehos 4a353a3f47 Add easydebrid add torrent option when its not cached (#445)
* Add easydebrid add torrent option when its not cached
2025-02-02 21:04:47 +05:30
mhdzumair 631ca64548 Handle Seedr Exception with specific error responses 2025-02-01 22:55:50 +05:30
mhdzumair 620ad95861 Fix parsing edge cases and Fix mediaflow private IP validation logic
Addressed cases where parsing would fail due to empty elements or missing data in BT4G scraper and streaming provider parsers. Enhanced IP validation in network utilities to handle IPv6 formats with ports and brackets accurately. These changes improve robustness and prevent errors in edge scenarios.
2025-02-01 22:54:55 +05:30
mhdzumair 7ee9df0068 Fix Torbox issue & Handle additional error cases 2025-02-01 22:53:14 +05:30
mhdzumair 75f528a7e6 Update Torbox endpoint and parameters for queued torrents request 2025-01-30 22:11:17 +05:30
mhdzumair 01bb0390b2 Refactor episode handling to support multiple variants of episode files in single torrent 2025-01-22 09:16:02 +05:30
mhdzumair 37fb6c6ede Fix Stremthru token header & refactor passing stremio id for cache status 2025-01-02 12:45:54 +05:30
Munif Tanjim d67a67af8d Pass stremio video id to stremthru magnet cache check (#407) 2025-01-02 12:36:46 +05:30
mhdzumair c5915d26e5 Fix debrid cache sync endpoint url 2025-01-02 12:00:34 +05:30
mhdzumair 3b5aac130a Add support for EasyDebrid streaming provider 2025-01-02 12:00:34 +05:30
mhdzumair 3b5741c2fb Ensure file_name uses basename and replace quote_plus with quote
This update ensures that the `file_name` always uses its basename for consistency and correctness. Additionally, `quote_plus` was replaced with `quote` to simplify URL encoding
2024-12-31 18:24:19 +05:30
mhdzumair 931cb6b21a Fix season handling in PikPak & Fix Real-Debrid mimeType check 2024-12-31 03:37:18 +05:30
mhdzumair 79e767d287 Fix Debrid cache sync feature 2024-12-30 17:34:21 +05:30
mhdzumair 25674eb063 Refactor streaming URLs to support filenames and episode paths
Updated streaming URL structure to include optional filename and episode-specific paths. Adjusted `get_or_create_video_url` and routing logic to handle these new parameters, improving flexibility and clarity in URL generation. Added URL encoding for filenames to ensure compatibility.
2024-12-30 14:08:54 +05:30
mhdzumair 5bf349f826 Add support for MediaFusion Debrid cache sync and cache status checks
Introduced endpoints to check and submit cache statuses for info hashes. Enhanced cache helpers to integrate with MediaFusion Public Host for status retrieval and syncing. Added new schemas and configurations to support these operations.
2024-12-30 14:01:17 +05:30
mhdzumair 3537b2b290 Add support for multi-season pack playback for streaming providers
Enhanced utility functions and streaming provider modules to support the season parameter alongside episode matching. Updated file selection logic to account for both season and episode when determining the correct file from torrents or folders. Also included minor improvements to file handling and recursive folder parsing.
2024-12-30 13:49:58 +05:30
mhdzumair 03297f2b22 Refactor database structure for metadata handling and episode processing.
Update Crud functions for new database structure & utlize 10x performance in the catalog data fetchers with new db structure and mongodb indexes. Added support for multi season pack torrents, Updated metadata handling to use a centralized fetching mechanism and improved filters for matching existing entries. Refactored episode processing logic to account for season and episode numbers more flexibly. Enhanced querying pipelines for better performance in catalog and metadata retrieval.
2024-12-30 13:45:03 +05:30
mhdzumair 89dd0a00fc Implement new UserData management
Store UserData in redis if compress + encryption data length is more than 1000, or else directly setup in the url secret string. Replaces legacy encryption and decryption methods with an optimized `CryptoUtils` class supporting compression, improved encryption, and Redis-based storage.
2024-12-24 21:40:48 +05:30
mhdzumair 70e8d1946b Add support for private, semi-private, and webseed torrent types for prowlarr & jackett & Manual imports; store torrent file content
- Updated streaming providers to allow adding torrents by file for webseed and private torrents.
- Implemented functionality to store the content of torrent files.
2024-12-22 18:21:58 +05:30
mhdzumair 5b2936282c Refactor Premiumize torrent handling & Skip downloading the cached file into premiumize cloud 2024-12-22 18:06:47 +05:30
mhdzumair ef142b7f9e Seedr: Prevent deletion in-progress torrent to fix stuck download
Add a check to raise an exception if a torrent is still downloading when attempting to delete folder contents. Included a placeholder video file for exception handling use. This ensures ongoing downloads are not interrupted inadvertently.
2024-12-22 17:50:21 +05:30
mhdzumair 10a6f2e051 Enhance metadata handling and optimize torrent processing
Added `parsed_data` support for more robust torrent metadata extraction and improved season/episode assignment logic. Refined IMDB integration to handle null ratings and streamline title-year searches. Database index and query filters updated for better flexibility and accuracy.
2024-12-22 00:13:31 +05:30
Munif Tanjim 34ca6cfbda Fix regression in stremthru client (#397) 2024-12-17 22:58:51 +05:30
Munif Tanjim c5748e4681 Fix typo in stremthru store authorization header (#396) 2024-12-15 14:51:46 +05:30
mhdzumair 2db7a0f365 Refactor DebridClient request handling to use kwargs for flexibility 2024-12-13 15:56:35 +05:30
mhdzumair 98085b7c06 Add support for request proxy with httpx & aiohttp libs
Replaced custom proxy implementation and `curl-cffi` with unified `httpx` and `aiohttp` proxy support using `requests_proxy_url` config from settings. Simplified and standardized HTTP client instantiations across various modules for improved maintainability and consistency.
2024-12-13 15:55:10 +05:30
mhdzumair b4422c0c94 Add scheduled task for cleaning up expired debrid cache status 2024-12-13 15:49:51 +05:30
Munif Tanjim d8ae426a9a StremThru Improvements (#385)
* Improve StremThru error handling

* Allow access to http response object

* Add configure time StremThru store name validation

* Store StremThru magnet cache in redis

* Add settings toggle for storing StremThru magnet cache

* Update streaming_providers/debrid_client.py

* Support using public StremThru instance

---------

Co-authored-by: Mohamed Zumair <mhdzumair@gmail.com>
2024-12-07 10:36:31 +05:30
ragmehos a4193764c4 Set user ip as a header for premiumize to improve cdn selection (#387) 2024-12-06 07:06:57 +05:30
mhdzumair f391bd0ba3 Fix RD function param 2024-12-01 18:23:50 +05:30
ragmehos 3e3b120ffd Forward user IP to torbox for CDN selection (#384) 2024-12-01 18:02:54 +05:30
mhdzumair 348ccb7e41 Improve error handling and conditional checks
Added early return in utils to handle missing data, preventing unnecessary loop executions. Reorganized error handling in debrid_client to improve readability and maintain logic consistency. These changes aim to enhance performance and code clarity.
2024-12-01 17:56:51 +05:30
mhdzumair 5a5d7a3b35 DL: Handle empty hash set, completed torrents, and flood errors
Ensure proper handling when no hashes are fetched and filter torrents that are not fully downloaded. Add error handling for "floodDetected" to gracefully manage excessive requests. Modify the request to use JSON payload with asynchronous execution for seedbox additions.
2024-12-01 17:54:06 +05:30
mhdzumair 1341659c57 AD migrate to new API & Refactor torrent handling and enhance API interactions 2024-12-01 17:53:26 +05:30
mhdzumair 603a57027e Enhance torrent handling for RealDebrid integration
This commit refines the cache update process to only consider downloaded torrents, improving efficiency by avoiding unnecessary cache checks. It also adds error handling for invalid magnet links and introduces a semaphore for deleting torrents to control concurrency, enhancing robustness and reliability in torrent management.
2024-12-01 17:52:40 +05:30
mhdzumair 345700a924 Handle RD exception on exceeding concurrent download 2024-11-30 19:13:59 +05:30