From cd67ea163987720b18ac885ec327259572986ec8 Mon Sep 17 00:00:00 2001 From: baliasnyifeliks Date: Tue, 13 Jan 2026 11:49:49 +0200 Subject: [PATCH] fix(media): improve stream URL handling and regex pattern - Fix regex pattern in CikavaIdeyaInvoke.cs to properly match quoted file URLs - Simplify stream URL handling in Controller.cs by removing redundant proxy logic - Ensure consistent file endings by adding newline to CikavaIdeyaInvoke.cs --- CikavaIdeya/CikavaIdeyaInvoke.cs | 4 ++-- CikavaIdeya/Controller.cs | 21 +-------------------- 2 files changed, 3 insertions(+), 22 deletions(-) diff --git a/CikavaIdeya/CikavaIdeyaInvoke.cs b/CikavaIdeya/CikavaIdeyaInvoke.cs index 79b5b2e..611a0bc 100644 --- a/CikavaIdeya/CikavaIdeyaInvoke.cs +++ b/CikavaIdeya/CikavaIdeyaInvoke.cs @@ -324,7 +324,7 @@ namespace CikavaIdeya string playerJson = match.Groups[1].Value; _onLog($"GetStreamUrlFromAshdi: playerJson={playerJson}"); // Знаходимо поле file - var fileMatch = Regex.Match(playerJson, @"file\s*:\s*[""]?([^\s,""}]+)[""]?", RegexOptions.Multiline | RegexOptions.IgnoreCase); + var fileMatch = Regex.Match(playerJson, @"file\s*:\s*['""]([^'""]+)['""]", RegexOptions.Multiline | RegexOptions.IgnoreCase); if (fileMatch.Success) { _onLog($"GetStreamUrlFromAshdi: found file URL: {fileMatch.Groups[1].Value}"); @@ -359,4 +359,4 @@ namespace CikavaIdeya return TimeSpan.FromMinutes(ctime); } } -} \ No newline at end of file +} diff --git a/CikavaIdeya/Controller.cs b/CikavaIdeya/Controller.cs index 68a6b98..ae6615f 100644 --- a/CikavaIdeya/Controller.cs +++ b/CikavaIdeya/Controller.cs @@ -54,26 +54,7 @@ namespace CikavaIdeya.Controllers if (playResult.streams != null && playResult.streams.Count > 0) { string streamLink = playResult.streams.First().link; - List streamHeaders = null; - bool forceProxy = false; - - if (streamLink.Contains("ashdi.vip", StringComparison.OrdinalIgnoreCase) && init.streamproxy) - { - streamHeaders = new List() - { - new HeadersModel("User-Agent", "Mozilla/5.0"), - new HeadersModel("Referer", "https://ashdi.vip/") - }; - forceProxy = true; - } - - string streamUrl = HostStreamProxy(init, streamLink, headers: streamHeaders, force_streamproxy: forceProxy); - if (!string.IsNullOrEmpty(streamUrl) && - streamUrl.StartsWith($"{host}/proxy/", StringComparison.OrdinalIgnoreCase)) - { - streamUrl = accsArgs(streamUrl); - } - + string streamUrl = HostStreamProxy(init, accsArgs(streamLink)); OnLog($"Controller: redirecting to stream URL: {streamUrl}"); return Redirect(streamUrl); }