Function delete_msgs_in_channel

Source
async fn delete_msgs_in_channel<F: Fn(&Message, usize, usize) -> bool>(
    ctx: &Context,
    ch: ChannelId,
    filter: F,
) -> Result<(usize, usize)>
Expand description

チャネル内の全メッセージを取得し、フィルタ関数が true を返したものを すべて削除する。

Bulk delete 機能で一気に複数を消せるが、2週間以上前のメッセージが 含まれていると BAD REQUEST になる等扱いが難しいので rate limit は 気になるが1つずつ消す。

  • ctx - HTTP コンテキスト。
  • ch - Channel ID。
  • filter - (メッセージ, 番号, 総数) から消すならば true を返す関数。

(消した数, 総メッセージ数) を返す。