尝试使用 JDA 遍历不和谐频道中的所有消息
Trying to iterate through all messages in a discord channel with JDA
我想遍历 JDA 中一个通道中的所有消息,但我不确定该怎么做。我试图获得 iterableHistory 但我认为它没有给我任何有用的东西。我试过浏览文档,但找不到任何有用的东西。如果可能的话,我正在尝试获取列表或数组列表,以便可以将每条消息添加到文件中。
net.dv8tion.jda.api.entities.MessageChannel.getHistory()
net.dv8tion.jda.api.entities.MessageHistory.getRetrievedHistory()
MessageChannel channel;
// ...
// Initialize 'channel'
// ...
MessageHistory history = channel.getHistory();
final List<Message> retrievedHistory = new ArrayList<>(history.getRetrievedHistory());
Collections.reverse(retrievedHistory);
// oldest to newest
for (Message message : retrievedHistory) {
// TODO use 'message'
}
List<Message> messageListRaw = (currentChannel.getHistoryFromBeginning(100).complete().getRetrievedHistory());
ArrayList<Message> messageList = new ArrayList<Message>(messageListRaw);
Collections.reverse(messageList);
for (Message message : messageList){
//Use for 'message'
}
我想遍历 JDA 中一个通道中的所有消息,但我不确定该怎么做。我试图获得 iterableHistory 但我认为它没有给我任何有用的东西。我试过浏览文档,但找不到任何有用的东西。如果可能的话,我正在尝试获取列表或数组列表,以便可以将每条消息添加到文件中。
net.dv8tion.jda.api.entities.MessageChannel.getHistory()
net.dv8tion.jda.api.entities.MessageHistory.getRetrievedHistory()
MessageChannel channel;
// ...
// Initialize 'channel'
// ...
MessageHistory history = channel.getHistory();
final List<Message> retrievedHistory = new ArrayList<>(history.getRetrievedHistory());
Collections.reverse(retrievedHistory);
// oldest to newest
for (Message message : retrievedHistory) {
// TODO use 'message'
}
List<Message> messageListRaw = (currentChannel.getHistoryFromBeginning(100).complete().getRetrievedHistory());
ArrayList<Message> messageList = new ArrayList<Message>(messageListRaw);
Collections.reverse(messageList);
for (Message message : messageList){
//Use for 'message'
}