From 6975119b7d21cafdd0620d35b9542fb5d47ef392 Mon Sep 17 00:00:00 2001 From: Rory& Date: Fri, 20 Jun 2025 04:50:00 +0200 Subject: Basic federation, move some response classes to the right namespace --- LibMatrix/Responses/EventIdResponse.cs | 8 ++++++++ LibMatrix/Responses/MessagesResponse.cs | 17 +++++++++++++++++ LibMatrix/Responses/UserIdAndReason.cs | 11 +++++++++++ LibMatrix/Responses/WhoAmIResponse.cs | 14 ++++++++++++++ 4 files changed, 50 insertions(+) create mode 100644 LibMatrix/Responses/EventIdResponse.cs create mode 100644 LibMatrix/Responses/MessagesResponse.cs create mode 100644 LibMatrix/Responses/UserIdAndReason.cs create mode 100644 LibMatrix/Responses/WhoAmIResponse.cs (limited to 'LibMatrix/Responses') diff --git a/LibMatrix/Responses/EventIdResponse.cs b/LibMatrix/Responses/EventIdResponse.cs new file mode 100644 index 0000000..9e23210 --- /dev/null +++ b/LibMatrix/Responses/EventIdResponse.cs @@ -0,0 +1,8 @@ +using System.Text.Json.Serialization; + +namespace LibMatrix.Responses; + +public class EventIdResponse { + [JsonPropertyName("event_id")] + public required string EventId { get; set; } +} \ No newline at end of file diff --git a/LibMatrix/Responses/MessagesResponse.cs b/LibMatrix/Responses/MessagesResponse.cs new file mode 100644 index 0000000..4912add --- /dev/null +++ b/LibMatrix/Responses/MessagesResponse.cs @@ -0,0 +1,17 @@ +using System.Text.Json.Serialization; + +namespace LibMatrix.Responses; + +public class MessagesResponse { + [JsonPropertyName("start")] + public string Start { get; set; } + + [JsonPropertyName("end")] + public string? End { get; set; } + + [JsonPropertyName("chunk")] + public List Chunk { get; set; } = new(); + + [JsonPropertyName("state")] + public List State { get; set; } = new(); +} \ No newline at end of file diff --git a/LibMatrix/Responses/UserIdAndReason.cs b/LibMatrix/Responses/UserIdAndReason.cs new file mode 100644 index 0000000..176cf7c --- /dev/null +++ b/LibMatrix/Responses/UserIdAndReason.cs @@ -0,0 +1,11 @@ +using System.Text.Json.Serialization; + +namespace LibMatrix.Responses; + +internal class UserIdAndReason(string userId = null!, string reason = null!) { + [JsonPropertyName("user_id")] + public string UserId { get; set; } = userId; + + [JsonPropertyName("reason")] + public string? Reason { get; set; } = reason; +} \ No newline at end of file diff --git a/LibMatrix/Responses/WhoAmIResponse.cs b/LibMatrix/Responses/WhoAmIResponse.cs new file mode 100644 index 0000000..db47152 --- /dev/null +++ b/LibMatrix/Responses/WhoAmIResponse.cs @@ -0,0 +1,14 @@ +using System.Text.Json.Serialization; + +namespace LibMatrix.Responses; + +public class WhoAmIResponse { + [JsonPropertyName("user_id")] + public required string UserId { get; set; } + + [JsonPropertyName("device_id")] + public string? DeviceId { get; set; } + + [JsonPropertyName("is_guest")] + public bool? IsGuest { get; set; } +} \ No newline at end of file -- cgit 1.5.1