diff options
author | TheArcaneBrony <myrainbowdash949@gmail.com> | 2023-09-19 00:16:36 +0200 |
---|---|---|
committer | TheArcaneBrony <myrainbowdash949@gmail.com> | 2023-09-19 00:16:36 +0200 |
commit | f5447484512d726f4403f0d7725777d0a95601fb (patch) | |
tree | 47fe88a4c021f62ff42663f6d8c5229e71d21813 /LibMatrix/StateEventTypes/Spec/PolicyRuleStateEventData.cs | |
parent | Improve README (diff) | |
download | LibMatrix-f5447484512d726f4403f0d7725777d0a95601fb.tar.xz |
Add more stuff, add unit tests
Diffstat (limited to 'LibMatrix/StateEventTypes/Spec/PolicyRuleStateEventData.cs')
-rw-r--r-- | LibMatrix/StateEventTypes/Spec/PolicyRuleStateEventData.cs | 56 |
1 files changed, 0 insertions, 56 deletions
diff --git a/LibMatrix/StateEventTypes/Spec/PolicyRuleStateEventData.cs b/LibMatrix/StateEventTypes/Spec/PolicyRuleStateEventData.cs deleted file mode 100644 index 539e371..0000000 --- a/LibMatrix/StateEventTypes/Spec/PolicyRuleStateEventData.cs +++ /dev/null @@ -1,56 +0,0 @@ -using System.Text.Json.Serialization; -using LibMatrix.Helpers; -using LibMatrix.Interfaces; - -namespace LibMatrix.StateEventTypes.Spec; - -[MatrixEvent(EventName = "m.policy.rule.user")] -[MatrixEvent(EventName = "m.policy.rule.server")] -[MatrixEvent(EventName = "org.matrix.mjolnir.rule.server")] -public class PolicyRuleEventContent : EventContent { - /// <summary> - /// Entity this ban applies to, can use * and ? as globs. - /// </summary> - [JsonPropertyName("entity")] - public string Entity { get; set; } - - /// <summary> - /// Reason this user is banned - /// </summary> - [JsonPropertyName("reason")] - public string? Reason { get; set; } - - /// <summary> - /// Suggested action to take - /// </summary> - [JsonPropertyName("recommendation")] - public string? Recommendation { get; set; } - - /// <summary> - /// Expiry time in milliseconds since the unix epoch, or null if the ban has no expiry. - /// </summary> - [JsonPropertyName("support.feline.policy.expiry.rev.2")] //stable prefix: expiry, msc pending - public long? Expiry { get; set; } - - //utils - /// <summary> - /// Readable expiry time, provided for easy interaction - /// </summary> - [JsonPropertyName("gay.rory.matrix_room_utils.readable_expiry_time_utc")] - public DateTime? ExpiryDateTime { - get => Expiry == null ? null : DateTimeOffset.FromUnixTimeMilliseconds(Expiry.Value).DateTime; - set => Expiry = ((DateTimeOffset)value).ToUnixTimeMilliseconds(); - } -} - -public static class PolicyRecommendationTypes { - /// <summary> - /// Ban this user - /// </summary> - public static string Ban = "m.ban"; - - /// <summary> - /// Mute this user - /// </summary> - public static string Mute = "support.feline.policy.recommendation_mute"; //stable prefix: m.mute, msc pending -} |