diff --git a/src/client/client.go b/src/client/client.go index edb17e5..296265c 100644 --- a/src/client/client.go +++ b/src/client/client.go @@ -75,6 +75,7 @@ type GroupEntry struct { PendingInvites []string `json:"pending_invites"` PendingRequests []string `json:"pending_requests"` InviteLink string `json:"invite_link"` + Admins []string `json:"admins"` } type IdentityEntry struct { @@ -90,6 +91,11 @@ type SignalCliGroupMember struct { Uuid string `json:"uuid"` } +type SignalCliGroupAdmin struct { + Number string `json:"number"` + Uuid string `json:"uuid"` +} + type SignalCliGroupEntry struct { Name string `json:"name"` Id string `json:"id"` @@ -99,6 +105,7 @@ type SignalCliGroupEntry struct { PendingMembers []SignalCliGroupMember `json:"pendingMembers"` RequestingMembers []SignalCliGroupMember `json:"requestingMembers"` GroupInviteLink string `json:"groupInviteLink"` + Admins []SignalCliGroupAdmin `json:"admins"` } type SignalCliIdentityEntry struct { @@ -865,6 +872,12 @@ func (s *SignalClient) GetGroups(number string) ([]GroupEntry, error) { } groupEntry.PendingInvites = requestingMembers + admins := []string{} + for _, val := range signalCliGroupEntry.Admins { + admins = append(admins, val.Number) + } + groupEntry.Admins = admins + groupEntry.InviteLink = signalCliGroupEntry.GroupInviteLink groupEntries = append(groupEntries, groupEntry)