From ab7c928a0a235dda7563a5e6236be699418e8c28 Mon Sep 17 00:00:00 2001 From: darius Date: Fri, 3 May 2024 21:00:32 +0200 Subject: [PATCH] fixed delete --- delete.go | 8 ++++---- handlers.go | 36 +++++++++++++++++++++++++++--------- 2 files changed, 31 insertions(+), 13 deletions(-) diff --git a/delete.go b/delete.go index 7916643..ca1ffbe 100644 --- a/delete.go +++ b/delete.go @@ -17,14 +17,12 @@ func deleteMessages(data discordgo.ApplicationCommandInteractionData, s *discord err = s.InteractionRespond( i.Interaction, &discordgo.InteractionResponse{ - Type: discordgo.InteractionResponseChannelMessageWithSource, + Type: discordgo.InteractionResponseDeferredChannelMessageWithSource, Data: &discordgo.InteractionResponseData{ - TTS: true, Content: "deleting " + strconv.Itoa(len(messages)) + " messages", }, }, ) - message, err := s.ChannelMessageSend(i.ChannelID, "Please hold....") if err != nil { // Handle the error } @@ -38,5 +36,7 @@ func deleteMessages(data discordgo.ApplicationCommandInteractionData, s *discord } } } - s.ChannelMessageEdit(i.ChannelID, message.ID, strconv.Itoa(len(messages))+" Message deleted") + s.FollowupMessageCreate(i.Interaction, true, &discordgo.WebhookParams{ + Content: strconv.Itoa(len(messages)) + " Message deleted", + }) } diff --git a/handlers.go b/handlers.go index 3766fc8..e9a3770 100644 --- a/handlers.go +++ b/handlers.go @@ -1,6 +1,7 @@ package main import ( + "fmt" "github.com/bwmarrin/discordgo" ) @@ -9,11 +10,32 @@ func MessageHandler(s *discordgo.Session, m *discordgo.MessageCreate) { if m.Author.ID == s.State.User.ID { return } - if m.Content == "test" { - s.ChannelMessageSend(m.ChannelID, "servers:") - for _, server := range ServerList { - s.ChannelMessageSend(m.ChannelID, "\n"+server.Name) + switch m.Content { + case "test": + var serverListString string + for i, server := range ServerList { + serverListString = serverListString + fmt.Sprintf("\n %d) ", i+1) + server.Name } + s.ChannelMessageSendEmbed(m.ChannelID, &discordgo.MessageEmbed{ + Title: "Servers", + Fields: []*discordgo.MessageEmbedField{ + { + Value: serverListString, + }, + }, + Type: discordgo.EmbedTypeArticle, + }) + + case "!test": + s.ChannelMessageSendEmbed(m.ChannelID, &discordgo.MessageEmbed{ + Title: "Servers", + Fields: []*discordgo.MessageEmbedField{ + { + Value: "test", + }, + }, + Type: discordgo.EmbedTypeArticle, + }) } } @@ -27,10 +49,7 @@ func CommandHandler(s *discordgo.Session, i *discordgo.InteractionCreate) { i.Interaction, &discordgo.InteractionResponse{ Type: discordgo.InteractionResponseChannelMessageWithSource, - Data: &discordgo.InteractionResponseData{ - TTS: true, - Content: "Hello world!", - }, + Data: &discordgo.InteractionResponseData{}, }, ) if err != nil { @@ -42,7 +61,6 @@ func CommandHandler(s *discordgo.Session, i *discordgo.InteractionCreate) { &discordgo.InteractionResponse{ Type: discordgo.InteractionResponseChannelMessageWithSource, Data: &discordgo.InteractionResponseData{ - TTS: true, Content: data.Options[0].Value.(string), }, },