set_welcome: bulk delete messages

This commit is contained in:
seth 2024-03-31 13:12:13 -04:00
parent a3014f2694
commit a2106caf22
No known key found for this signature in database
GPG key ID: D31BD0D494BBEE86

View file

@ -5,8 +5,8 @@ use crate::{api, utils, Context};
use eyre::{bail, Result}; use eyre::{bail, Result};
use log::trace; use log::trace;
use poise::serenity_prelude::{ use poise::serenity_prelude::{
futures::StreamExt, Attachment, CreateActionRow, CreateButton, CreateEmbed, CreateMessage, futures::TryStreamExt, Attachment, CreateActionRow, CreateButton, CreateEmbed, CreateMessage,
Mentionable, ReactionType, Mentionable, Message, ReactionType,
}; };
use serde::{Deserialize, Serialize}; use serde::{Deserialize, Serialize};
use url::Url; use url::Url;
@ -164,12 +164,8 @@ pub async fn set_welcome(
.collect(); .collect();
// clear previous messages // clear previous messages
let mut prev_messages = channel_id.messages_iter(ctx).boxed(); let prev_messages: Vec<Message> = channel_id.messages_iter(ctx).try_collect().await?;
while let Some(prev_message) = prev_messages.next().await { channel_id.delete_messages(ctx, prev_messages).await?;
if let Ok(message) = prev_message {
message.delete(ctx).await?;
}
}
// send our new ones // send our new ones
for embed in embed_messages { for embed in embed_messages {