From 4c4cc5c0a52ebe6d678d428aac7c935bb19b6ae7 Mon Sep 17 00:00:00 2001 From: 5elenay <5elenay@protonmail.com> Date: Tue, 24 Aug 2021 14:16:42 +0300 Subject: [PATCH] added fetch member function. --- http.go | 1 - server.go | 37 +++++++++++++++++++++++++++++++++++++ 2 files changed, 37 insertions(+), 1 deletion(-) diff --git a/http.go b/http.go index c420f3b..25cd681 100644 --- a/http.go +++ b/http.go @@ -36,7 +36,6 @@ func (c Client) Request(method, path string, data []byte) ([]byte, error) { defer resp.Body.Close() body, err := ioutil.ReadAll(resp.Body) - fmt.Println(string(body)) if err != nil { return []byte{}, err diff --git a/server.go b/server.go index 3fc9ad2..464f582 100644 --- a/server.go +++ b/server.go @@ -41,6 +41,17 @@ type SystemMessages struct { UserBanned string `json:"user_banned,omitempty"` } +// Server member struct. +type Member struct { + Informations struct { + ServerId string `json:"server"` + UserId string `json:"user"` + } `json:"_id"` + Nickname string `json:"nickname"` + Avatar *Attachment `json:"avatar"` + Roles []string `json:"roles"` +} + // Calculate creation date and edit the struct. func (s *Server) CalculateCreationDate() error { ulid, err := ulid.Parse(s.Id) @@ -122,3 +133,29 @@ func (s Server) CreateVoiceChannel(name, description string) (*Channel, error) { return channel, nil } + +// Fetch a member from Server. +func (s Server) FetchMember(id string) (*Member, error) { + member := &Member{} + + data, err := s.Client.Request("GET", "/servers/"+s.Id+"/members/"+id, []byte{}) + + if err != nil { + return member, err + } + + err = json.Unmarshal(data, member) + + if err != nil { + return member, err + } + + return member, nil +} + +// // Fetch all server invites. +// func (s Server) FetchInvites() { +// data, _ := s.Client.Request("GET", "/servers/"+s.Id+"/invites", []byte{}) + +// fmt.Println("\n\n" + string(data) + "\n\n") +// }