38 lines
703 B
Go
38 lines
703 B
Go
package client
|
|
|
|
import (
|
|
"context"
|
|
"fmt"
|
|
"net/http"
|
|
"strings"
|
|
)
|
|
|
|
type Client struct {
|
|
clientName string
|
|
clientSecret string
|
|
}
|
|
|
|
func NewClient(clientName, clientSecret string) *Client {
|
|
return &Client{
|
|
clientSecret: clientSecret,
|
|
}
|
|
}
|
|
|
|
func (c *Client) SendMessage(ctx *context.Context, msg string) error {
|
|
req, err := http.NewRequestWithContext(
|
|
*ctx,
|
|
http.MethodGet,
|
|
"https://discordbot.lumisnap.im/send-message",
|
|
strings.NewReader(`{"content":"`+msg+`"}`),
|
|
)
|
|
|
|
if err != nil {
|
|
return fmt.Errorf("creating notify request: %w", err)
|
|
}
|
|
req.Header.Set("ClientName", c.clientName)
|
|
req.Header.Set("ClientSecret", c.clientSecret)
|
|
|
|
_, err = http.DefaultClient.Do(req)
|
|
return err
|
|
}
|