Documentation ¶
Overview ¶
Package worker contains the functionality for the background worker process. It starts a background service that polls every minute for scheduled campaigns to be launched. If a campaign is found, it gathers the maillogs associated with the campaign and sends them to the mailer package to be processed.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func WithMailer ¶
func WithMailer(m mailer.Mailer) func(*DefaultWorker) error
WithMailer sets the mailer for a given worker. By default, workers use a standard, default mailworker.
Types ¶
type DefaultWorker ¶
type DefaultWorker struct {
// contains filtered or unexported fields
}
DefaultWorker is the background worker that handles watching for new campaigns and sending emails appropriately.
func (*DefaultWorker) LaunchCampaign ¶
func (w *DefaultWorker) LaunchCampaign(c models.Campaign)
LaunchCampaign starts a campaign
func (*DefaultWorker) SendTestEmail ¶
func (w *DefaultWorker) SendTestEmail(s *models.EmailRequest) error
SendTestEmail sends a test email
func (*DefaultWorker) Start ¶
func (w *DefaultWorker) Start()
Start launches the worker to poll the database every minute for any pending maillogs that need to be processed.