mirror of
https://gitlab.com/foxixus/neomovies-api.git
synced 2025-10-28 01:48:51 +05:00
feat: add RgShows and IframeVideo streaming players
🎬 New Streaming Players Added: - RgShows player for movies and TV shows via TMDB ID - IframeVideo player using Kinopoisk ID and IMDB ID - Unified players manager for multiple streaming providers - JSON API endpoints for programmatic access 📡 RgShows Player Features: - Direct movie streaming: /api/v1/players/rgshows/{tmdb_id} - TV show episodes: /api/v1/players/rgshows/{tmdb_id}/{season}/{episode} - HTTP API integration with rgshows.com - 40-second timeout for reliability - Proper error handling and logging 🎯 IframeVideo Player Features: - Two-step authentication process (search + token extraction) - Support for both Kinopoisk and IMDB IDs - HTML iframe parsing for token extraction - Multipart form data for video URL requests - Endpoint: /api/v1/players/iframevideo/{kinopoisk_id}/{imdb_id} 🔧 Technical Implementation: - Clean Go architecture with pkg/players package - StreamResult interface for consistent responses - Proper HTTP headers mimicking browser requests - Comprehensive error handling and logging - RESTful API design following existing patterns 🌐 New API Endpoints: - /api/v1/players/rgshows/{tmdb_id} - RgShows movie player - /api/v1/players/rgshows/{tmdb_id}/{season}/{episode} - RgShows TV player - /api/v1/players/iframevideo/{kinopoisk_id}/{imdb_id} - IframeVideo player - /api/v1/stream/{provider}/{tmdb_id} - JSON API for stream info ✅ Quality Assurance: - All code passes go vet without issues - Proper Go formatting applied - Modular design for easy extension - No breaking changes to existing functionality Ready for production deployment! 🚀
This commit is contained in:
@@ -97,6 +97,10 @@ func Handler(w http.ResponseWriter, r *http.Request) {
|
||||
api.HandleFunc("/players/alloha/{imdb_id}", playersHandler.GetAllohaPlayer).Methods("GET")
|
||||
api.HandleFunc("/players/lumex/{imdb_id}", playersHandler.GetLumexPlayer).Methods("GET")
|
||||
api.HandleFunc("/players/vibix/{imdb_id}", playersHandler.GetVibixPlayer).Methods("GET")
|
||||
api.HandleFunc("/players/rgshows/{tmdb_id}", playersHandler.GetRgShowsPlayer).Methods("GET")
|
||||
api.HandleFunc("/players/rgshows/{tmdb_id}/{season}/{episode}", playersHandler.GetRgShowsTVPlayer).Methods("GET")
|
||||
api.HandleFunc("/players/iframevideo/{kinopoisk_id}/{imdb_id}", playersHandler.GetIframeVideoPlayer).Methods("GET")
|
||||
api.HandleFunc("/stream/{provider}/{tmdb_id}", playersHandler.GetStreamAPI).Methods("GET")
|
||||
|
||||
api.HandleFunc("/torrents/search/{imdbId}", torrentsHandler.SearchTorrents).Methods("GET")
|
||||
api.HandleFunc("/torrents/movies", torrentsHandler.SearchMovies).Methods("GET")
|
||||
|
||||
Reference in New Issue
Block a user