Beispiel #1
0
        } // Run

        private bool Init()
        {
            // load configuration
            var result = AppUiConfiguration.Load(null, Console.WriteLine);

            if (result.IsError)
            {
                Console.WriteLine(result.Message);
                return(false);
            } // if

            // get channels
            Console.WriteLine("Loading broadcast services");
            var providers = AppUiConfiguration.Current.Cache.LoadXml <ProviderDiscoveryRoot>("ProviderDiscovery", AppUiConfiguration.Current.ContentProvider.Bootstrap.MulticastAddress);

            ServiceProvider = UiProviderDiscovery.GetUiServiceProviderFromKey(providers, "dem_19.imagenio.es");

            var downloader = new UiBroadcastDiscoveryDownloader();

            BroadcastDiscovery = downloader.Download(null, ServiceProvider, null, true);

            ParentalGuidanceCodes = new Dictionary <string, string>();
            EpgServices           = new Dictionary <string, EpgService>();

            return(true);
        } // Init
Beispiel #2
0
        } // SelectProvider

        private bool LoadBroadcastDiscovery()
        {
            var downloader  = new UiBroadcastDiscoveryDownloader();
            var uiDiscovery = downloader.Download(this, SelectedServiceProvider, BroadcastDiscovery, checkFromCache.Checked, checkHighDefPriority.Checked);

            if (uiDiscovery == null)
            {
                return(false);
            }

            BroadcastDiscovery = uiDiscovery;
            return(true);
        } // LoadBroadcastDiscovery
Beispiel #3
0
        }  // GetLogicalNumbers

        private void DumpPackagesInfo(UiBroadcastDiscovery uiDiscovery, PackageDiscoveryRoot packageDiscovery)
        {
            var data = new Dictionary <UiBroadcastService, IList <KeyValuePair <string, string> > >(uiDiscovery.Services.Count);

            foreach (var service in uiDiscovery.Services)
            {
                data.Add(service, new List <KeyValuePair <string, string> >());
            } // foreach

            var packages = from discovery in packageDiscovery.PackageDiscovery
                           from package in discovery.Packages
                           select package;

            foreach (var package in packages)
            {
                foreach (var service in package.Services)
                {
                    var fullName   = service.TextualIdentifiers[0].ServiceName + "@" + SelectedServiceProvider.DomainName;
                    var refService = uiDiscovery.TryGetService(fullName);
                    if (refService == null)
                    {
                        continue;
                    }

                    data[refService].Add(new KeyValuePair <string, string>(service.LogicalChannelNumber, package.Id));
                } // foreach service
            }     // foreach package

            var filename = string.Format("{0}\\channels-numbers.csv", AppUiConfiguration.Current.Folders.Cache);

            using (var file = new System.IO.StreamWriter(filename))
            {
                foreach (var entry in data)
                {
                    file.WriteLine("\"{0}\";{1};;", entry.Key.ServiceName, entry.Key.DisplayName);
                    foreach (var number in entry.Value)
                    {
                        file.WriteLine(";;{0};\"{1}\"", number.Key, number.Value);
                    } // foreach
                }     // foreach entry
            }         // using file

            var numbers = new Dictionary <string, IList <UiBroadcastService> >();

            foreach (var package in packages)
            {
                foreach (var service in package.Services)
                {
                    var fullName   = service.TextualIdentifiers[0].ServiceName + "@" + SelectedServiceProvider.DomainName;
                    var refService = uiDiscovery.TryGetService(fullName);
                    IList <UiBroadcastService> list;

                    if (!numbers.TryGetValue(service.LogicalChannelNumber, out list))
                    {
                        list = new List <UiBroadcastService>();
                        numbers.Add(service.LogicalChannelNumber, list);
                    } // if

                    list.Add(refService);
                } // foreach service
            }     // foreach package

            filename = string.Format("{0}\\numbers-channels.csv", AppUiConfiguration.Current.Folders.Cache);
            using (var file = new System.IO.StreamWriter(filename))
            {
                file.WriteLine("\"Logical\";");
                foreach (var entry in numbers)
                {
                    file.WriteLine("{0}", entry.Key);
                    foreach (var channel in entry.Value)
                    {
                        file.WriteLine(";\"{0}\";{1};{2};\"{3}\";\"{4}\";{5}", channel.DisplayName,
                                       channel.IsHighDefinitionTv ? "HD" : null,
                                       (channel.ReplacementService != null) ? "~HD" : null,
                                       channel.ServiceName,
                                       (channel.ReplacementService == null) ? null : channel.ReplacementService.ServiceName,
                                       channel.ServiceType);
                    } // foreach channel
                }     // foreach entry
            }         // using file
        }             // DumpPackagesInfo
Beispiel #4
0
        } // LoadBroadcastDiscovery

        private void GetLogicalNumbers(UiBroadcastDiscovery uiDiscovery, PackageDiscoveryRoot packageDiscovery, bool highDefinitionPriority)
        {
            DumpPackagesInfo(uiDiscovery, packageDiscovery);

            UiServicesLogicalNumbers.AssignLogicalNumbers(uiDiscovery, packageDiscovery, SelectedServiceProvider.DomainName, highDefinitionPriority);
        }  // GetLogicalNumbers
Beispiel #5
0
        } // Init

        private void End()
        {
            ParentalGuidanceCodes = null;
            ServiceProvider       = null;
            BroadcastDiscovery    = null;
        } // End
Beispiel #6
0
        } // LoadBroadcastDiscovery

        private void SetBroadcastDiscovery(UiBroadcastDiscovery broadcastDiscovery)
        {
            BroadcastDiscovery            = broadcastDiscovery;
            ListManager.BroadcastServices = (BroadcastDiscovery != null) ? BroadcastDiscovery.Services : null;
        } // SetBroadcastDiscovery