using System; namespace axXez.TS3.Protocol { /// Represents a ban entry returned by banlist. public class BanInfo : TsEntity { /// Numeric ban rule ID. [TsField("banid")] public int BanID { get; protected set; } /// IP address regex pattern of the ban rule; empty if not banning by IP. [TsField("ip")] public string IP { get; protected set; } /// Nickname regex pattern of the ban rule; empty if not banning by name. [TsField("name")] public string Name { get; protected set; } /// Unique identifier of the banned client; empty if not banning by UID. [TsField("uid")] public string UID { get; protected set; } /// MyTeamSpeak ID of the banned client; empty if not banning by mytsid. [TsField("mytsid")] public string MyTsID { get; protected set; } /// Last known nickname of the banned client at the time the ban was created. [TsField("lastnickname")] public string LastNickname { get; protected set; } /// Date and time when the ban was created. [TsField("created")] public DateTime Created { get; protected set; } /// Ban duration in seconds; 0 means permanent. [TsField("duration")] public int Duration { get; protected set; } /// Nickname of the client who created this ban rule. [TsField("invokername")] public string InvokerName { get; protected set; } /// Database ID of the client who created this ban rule. [TsField("invokercldbid")] public int InvokerDBID { get; protected set; } /// Unique identifier of the client who created this ban rule. [TsField("invokeruid")] public string InvokerUID { get; protected set; } /// Reason message provided when the ban was created. [TsField("reason")] public string Reason { get; protected set; } /// Number of times this ban rule has been enforced (i.e. clients rejected). [TsField("enforcements")] public int Enforcements { get; protected set; } internal BanInfo(TsDataEntry data) : base(data) { } } }