package mattermost import ( "context" "log/slog" ) type Config struct { BaseURL string Token string } type Client struct { cfg Config logger *slog.Logger } type MessageInput struct { ChannelID string Text string } type TaskNotificationInput struct { TaskID string Title string Status string Message string } func NewClient(cfg Config, logger *slog.Logger) *Client { return &Client{cfg: cfg, logger: logger} } func (c *Client) SendMessage(ctx context.Context, input MessageInput) error { _ = ctx if c.logger != nil { c.logger.Info("mattermost send message skipped", "channel_id", input.ChannelID, "text", input.Text) } return nil } func (c *Client) SendTaskNotification(ctx context.Context, input TaskNotificationInput) error { _ = ctx if c.logger != nil { c.logger.Info( "mattermost task notification skipped", "task_id", input.TaskID, "title", input.Title, "status", input.Status, "message", input.Message, ) } return nil }