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  }