// Copyright (c) 2007-2017 ppy Pty Ltd . // Licensed under the MIT Licence - https://raw.githubusercontent.com/ppy/osu/master/LICENCE using System; using System.ComponentModel; using Newtonsoft.Json; using osu.Game.Users; namespace osu.Game.Online.Chat { public class Message { [JsonProperty(@"message_id")] public long Id; //todo: this should be inside sender. [JsonProperty(@"user_id")] public int UserId; [JsonProperty(@"target_type")] public TargetType TargetType; [JsonProperty(@"target_id")] public int TargetId; [JsonProperty(@"timestamp")] public DateTimeOffset Timestamp; [JsonProperty(@"content")] public string Content; [JsonProperty(@"sender")] public User User; [JsonConstructor] public Message() { } } public enum TargetType { [Description(@"channel")] Channel, [Description(@"user")] User } }