Documentation ¶
Overview ¶
Package mailer acts a central mail server for the application.
It implements various types of communication with actual mail servers (sendmail, smtp, sendgrid API) and a simple queue mechanism to avoid spamming these servers.
Index ¶
Constants ¶
View Source
const (
// MaxSendRetries defines number of retries in case of connection failure.
MaxSendRetries = 5
)
Variables ¶
This section is empty.
Functions ¶
func NewGomailMessage ¶
NewGomailMessage prepares a new Message to be sent.
Types ¶
type BoltQueue ¶
type BoltQueue struct { // For Testing purpose : delete file after closing DeleteOnClose bool // Path to the DB file DbPath string // contains filtered or unexported fields }
BoltQueue defines a queue for the mails backed by a Bolt DB.
func NewBoltQueue ¶
NewBoltQueue creates a Bolt DB if necessary.
func (*BoltQueue) Close ¶
Close closes the DB and delete corresponding file if deleteOnClose flag as been set on creation.
type NoOpSender ¶
type NoOpSender struct {
// contains filtered or unexported fields
}
type Queue ¶
type SendGrid ¶
type SendGrid struct {
ApiKey string
}
SendGrid is a passerelle to Sendgrid API. It holds the application API Key.
type Sender ¶
Source Files ¶
Directories ¶
Path | Synopsis |
---|---|
Package grpc provides the actual logic for posting emails to queue or to mail servers
|
Package grpc provides the actual logic for posting emails to queue or to mail servers |
Package lang provides i18n strings for mailer-related data.
|
Package lang provides i18n strings for mailer-related data. |
Package rest exposes a simple API for posting emails
|
Package rest exposes a simple API for posting emails |
Package templates defines ready-to-use templates to send email in a nice formatting.
|
Package templates defines ready-to-use templates to send email in a nice formatting. |
Click to show internal directories.
Click to hide internal directories.