]> nmode's Git Repositories - signal-cli/blobdiff - src/main/java/org/asamk/signal/commands/ListGroupsCommand.java
Show pending and requesting members of v2 groups
[signal-cli] / src / main / java / org / asamk / signal / commands / ListGroupsCommand.java
index 9e13685e8b2abe5e9311ae4b7d538081dca31f8a..d6297f9ddb7ce6749c32d66107dfc90aa8d446a4 100644 (file)
@@ -22,8 +22,21 @@ public class ListGroupsCommand implements LocalCommand {
                     .map(m::resolveSignalServiceAddress)
                     .map(SignalServiceAddress::getLegacyIdentifier)
                     .collect(Collectors.toSet());
-            System.out.println(String.format("Id: %s Name: %s  Active: %s Blocked: %b Members: %s",
-                    Base64.encodeBytes(group.groupId), group.getTitle(), group.isMember(m.getSelfAddress()), group.isBlocked(), members));
+
+            Set<String> pendingMembers = group.getPendingMembers()
+                    .stream()
+                    .map(m::resolveSignalServiceAddress)
+                    .map(SignalServiceAddress::getLegacyIdentifier)
+                    .collect(Collectors.toSet());
+
+            Set<String> requestingMembers = group.getRequestingMembers()
+                    .stream()
+                    .map(m::resolveSignalServiceAddress)
+                    .map(SignalServiceAddress::getLegacyIdentifier)
+                    .collect(Collectors.toSet());
+
+            System.out.println(String.format("Id: %s Name: %s  Active: %s Blocked: %b Members: %s Pending members: %s Requesting members: %s",
+                    Base64.encodeBytes(group.groupId), group.getTitle(), group.isMember(m.getSelfAddress()), group.isBlocked(), members, pendingMembers, requestingMembers));
         } else {
             System.out.println(String.format("Id: %s Name: %s  Active: %s Blocked: %b",
                     Base64.encodeBytes(group.groupId), group.getTitle(), group.isMember(m.getSelfAddress()), group.isBlocked()));