diff --git a/StreamMaster.Application/StreamGroups/Queries/GetStreamGroupLineUp.cs b/StreamMaster.Application/StreamGroups/Queries/GetStreamGroupLineUp.cs index 27f2598b5..0105c3694 100644 --- a/StreamMaster.Application/StreamGroups/Queries/GetStreamGroupLineUp.cs +++ b/StreamMaster.Application/StreamGroups/Queries/GetStreamGroupLineUp.cs @@ -67,20 +67,37 @@ public async Task Handle(GetStreamGroupLineup request, CancellationToken return JsonSerializer.Serialize(ret); } + ISchedulesDirectData dummyData = schedulesDirectDataService.DummyData(); foreach (VideoStreamDto videoStream in videoStreams.OrderBy(a => a.User_Tvg_chno)) { - if (setting.M3UIgnoreEmptyEPGID && - (string.IsNullOrEmpty(videoStream.User_Tvg_ID) || videoStream.User_Tvg_ID.ToLower() == "dummy")) + if (setting.M3UIgnoreEmptyEPGID && string.IsNullOrEmpty(videoStream.User_Tvg_ID)) { continue; } - //string videoUrl = videoStream.Url; + bool isDummy = epgHelper.IsDummy(videoStream.User_Tvg_ID); + + if (isDummy) + { + videoStream.User_Tvg_ID = $"{EPGHelper.DummyId}-{videoStream.Id}"; + VideoStreamConfig videoStreamConfig = new() + { + Id = videoStream.Id, + M3UFileId = videoStream.M3UFileId, + User_Tvg_name = videoStream.User_Tvg_name, + Tvg_ID = videoStream.Tvg_ID, + User_Tvg_ID = videoStream.User_Tvg_ID, + User_Tvg_Logo = videoStream.User_Tvg_logo, + User_Tvg_chno = videoStream.User_Tvg_chno, + IsDuplicate = false, + IsDummy = false + }; + dummyData.FindOrCreateDummyService(videoStream.User_Tvg_ID, videoStreamConfig); + } int epgNumber = EPGHelper.DummyId; string stationId; - if (string.IsNullOrEmpty(videoStream.User_Tvg_ID)) { stationId = videoStream.User_Tvg_group;