[CHANGE] Json video parser && video model
This commit is contained in:
@@ -1,34 +1,61 @@
|
||||
using System.Text.Json.Serialization;
|
||||
using Manager.YouTube.Models.Innertube;
|
||||
|
||||
namespace Manager.YouTube.Models;
|
||||
|
||||
public class YouTubeVideo
|
||||
{
|
||||
[JsonPropertyName("videoId")]
|
||||
public required string VideoId { get; set; }
|
||||
[JsonPropertyName("title")]
|
||||
public string Title { get; set; } = "";
|
||||
[JsonPropertyName("description")]
|
||||
public string Description { get; set; } = "";
|
||||
[JsonPropertyName("hashTags")]
|
||||
public string[] HashTags { get; set; } = [];
|
||||
[JsonPropertyName("viewCount")]
|
||||
public long ViewCount { get; set; }
|
||||
[JsonPropertyName("likeCount")]
|
||||
public long LikeCount { get; set; }
|
||||
[JsonPropertyName("channelId")]
|
||||
public string ChannelId { get; set; } = "";
|
||||
[JsonPropertyName("author")]
|
||||
public string Author { get; set; } = "";
|
||||
[JsonPropertyName("playabilityStatus")]
|
||||
public string PlayabilityStatus { get; set; } = "";
|
||||
[JsonPropertyName("lengthSeconds")]
|
||||
public long LengthSeconds { get; set; }
|
||||
[JsonPropertyName("isOwnerViewing")]
|
||||
public bool IsOwnerViewing { get; set; }
|
||||
[JsonPropertyName("allowRating")]
|
||||
public bool AllowRating { get; set; }
|
||||
[JsonPropertyName("isCrawlable")]
|
||||
public bool IsCrawlable { get; set; }
|
||||
[JsonPropertyName("isPrivate")]
|
||||
public bool IsPrivate { get; set; }
|
||||
[JsonPropertyName("isUnpluggedCorpus")]
|
||||
public bool IsUnpluggedCorpus { get; set; }
|
||||
[JsonPropertyName("isLive")]
|
||||
public bool IsLive { get; set; }
|
||||
public bool IsFamiliySave { get; set; }
|
||||
[JsonPropertyName("isFamilySafe")]
|
||||
public bool IsFamilySave { get; set; }
|
||||
[JsonPropertyName("availableCountries")]
|
||||
public string[] AvailableCountries { get; set; } = [];
|
||||
[JsonPropertyName("isUnlisted")]
|
||||
public bool IsUnlisted { get; set; }
|
||||
[JsonPropertyName("hasYpcMetadata")]
|
||||
public bool HasYpcMetadata { get; set; }
|
||||
[JsonPropertyName("publishDate")]
|
||||
public DateTime PublishDate { get; set; }
|
||||
[JsonPropertyName("uploadDate")]
|
||||
public DateTime UploadDate { get; set; }
|
||||
[JsonPropertyName("isShortsEligible")]
|
||||
public bool IsShortsEligible { get; set; }
|
||||
[JsonPropertyName("category")]
|
||||
public string Category { get; set; } = "";
|
||||
|
||||
public StreamingData StreamingData { get; set; } = new();
|
||||
[JsonPropertyName("thumbnail")]
|
||||
public List<WebImage> Thumbnails { get; set; } = [];
|
||||
|
||||
public PlayerConfig? PlayerConfig { get; set; }
|
||||
|
||||
Reference in New Issue
Block a user