Files
hermes-client/Twitch/Socket/Messages/ChannelChatMessage.cs

81 lines
3.0 KiB
C#

namespace TwitchChatTTS.Twitch.Socket.Messages
{
public class ChannelChatMessage
{
public required string BroadcasterUserId { get; set; }
public required string BroadcasterUserLogin { get; set; }
public required string BroadcasterUserName { get; set; }
public required string ChatterUserId { get; set; }
public required string ChatterUserLogin { get; set; }
public required string ChatterUserName { get; set; }
public required string MessageId { get; set; }
public required TwitchChatMessageInfo Message { get; set; }
public required string MessageType { get; set; }
public required TwitchBadge[] Badges { get; set; }
public TwitchReplyInfo? Reply { get; set; }
public string? ChannelPointsCustomRewardId { get; set; }
public string? ChannelPointsAnimationId { get; set; }
public string? SourceBroadcasterUserId { get; set; }
public string? SourceBroadcasterUserName { get; set; }
public string? SourceBroadcasterUserLogin { get; set; }
public string? SourceMessageId { get; set; }
public TwitchBadge[]? SourceBadges { get; set; }
}
public class TwitchChatMessageInfo
{
public required string Text { get; set; }
public required TwitchChatFragment[] Fragments { get; set; }
}
public class TwitchChatFragment
{
public required string Type { get; set; }
public required string Text { get; set; }
public TwitchCheerInfo? Cheermote { get; set; }
public TwitchEmoteInfo? Emote { get; set; }
public TwitchMentionInfo? Mention { get; set; }
}
public class TwitchCheerInfo
{
public required string Prefix { get; set; }
public int Bits { get; set; }
public int Tier { get; set; }
}
public class TwitchEmoteInfo
{
public required string Id { get; set; }
public required string EmoteSetId { get; set; }
public required string OwnerId { get; set; }
public required string[] Format { get; set; }
}
public class TwitchMentionInfo
{
public required string UserId { get; set; }
public required string UserName { get; set; }
public required string UserLogin { get; set; }
}
public class TwitchBadge
{
public required string SetId { get; set; }
public required string Id { get; set; }
public required string Info { get; set; }
}
public class TwitchReplyInfo
{
public required string ParentMessageId { get; set; }
public required string ParentMessageBody { get; set; }
public required string ParentUserId { get; set; }
public required string ParentUserName { get; set; }
public required string ParentUserLogin { get; set; }
public required string ThreadMessageId { get; set; }
public required string ThreadUserName { get; set; }
public required string ThreadUserLogin { get; set; }
}
}