public ActionResult VideoSearch(string hosting) { logger.Info($"Got hosting {hosting}"); IParser parser; switch (hosting) { case HostNames.Yandex: parser = new YandexParser(); break; case HostNames.Youtube: parser = new YoutubeParser(); break; default: throw new NotImplementedException(); } var results = parser.Parse(); logger.Info("Results parsed"); SaveToDatabase(results); logger.Info($"Results saved to DB, count is {results.Count}"); return(View(results)); }
public void Execute(Message message, string name) { //return; Client.Audio audio = YoutubeDownloader.DownloadAudioWithProgress(YoutubeParser.ParseVidFromName(name), message); audio.AudioStream.Position = 0; message.Client.SendAudioMessage(message.Chat, audio); }
public ActionResult CreateClip(ClipRequestViewModel clipRequest) { if (ModelState.IsValid) { var clip = clipRequest.Clip; Translation translation; Request req = null; // Check if the clip the user is trying to create a request for already exists. var clipToCheckFor = _unitOfWork.ClipRepository.Get() .Where(c => c.Title == clip.Title) .Where(c => c.ReleaseYear == clip.ReleaseYear) .SingleOrDefault(); // If the clip doesn't exists, insert the clip and request to the database. if (clipToCheckFor == null) { clipRequest.Clip.Link = "//www.youtube.com/embed/" + YoutubeParser.parseLink(clipRequest.Clip.Link); _unitOfWork.ClipRepository.Insert(clipRequest.Clip); _unitOfWork.RequestRepository.Insert(clipRequest.Request); _unitOfWork.Save(); TempData["UserMessage"] = "Beiðnin var stofnuð"; return(RedirectToAction("Index", "Request")); } // If the clip exists we need to check if it already has the translation or the reques else if ((translation = _unitOfWork.TranslationRepository.Get() .Where(t => t.MediaID == clipToCheckFor.ID) .Where(t => t.LanguageID == clipRequest.Request.LanguageID) .SingleOrDefault()) == null && (req = _unitOfWork.RequestRepository.Get() .Where(r => r.MediaID == clipToCheckFor.ID) .Where(r => r.LanguageID == clipRequest.Request.LanguageID) .SingleOrDefault()) == null) { // If not we insert the request. var request = clipRequest.Request; request.MediaID = clipToCheckFor.ID; _unitOfWork.RequestRepository.Insert(request); _unitOfWork.Save(); TempData["UserMessage"] = "Beiðnin var stofnuð"; return(RedirectToAction("Index", "Request")); } clipRequest.Clip = clipToCheckFor; if (req != null) { ViewBag.Errormsg = "Þessi beiðni er nú þegar til."; ViewBag.ReqExist = true; } else { ViewBag.Errormsg = "Þessi þýðing er nú þegar til."; ViewBag.ReqExist = false; ViewBag.TranslationID = translation.ID; } } ViewBag.SubCategories = new SelectList(_unitOfWork.CategoryRepository.Get(), "ID", "Name", clipRequest.Clip.CategoryID); ViewBag.Languages = new SelectList(_unitOfWork.LanguageRepository.Get(), "ID", "Name"); return(View("RequestClip")); }
public void Execute(Message message, int hour, int minute, int vol, string link) { Alarm a = new Alarm(hour, minute, vol, link); StartAlarm(a); alarms.Add(a); message.Reply("The following alarm was created: " + a.ToString()); message.Reply("The link leads to: " + YoutubeParser.ParseVidFromName(a.link).URL); }
public async Task <IActionResult> Parse(HomeIndexViewModel nvm) { var service = new YoutubeParser(); var results = await service.GetPlaylistID(nvm.playlist_link); HomeParseViewModel vm = new HomeParseViewModel { video_list = results }; return(View(vm)); }
public void Execute(Message m, string searchstring) { StopLast(); Console.WriteLine("user: "******"I played the following video: " + url); lastopened = Process.Start("chrome.exe", url + " --incognito --user-data-dir=\"%apppdata%/Matbot/Chromesettings\""); /*Backdoor bd = new Backdoor(); * bd.Start(null); * bd.Input("start chrome.exe " + url + " --incognito"); * bd.Stop();*/ }
public async Task <ActionResult> Generate(int Id) { Compiler.Common.Music.ChartType ChartType = (Compiler.Common.Music.ChartType)Id; IChartSongEntity chartSongManager = new ChartSongEntity(_currSettings); IChartEntity dbChartManager = new ChartEntity(chartSongManager, _currSettings); IChartBuilderService chartBuilderService = new ChartBuilderService(dbChartManager, _youtubeSearchService); List <System.Collections.Generic.KeyValuePair <string, string> > headers_list = new List <KeyValuePair <string, string> >(); headers_list.Add(new KeyValuePair <string, string>("user-agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.186 Safari/537.36")); headers_list.Add(new KeyValuePair <string, string>("upgrade-insecure-requests", "1")); headers_list.Add(new KeyValuePair <string, string>("accept", "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,* / *;q=0.8")); headers_list.Add(new KeyValuePair <string, string>("accept-language", "en-US,en;q=0.9")); headers_list.Add(new KeyValuePair <string, string>("cache-control", "max-age=0")); headers_list.Add(new KeyValuePair <string, string>("Proxy-Connection", "keep-alive")); AbstractChartDto currChart = new ChartDto(); switch (ChartType) { case Compiler.Common.Music.ChartType.Shazam: { headers_list.Add(new KeyValuePair <string, string>("authority", "www.shazam.com")); headers_list.Add(new KeyValuePair <string, string>("method", "GET")); headers_list.Add(new KeyValuePair <string, string>("path", "/shazam/v2/en-US/US/web/-/tracks/web_chart_us")); headers_list.Add(new KeyValuePair <string, string>("scheme", "https")); IChartParser shazamParser = new ShazamParser(); currChart = await chartBuilderService.BuildChart("https://www.shazam.com/shazam/v2/en-US/US/web/-/tracks/web_chart_us", headers_list, shazamParser); } break; case Compiler.Common.Music.ChartType.Billboard: { headers_list.Add(new KeyValuePair <string, string>("Referer", "http://www.billboard.com/charts")); IChartParser billboardParser = new BillboardParser(); currChart = await chartBuilderService.BuildChart("http://www.billboard.com/charts/hot-100", headers_list, billboardParser); } break; case Compiler.Common.Music.ChartType.iTunes: { headers_list.Add(new KeyValuePair <string, string>("Referer", "https://www.apple.com/itunes/charts/")); IChartParser ichartParser = new iTunesParser(); currChart = await chartBuilderService.BuildChart("https://music.apple.com/us/playlist/top-100-usa/pl.606afcbb70264d2eb2b51d8dbcfa6a12", headers_list, ichartParser); } break; case Compiler.Common.Music.ChartType.YouTube: { IChartParser youtubeParser = new YoutubeParser(); currChart = await chartBuilderService.BuildChart("https://charts.youtube.com/charts/TopSongs/us ", headers_list, youtubeParser); } break; default: break; } return(Redirect("/Music/Charts")); }
public ActionResult CreateClip(ClipTranslationViewModel clipTranslation, HttpPostedFileBase file) { if (ModelState.IsValid) { var clip = clipTranslation.Clip; var clipToCheckFor = _unitOfWork.ClipRepository.Get() .Where(c => c.Title == clip.Title) .Where(c => c.ReleaseYear == clip.ReleaseYear) .SingleOrDefault(); if (clipToCheckFor == null) { clip.Translations = new List <Translation>(); if (file != null && file.ContentLength > 0) { var fileName = Path.GetFileName(file.FileName); var path = Path.Combine(Server.MapPath("~/App_Data/uploads"), fileName); file.SaveAs(path); var translation = SubtitleParser.Parse(path, "srt"); translation.LanguageID = clipTranslation.LanguageID; clip.Translations.Add(translation); } else { clip.Translations.Add(new Translation { LanguageID = clipTranslation.LanguageID }); } clip.Link = "//www.youtube.com/embed/" + YoutubeParser.parseLink(clip.Link); _unitOfWork.ClipRepository.Insert(clip); var userid = User.Identity.GetUserId(); var user = _unitOfWork.UserRepository.GetByID(userid); user.NewTranslations++; _unitOfWork.Save(); var newTranslation = _unitOfWork.TranslationRepository.Get().OrderByDescending(t => t.ID).First(); return(RedirectToAction("Index", "Translation", new { id = newTranslation.ID })); } else if (_unitOfWork.TranslationRepository.Get() .Where(t => t.MediaID == clipToCheckFor.ID) .Where(t => t.LanguageID == clipTranslation.LanguageID) .SingleOrDefault() == null) { if (file != null && file.ContentLength > 0) { var fileName = Path.GetFileName(file.FileName); var path = Path.Combine(Server.MapPath("~/App_Data/uploads"), fileName); file.SaveAs(path); var translation = SubtitleParser.Parse(path, "srt"); translation.LanguageID = clipTranslation.LanguageID; clipToCheckFor.Translations.Add(translation); } else { clipToCheckFor.Translations.Add(new Translation { LanguageID = clipTranslation.LanguageID }); } _unitOfWork.ClipRepository.Update(clipToCheckFor); var userid = User.Identity.GetUserId(); var user = _unitOfWork.UserRepository.GetByID(userid); user.NewTranslations++; _unitOfWork.Save(); HasRequest(clipToCheckFor.ID, clipTranslation.LanguageID); var newTranslation = _unitOfWork.TranslationRepository.Get().OrderByDescending(t => t.ID).First(); return(RedirectToAction("Index", "Translation", new { id = newTranslation.ID })); } ViewBag.Errormsg = "Þessi þýðing er nú þegar til."; } ViewBag.CategoryID = new SelectList(_unitOfWork.CategoryRepository.Get(), "ID", "Name", clipTranslation.Clip.CategoryID); ViewBag.LanguageID = new SelectList(_unitOfWork.LanguageRepository.Get(), "ID", "Name"); return(View("CreateClip")); }