github.com/sharovik/devbot@v1.0.1-0.20240308094637-4a0387c40516/internal/client/base_message_client.go (about) 1 package client 2 3 import ( 4 "github.com/sharovik/devbot/internal/dto" 5 ) 6 7 // BaseMessageClient the base messages client 8 type BaseMessageClient struct { 9 HTTPClient BaseHTTPClientInterface 10 } 11 12 // GetHTTPClient method for retrieving of the current http client 13 func (c BaseMessageClient) GetHTTPClient() BaseHTTPClientInterface { 14 return c.HTTPClient 15 } 16 17 // MessageClientInterface interface for message client 18 type MessageClientInterface interface { 19 GetHTTPClient() BaseHTTPClientInterface 20 21 //Methods for slackAPI endpoints 22 GetConversationsList() (dto.SlackResponseConversationsList, int, error) 23 GetUsersList() (dto.SlackResponseUsersList, int, error) 24 25 //SendMessage sends the message to selected channel 26 SendMessage(message dto.BaseChatMessage) (response dto.BaseResponseInterface, status int, err error) 27 28 //AttachFileTo send attachment 29 AttachFileTo(channel string, pathToFile string, filename string) ([]byte, int, error) 30 }