Documentation ¶
Overview ¶
Package mail source https://github.com/jordan-wright/email
Index ¶
- Constants
- Variables
- func LoginAuth(username, password string) smtp.Auth
- func SendMail(config config.Config, subject, html string, fromAddress, fromName string, ...) error
- type Application
- func (r *Application) Attach(files []string) mail.Mail
- func (r *Application) Bcc(bcc []string) mail.Mail
- func (r *Application) Cc(cc []string) mail.Mail
- func (r *Application) Content(content mail.Content) mail.Mail
- func (r *Application) From(from mail.From) mail.Mail
- func (r *Application) Queue(queue ...mail.Queue) error
- func (r *Application) Send() error
- func (r *Application) To(to []string) mail.Mail
- type Attachment
- type Email
- func (e *Email) Attach(r io.Reader, filename string, c string) (a *Attachment, err error)
- func (e *Email) AttachFile(filename string) (a *Attachment, err error)
- func (e *Email) Bytes() ([]byte, error)
- func (e *Email) Send(addr string, a smtp.Auth) error
- func (e *Email) SendWithStartTLS(addr string, a smtp.Auth, t *tls.Config) error
- func (e *Email) SendWithTLS(addr string, a smtp.Auth, t *tls.Config) error
- type SendMailJob
- type ServiceProvider
Constants ¶
const Binding = "goravel.mail"
const (
MaxLineLength = 76 // MaxLineLength is the maximum line length per RFC 2045
)
Variables ¶
var ErrMissingBoundary = errors.New("No boundary found for multipart entity")
ErrMissingBoundary is returned when there is no boundary given for a multipart entity
var ErrMissingContentType = errors.New("No Content-Type found for MIME entity")
ErrMissingContentType is returned when there is no "Content-Type" header for a MIME entity
Functions ¶
Types ¶
type Application ¶
type Application struct {
// contains filtered or unexported fields
}
func NewApplication ¶ added in v1.8.0
func NewApplication(config config.Config, queue queuecontract.Queue) *Application
func (*Application) Content ¶ added in v1.8.0
func (r *Application) Content(content mail.Content) mail.Mail
func (*Application) Send ¶ added in v1.8.0
func (r *Application) Send() error
type Attachment ¶ added in v1.14.0
type Attachment struct { Filename string ContentType string Header textproto.MIMEHeader Content []byte HTMLRelated bool }
Attachment is a struct representing an email attachment. Based on the mime/multipart.FileHeader struct, Attachment contains the name, MIMEHeader, and content of the attachment in question
type Email ¶
type Email struct { ReplyTo []string From string To []string Bcc []string Cc []string Subject string Text []byte // Plaintext message (optional) HTML []byte // Html message (optional) Sender string // override From as SMTP envelope sender (optional) Headers textproto.MIMEHeader Attachments []*Attachment ReadReceipt []string }
Email is the type used for email messages
func NewEmailFromReader ¶ added in v1.14.0
NewEmailFromReader reads a stream of bytes from an io.Reader, r, and returns an email struct containing the parsed data. This function expects the data in RFC 5322 format.
func (*Email) Attach ¶
Attach is used to attach content from an io.Reader to the email. Required parameters include an io.Reader, the desired filename for the attachment, and the Content-Type The function will return the created Attachment for reference, as well as nil for the error, if successful.
func (*Email) AttachFile ¶ added in v1.14.0
func (e *Email) AttachFile(filename string) (a *Attachment, err error)
AttachFile is used to attach content to the email. It attempts to open the file referenced by filename and, if successful, creates an Attachment. This Attachment is then appended to the slice of Email.Attachments. The function will then return the Attachment for reference, as well as nil for the error, if successful.
func (*Email) Bytes ¶ added in v1.14.0
Bytes converts the Email object to a []byte representation, including all needed MIMEHeaders, boundaries, etc.
func (*Email) Send ¶
Send an email using the given host and SMTP auth (optional), returns any error thrown by smtp.SendMail This function merges the To, Cc, and Bcc fields and calls the smtp.SendMail function using the Email.Bytes() output as the message
func (*Email) SendWithStartTLS ¶ added in v1.14.0
SendWithStartTLS sends an email over TLS using STARTTLS with an optional TLS config.
The TLS Config is helpful if you need to connect to a host that is used an untrusted certificate.
type SendMailJob ¶
type SendMailJob struct {
// contains filtered or unexported fields
}
func NewSendMailJob ¶ added in v1.12.0
func NewSendMailJob(config config.Config) *SendMailJob
func (*SendMailJob) Handle ¶
func (r *SendMailJob) Handle(args ...any) error
Handle Execute the job.
func (*SendMailJob) Signature ¶
func (r *SendMailJob) Signature() string
Signature The name and signature of the job.
type ServiceProvider ¶
type ServiceProvider struct { }
func (*ServiceProvider) Boot ¶
func (route *ServiceProvider) Boot(app foundation.Application)
func (*ServiceProvider) Register ¶
func (route *ServiceProvider) Register(app foundation.Application)