mirror of
https://github.com/wabbajack-tools/wabbajack.git
synced 2024-08-30 18:42:17 +00:00
107 lines
2.5 KiB
C#
107 lines
2.5 KiB
C#
using System;
|
|
using System.Text.Json.Serialization;
|
|
|
|
namespace Wabbajack.Networking.Discord
|
|
{
|
|
[JsonConverter(typeof(JsonStringEnumConverter))]
|
|
public enum Channel
|
|
{
|
|
Spam,
|
|
Ham
|
|
}
|
|
|
|
public class DiscordMessage
|
|
{
|
|
[JsonPropertyName("username")]
|
|
public string UserName { get; set; }
|
|
|
|
[JsonPropertyName("avatar_url")]
|
|
public Uri AvatarUrl { get; set; }
|
|
|
|
[JsonPropertyName("content")]
|
|
public string Content { get; set; }
|
|
|
|
[JsonPropertyName("embeds")]
|
|
public DiscordEmbed[] Embeds { get; set; }
|
|
}
|
|
|
|
|
|
public class DiscordEmbed
|
|
{
|
|
[JsonPropertyName("title")]
|
|
public string Title { get; set; }
|
|
|
|
[JsonPropertyName("color")]
|
|
public int Color { get; set; }
|
|
|
|
[JsonPropertyName("author")]
|
|
public DiscordAuthor Author { get; set; }
|
|
|
|
[JsonPropertyName("url")]
|
|
public Uri Url { get; set; }
|
|
|
|
[JsonPropertyName("description")]
|
|
public string Description { get; set; }
|
|
|
|
[JsonPropertyName("fields")]
|
|
public DiscordField Field { get; set; }
|
|
|
|
[JsonPropertyName("thumbnail")]
|
|
public DiscordNumbnail Thumbnail { get; set; }
|
|
|
|
[JsonPropertyName("image")]
|
|
public DiscordImage Image { get; set; }
|
|
|
|
[JsonPropertyName("footer")]
|
|
public DiscordFooter Footer { get; set; }
|
|
|
|
[JsonPropertyName("timestamp")]
|
|
public DateTime Timestamp { get; set; } = DateTime.UtcNow;
|
|
}
|
|
|
|
|
|
public class DiscordAuthor
|
|
{
|
|
[JsonPropertyName("name")]
|
|
public string Name { get; set; }
|
|
|
|
[JsonPropertyName("url")]
|
|
public Uri Url { get; set; }
|
|
|
|
[JsonPropertyName("icon_url")]
|
|
public Uri IconUrl { get; set; }
|
|
}
|
|
|
|
public class DiscordField
|
|
{
|
|
[JsonPropertyName("name")]
|
|
public string Name { get; set; }
|
|
|
|
[JsonPropertyName("value")]
|
|
public string Value { get; set; }
|
|
|
|
[JsonPropertyName("inline")]
|
|
public bool Inline { get; set; }
|
|
}
|
|
|
|
public class DiscordNumbnail
|
|
{
|
|
[JsonPropertyName("Url")]
|
|
public Uri Url { get; set; }
|
|
}
|
|
|
|
public class DiscordImage
|
|
{
|
|
[JsonPropertyName("Url")]
|
|
public Uri Url { get; set; }
|
|
}
|
|
|
|
public class DiscordFooter
|
|
{
|
|
[JsonPropertyName("text")]
|
|
public string Text { get; set; }
|
|
|
|
[JsonPropertyName("icon_url")]
|
|
public Uri icon_url { get; set; }
|
|
}
|
|
} |