From 94da458afde2bc44b7dc5803f27b9cf0ff4b4658 Mon Sep 17 00:00:00 2001 From: Filip Strajnar Date: Fri, 15 Mar 2024 22:42:33 +0100 Subject: [PATCH] Added Methods to send and delete messages. --- DiscordClient/DiscordUserClient.cs | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/DiscordClient/DiscordUserClient.cs b/DiscordClient/DiscordUserClient.cs index 1be2c2b..34987ae 100644 --- a/DiscordClient/DiscordUserClient.cs +++ b/DiscordClient/DiscordUserClient.cs @@ -1,5 +1,6 @@ using System.Net.Http.Headers; using System.Net.Http.Json; +using System.Text.Json.Serialization; using DiscordClient.Data; namespace DiscordClient; @@ -26,4 +27,30 @@ public class DiscordUserClient HttpResponseMessage response = await _httpClient.GetAsync(url); return await response.Content.ReadFromJsonAsync(); } + + sealed class MessageContent + { + [JsonPropertyName("content")] + public string Content { get; set; } + } + + /// + /// This method does NOT work yet. + /// + /// + /// + /// + public async Task SendMessage(string channelId, string message) + { + throw new NotImplementedException(); + string url = $"https://discord.com/api/v9/channels/{channelId}/messages"; + HttpContent httpContent = JsonContent.Create(new MessageContent{Content = message}); + return await _httpClient.PostAsync(url, httpContent); + } + + public async Task DeleteMessage(string channelId, string messageId) + { + string url = $"https://discord.com/api/v9/channels/{channelId}/messages/{messageId}"; + return await _httpClient.DeleteAsync(url); + } }