Example #1
0
        protected override void Tick()
        {
            string url = "http://followmy.tv/calendar.ics?apikey=4cf8599d-8d00-46c0-a2f5-0c5abc287203";

            var lines = new WebClient().DownloadString(url).Split(new[] { Environment.NewLine }, StringSplitOptions.None);
            var trimmed = lines.Where(o => o.StartsWith("SUMMARY") || o.StartsWith("DTSTART")).Select(o => o.Replace("SUMMARY:", "").Replace("DTSTART:", "")).ToList();
            var sched = ScheduleTicker.Instance;
            Brain.Settings.Shows = new HashSet<string>();
            for (int i = 0; i < trimmed.Count; i += 2)
            {
                try
                {
                    var name = trimmed[i + 1];
                    var entry = new TVEntry(name, trimmed[i]);
                    if (entry.Time < DateTime.Now) continue;
                    Brain.Settings.Shows.Add(entry.Name.ToLower().Trim());
                    sched.AddTask(entry.Time, "Watch " + entry.Name.Trim());
                }
                catch
                {
                }
            }
        }