From a566209a36b0840d6225f2abb41150d5cefad2b9 Mon Sep 17 00:00:00 2001 From: June Date: Mon, 18 Aug 2025 18:17:24 +0200 Subject: [PATCH] show room id for each room in output and list given aliases separately --- main.go | 28 ++++++++++++++++++++++------ 1 file changed, 22 insertions(+), 6 deletions(-) diff --git a/main.go b/main.go index 1aaaa4b..e775f2c 100644 --- a/main.go +++ b/main.go @@ -73,7 +73,8 @@ func main() { fclient.WithTimeout(config.HomeserverVersionInfoTimeout), ) - givenRoomsByRoomID := make(map[id.RoomID]string) + roomIDSet := make(map[id.RoomID]bool) + aliasSetByRoomID := make(map[id.RoomID](map[string]bool)) for _, room := range config.Rooms { // Check, if given room is an alias and try to resolve it into a room id. if strings.HasPrefix(room, "#") { @@ -81,14 +82,22 @@ func main() { if err != nil { log.Fatal(err) } - givenRoomsByRoomID[resolvedAlias.RoomID] = room + + roomIDSet[resolvedAlias.RoomID] = true + + aliasSet, ok := aliasSetByRoomID[resolvedAlias.RoomID] + if !ok { + aliasSet = make(map[string]bool) + aliasSetByRoomID[resolvedAlias.RoomID] = aliasSet + } + aliasSet[room] = true } else { - givenRoomsByRoomID[id.RoomID(room)] = room + roomIDSet[id.RoomID(room)] = true } } - roomIDs := make([]id.RoomID, 0, len(givenRoomsByRoomID)) - for roomID := range givenRoomsByRoomID { + roomIDs := make([]id.RoomID, 0, len(roomIDSet)) + for roomID := range roomIDSet { roomIDs = append(roomIDs, roomID) } @@ -96,7 +105,14 @@ func main() { for roomID, roomInfo := range roomInfoTree { fmt.Println("Room:") - fmt.Printf(" %s -> %d\n", givenRoomsByRoomID[roomID], roomInfo.MemberCount) + fmt.Printf(" %s -> %d\n", roomID, roomInfo.MemberCount) + aliasSet, ok := aliasSetByRoomID[roomID] + if ok { + fmt.Println("Given Aliases:") + for alias := range aliasSet { + fmt.Printf(" %s\n", alias) + } + } fmt.Println("Version Support:")