getConversationStats method
Gets statistics about active conversations.
Implementation
Future<ConversationStats> getConversationStats() async {
final allKeys = await storage.getAllKeys();
int active = 0;
int expired = 0;
int waiting = 0;
for (final key in allKeys) {
final state = await storage.get(key);
if (state != null) {
if (_isConversationExpired(state)) {
expired++;
} else if (state.isActive) {
active++;
if (_waitingConversations.containsKey(key)) {
waiting++;
}
}
}
}
return ConversationStats(
totalConversations: allKeys.length,
activeConversations: active,
expiredConversations: expired,
waitingConversations: waiting,
);
}