50 lines
1.9 KiB
C#
50 lines
1.9 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using Newtonsoft.Json;
|
|
using Newtonsoft.Json.Linq;
|
|
|
|
namespace Kalakoi.Xbox.OpenXBL
|
|
{
|
|
public class Alert
|
|
{
|
|
public string ID { get; set; }
|
|
public string Action { get; set; }
|
|
public string Path { get; set; }
|
|
public string ActorXuid { get; set; }
|
|
public string ActorGamertag { get; set; }
|
|
public string ParentType { get; set; }
|
|
public string ParentPath { get; set; }
|
|
public string OwnerXuid { get; set; }
|
|
public string OwnerGamertag { get; set; }
|
|
public DateTime Timestamp { get; set; }
|
|
public bool Seen { get; set; }
|
|
public string RootPath { get; set; }
|
|
|
|
public static Alert DeserializeJSON(string JSON) => DeserializeJSON(JObject.Parse(JSON));
|
|
|
|
public static Alert DeserializeJSON(JToken Token)
|
|
{
|
|
if (Token == null || !Token.HasValues) return new Alert();
|
|
Alert a = new Alert()
|
|
{
|
|
ID = (string)Token.SelectToken("id"),
|
|
Action = (string)Token.SelectToken("action"),
|
|
Path = (string)Token.SelectToken("path"),
|
|
ActorXuid = (string)Token.SelectToken("actorXuid"),
|
|
ActorGamertag = (string)Token.SelectToken("actorGamertag"),
|
|
ParentType = (string)Token.SelectToken("parentType"),
|
|
ParentPath = (string)Token.SelectToken("parentPath"),
|
|
OwnerXuid = (string)Token.SelectToken("ownerXuid"),
|
|
OwnerGamertag = (string)Token.SelectToken("ownerGamertag"),
|
|
Timestamp = (DateTime)Token.SelectToken("timestamp"),
|
|
Seen = (bool)Token.SelectToken("seen"),
|
|
RootPath = (string)Token.SelectToken("rootPath")
|
|
};
|
|
return a;
|
|
}
|
|
}
|
|
}
|