コード例 #1
0
 protected override Task ExecuteAsync(CancellationToken stoppingToken)
 {
     PackageConsumer.OnMessage((Message) =>
     {
         var merge = JT1078.Protocol.JT1078Serializer.Merge(Message.Data);
         if (merge != null)
         {
             var hasHttpSessionn = HttpSessionManager.GetAllHttpContextBySimAndChannelNo(merge.SIM, merge.LogicChannelNumber);
             if (hasHttpSessionn.Count > 0)
             {
                 M3U8FileManage.CreateTsData(merge);
             }
             else
             {
                 M3U8FileManage.Clear(merge.SIM, merge.LogicChannelNumber);
             }
         }
     });
     return(Task.CompletedTask);
 }
コード例 #2
0
        protected async override Task ExecuteAsync(CancellationToken stoppingToken)
        {
            while (!stoppingToken.IsCancellationRequested)
            {
                var data = await messageDispatchDataService.HlsChannel.Reader.ReadAsync();

                logger.LogDebug($"设备{data.SIM},{data.LogicChannelNumber},session:{System.Text.Json.JsonSerializer.Serialize(HttpSessionManager)}");
                var hasHttpSessionn = HttpSessionManager.GetAllHttpContextBySimAndChannelNo(data.SIM, data.LogicChannelNumber).Where(m => m.RTPVideoType == Metadata.RTPVideoType.Http_Hls).ToList();
                if (hasHttpSessionn.Count > 0)
                {
                    logger.LogDebug($"设备{data.SIM},{data.LogicChannelNumber}连上了");
                    M3U8FileManage.CreateTsData(data);
                }
                else
                {
                    logger.LogDebug($"没有设备链接");
                }
            }
            await Task.CompletedTask;
        }