mirror of
https://github.com/PluralKit/PluralKit.git
synced 2026-02-04 13:06:50 +00:00
feat: move PKMessage JSON to PluralKit.Core
This commit is contained in:
parent
ddd966ad58
commit
a4a5f5c17a
8 changed files with 55 additions and 71 deletions
39
PluralKit.Core/Models/PKMessage.cs
Normal file
39
PluralKit.Core/Models/PKMessage.cs
Normal file
|
|
@ -0,0 +1,39 @@
|
|||
using Newtonsoft.Json.Linq;
|
||||
|
||||
using NodaTime;
|
||||
|
||||
namespace PluralKit.Core
|
||||
{
|
||||
public class PKMessage
|
||||
{
|
||||
public ulong Mid { get; set; }
|
||||
public ulong? Guild { get; set; } // null value means "no data" (ie. from before this field being added)
|
||||
public ulong Channel { get; set; }
|
||||
public MemberId Member { get; set; }
|
||||
public ulong Sender { get; set; }
|
||||
public ulong? OriginalMid { get; set; }
|
||||
}
|
||||
|
||||
public class FullMessage
|
||||
{
|
||||
public PKMessage Message;
|
||||
public PKMember Member;
|
||||
public PKSystem System;
|
||||
|
||||
public JObject ToJson(LookupContext ctx, APIVersion v)
|
||||
{
|
||||
var o = new JObject();
|
||||
|
||||
o.Add("timestamp", Instant.FromUnixTimeMilliseconds((long)(this.Message.Mid >> 22) + 1420070400000).ToString());
|
||||
o.Add("id", this.Message.Mid.ToString());
|
||||
o.Add("original", this.Message.OriginalMid.ToString());
|
||||
o.Add("sender", this.Message.Sender.ToString());
|
||||
o.Add("channel", this.Message.Channel.ToString());
|
||||
o.Add("guild", this.Message.Guild?.ToString());
|
||||
o.Add("system", this.System.ToJson(ctx, v));
|
||||
o.Add("member", this.Member.ToJson(ctx, v: v));
|
||||
|
||||
return o;
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue