oh wait, i didn't believe it when it said it was broken
This commit is contained in:
parent
3816c29612
commit
9628a7b8b9
20
Program.cs
20
Program.cs
@ -31,7 +31,7 @@ namespace ttrss_co_client
|
||||
if (actionsForFeed != null && actionsForFeed.Any())
|
||||
{
|
||||
var sponsorCheck = await SponsorCheck(hl);
|
||||
if(!sponsorCheck.Item1)
|
||||
if (!sponsorCheck.Item1)
|
||||
{
|
||||
await ttrssClient.UpdateArticleNote($"{hl.note}\n[{DateTime.Now.ToLongTimeString()}] sponsorcheck: {sponsorCheck.Item2}", hl.id);
|
||||
continue;
|
||||
@ -135,7 +135,7 @@ namespace ttrss_co_client
|
||||
{
|
||||
Directory.CreateDirectory(Path.GetDirectoryName(moveTarget));
|
||||
}
|
||||
if(File.Exists(moveTarget))
|
||||
if (File.Exists(moveTarget))
|
||||
{
|
||||
Console.WriteLine("file already exists, abandoning");
|
||||
}
|
||||
@ -265,7 +265,7 @@ namespace ttrss_co_client
|
||||
var extensionUpstream = attachmentLink.Substring(attachmentLink.LastIndexOf('.'));
|
||||
var containingDirectory = $"./tmp/Podcasts/{podcastName}/";
|
||||
var outputFilename = $"{containingDirectory}{episodeTitle}{extensionUpstream}";
|
||||
if(!Directory.Exists(containingDirectory))
|
||||
if (!Directory.Exists(containingDirectory))
|
||||
{
|
||||
Directory.CreateDirectory(containingDirectory);
|
||||
}
|
||||
@ -298,21 +298,21 @@ namespace ttrss_co_client
|
||||
}
|
||||
private static async Task<Tuple<bool, string>> SponsorCheck(ttrss.datastructures.Headline hl)
|
||||
{
|
||||
if(!hl.link.Host.EndsWith("youtube.com"))
|
||||
if (!hl.link.Host.EndsWith("youtube.com"))
|
||||
{
|
||||
return new Tuple<bool, string>(true, "sponsorblock, sadly, only exists for youtube");
|
||||
}
|
||||
var match = Regex.Match(hl.link.Query, "v=([^&]+)(&|$)");
|
||||
var videoId = match.Groups?[1].Value;
|
||||
var c = new HttpClient();
|
||||
|
||||
|
||||
var sponsorblockcheck = await c.GetAsync($"https://sponsor.ajay.app/api/skipSegments?videoID={videoId}&category=sponsor&category=selfpromo&category=interaciton&category=intro&category=outro&category=preview");
|
||||
if(sponsorblockcheck.StatusCode == System.Net.HttpStatusCode.NotFound)
|
||||
if (sponsorblockcheck.StatusCode == System.Net.HttpStatusCode.NotFound)
|
||||
{
|
||||
Console.WriteLine($"sponsorblock reports that {videoId} has no entries (yet)");
|
||||
var updateTimestamp = new DateTime(1970, 1, 1, 0, 0, 0, 0, DateTimeKind.Utc);
|
||||
updateTimestamp = updateTimestamp.AddSeconds(hl.updated).ToLocalTime();
|
||||
if(DateTime.Now - updateTimestamp > TimeSpan.FromMinutes(45))
|
||||
if (DateTime.Now - updateTimestamp > TimeSpan.FromMinutes(45))
|
||||
{
|
||||
return new Tuple<bool, string>(true, $"updated {updateTimestamp} (more than 45 minutes ago), going to give up waiting for sponsorblock");
|
||||
}
|
||||
@ -326,7 +326,7 @@ namespace ttrss_co_client
|
||||
try
|
||||
{
|
||||
var segments = JsonConvert.DeserializeObject<IEnumerable<sponsorblock.Segment>>(await sponsorblockcheck.Content.ReadAsStringAsync());
|
||||
if(segments.Count() > 1)
|
||||
if (segments.Count() > 1)
|
||||
{
|
||||
return new Tuple<bool, string>(true, $"{segments.Count()} segments");
|
||||
}
|
||||
@ -335,6 +335,10 @@ namespace ttrss_co_client
|
||||
return new Tuple<bool, string>(false, $"no segments");
|
||||
}
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
return new Tuple<bool, string>(false, $"{e.ToString()} - {e.Message}");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user