elliebot/src/Ellie.Bot.Modules.Searches/_common/StreamNotifications/Models/TwitchResponseV5.cs
2023-08-07 23:21:31 +12:00

114 lines
No EOL
2.8 KiB
C#

#nullable disable
using Newtonsoft.Json;
namespace Ellie.Modules.Searches.Common;
public class TwitchResponseV5
{
public List<Stream> Streams { get; set; }
public class Channel
{
[JsonProperty("_id")]
public int Id { get; set; }
[JsonProperty("broadcaster_language")]
public string BroadcasterLanguage { get; set; }
[JsonProperty("created_at")]
public DateTime CreatedAt { get; set; }
[JsonProperty("display_name")]
public string DisplayName { get; set; }
[JsonProperty("followers")]
public int Followers { get; set; }
[JsonProperty("game")]
public string Game { get; set; }
[JsonProperty("language")]
public string Language { get; set; }
[JsonProperty("logo")]
public string Logo { get; set; }
[JsonProperty("mature")]
public bool Mature { get; set; }
[JsonProperty("name")]
public string Name { get; set; }
[JsonProperty("partner")]
public bool Partner { get; set; }
[JsonProperty("profile_banner")]
public string ProfileBanner { get; set; }
[JsonProperty("profile_banner_background_color")]
public object ProfileBannerBackgroundColor { get; set; }
[JsonProperty("status")]
public string Status { get; set; }
[JsonProperty("updated_at")]
public DateTime UpdatedAt { get; set; }
[JsonProperty("url")]
public string Url { get; set; }
[JsonProperty("video_banner")]
public string VideoBanner { get; set; }
[JsonProperty("views")]
public int Views { get; set; }
}
public class Preview
{
[JsonProperty("large")]
public string Large { get; set; }
[JsonProperty("medium")]
public string Medium { get; set; }
[JsonProperty("small")]
public string Small { get; set; }
[JsonProperty("template")]
public string Template { get; set; }
}
public class Stream
{
[JsonProperty("_id")]
public long Id { get; set; }
[JsonProperty("average_fps")]
public double AverageFps { get; set; }
[JsonProperty("channel")]
public Channel Channel { get; set; }
[JsonProperty("created_at")]
public DateTime CreatedAt { get; set; }
[JsonProperty("delay")]
public double Delay { get; set; }
[JsonProperty("game")]
public string Game { get; set; }
[JsonProperty("is_playlist")]
public bool IsPlaylist { get; set; }
[JsonProperty("preview")]
public Preview Preview { get; set; }
[JsonProperty("video_height")]
public int VideoHeight { get; set; }
[JsonProperty("viewers")]
public int Viewers { get; set; }
}
}