From d91c17bf03b760143d2adb4e1e9992f88fbc230d Mon Sep 17 00:00:00 2001 From: akaJuliaan Date: Thu, 28 Mar 2024 17:47:36 +0100 Subject: [PATCH 1/2] add embed parameter webhooks --- src/Discord.Net.Webhook/DiscordWebhookClient.cs | 4 ++-- src/Discord.Net.Webhook/WebhookClientHelper.cs | 7 ++++++- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/src/Discord.Net.Webhook/DiscordWebhookClient.cs b/src/Discord.Net.Webhook/DiscordWebhookClient.cs index 44beb64f5d..4a18a9d2c6 100644 --- a/src/Discord.Net.Webhook/DiscordWebhookClient.cs +++ b/src/Discord.Net.Webhook/DiscordWebhookClient.cs @@ -115,8 +115,8 @@ private static API.DiscordRestApiClient CreateApiClient(DiscordRestConfig config public Task SendMessageAsync(string text = null, bool isTTS = false, IEnumerable embeds = null, string username = null, string avatarUrl = null, RequestOptions options = null, AllowedMentions allowedMentions = null, MessageComponent components = null, MessageFlags flags = MessageFlags.None, ulong? threadId = null, string threadName = null, - ulong[] appliedTags = null) - => WebhookClientHelper.SendMessageAsync(this, text, isTTS, embeds, username, avatarUrl, allowedMentions, options, components, flags, threadId, threadName, appliedTags); + ulong[] appliedTags = null, Embed embed = null) + => WebhookClientHelper.SendMessageAsync(this, text, isTTS, embeds, username, avatarUrl, allowedMentions, options, components, flags, threadId, threadName, appliedTags, embed); /// /// Modifies a message posted using this webhook. diff --git a/src/Discord.Net.Webhook/WebhookClientHelper.cs b/src/Discord.Net.Webhook/WebhookClientHelper.cs index ea04987d09..56f6b08811 100644 --- a/src/Discord.Net.Webhook/WebhookClientHelper.cs +++ b/src/Discord.Net.Webhook/WebhookClientHelper.cs @@ -26,8 +26,13 @@ public static async Task GetWebhookAsync(DiscordWebhookClie public static async Task SendMessageAsync(DiscordWebhookClient client, string text, bool isTTS, IEnumerable embeds, string username, string avatarUrl, AllowedMentions allowedMentions, RequestOptions options, MessageComponent components, - MessageFlags flags, ulong? threadId = null, string threadName = null, ulong[] appliedTags = null) + MessageFlags flags, ulong? threadId = null, string threadName = null, ulong[] appliedTags = null, + Embed embed = null) { + embeds ??= Array.Empty(); + if (embed != null) + embeds = new[] { embed }.Concat(embeds).ToArray(); + var args = new CreateWebhookMessageParams { Content = text, From 5decd55fc752f53117d12946c9abda7ee93c7b26 Mon Sep 17 00:00:00 2001 From: akaJuliaan Date: Thu, 28 Mar 2024 17:47:50 +0100 Subject: [PATCH 2/2] update webhook sample --- samples/WebhookClient/Program.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/samples/WebhookClient/Program.cs b/samples/WebhookClient/Program.cs index a547a2a1ef..6abb346085 100644 --- a/samples/WebhookClient/Program.cs +++ b/samples/WebhookClient/Program.cs @@ -24,6 +24,6 @@ public static async Task Main() // Webhooks are able to send multiple embeds per message // As such, your embeds must be passed as a collection. - await client.SendMessageAsync(text: "Send a message to this webhook!", embeds: new[] { embed.Build() }); + await client.SendMessageAsync(text: "Send a message to this webhook!", embed: embed.Build() ); } }