twitch-agent/TwitchEventSub/Types/HypeTrain/HypeTrain.cs

32 lines
1.7 KiB
C#
Raw Permalink Normal View History

namespace TwitchEventSub.Types.HypeTrain
{
public abstract class HypeTrainEvents : Event
{
public string id { get; set; } //The Hype Train ID.
public string broadcaster_user_id { get; set; } //The requested broadcaster ID.
public string broadcaster_user_login { get; set; } //The requested broadcaster login.
public string broadcaster_user_name { get; set; } //The requested broadcaster display name.
public int level { get; set; } //The current level of the Hype Train.
public int total { get; set; } //Total points contributed to the Hype Train.
public Contribution top_contributions { get; set; } //The contributors with the most points contributed.
public string started_at { get; set; } //The time when the Hype Train started.
}
public class HypeTrainProgress: HypeTrainEvents
{
public int progress { get; set; } //The number of points contributed to the Hype Train at the current level.
public int goal { get; set; } //The number of points required to reach the next level.
public Contribution last_contribution { get; set; } //The most recent contribution.
public string expires_at { get; set; } //The time when the Hype Train expires. The expiration is extended when the Hype Train reaches a new level.
}
public class HypeTrainBegin : HypeTrainProgress
{
new private int level{get;set;} = 1;
}
public class HypeTrainEnd : HypeTrainEvents
{
public string ended_at { get; set; } //The time when the Hype Train ended.
public string cooldown_ends_at { get; set; } //The time when the Hype Train cooldown ends so that the next Hype Train can start.
}
}