package letters

  1. Overview
  2. Docs
Module type
Class type
module Config : sig ... end

Configuration providing needed information to connect to the SMTP server.

type body =
  1. | Plain of string
  2. | Html of string
  3. | Mixed of string * string * string option
type recipient =
  1. | To of string
  2. | Cc of string
  3. | Bcc of string
val build_email : from:string -> recipients:recipient list -> subject:string -> body:body -> (Mrmime.Mt.t, string) Stdlib.result

Build an email using mrmime

This function is a helper function to simplify process of building an email with `mrmime`. It will return result type and wraps all exceptions into Error

from string representation of the email proved as a `from` field, this can be a different email address than the config.sender.

recipients list of email recipients

subject the single line string used as the email `subject` field

body string representation of the actual email message that can be either plain text or HTML message

Returns result indicating if built email is valid or Error if anything failed

val send : config:Config.t -> sender:string -> recipients:recipient list -> message:Mrmime.Mt.t -> unit Lwt.t

Send the previously generated email

This function expects valid configuration, list of recipients and finally a valid `mrmime` representation of the email message.

config valid configuration to connect the SMTP server.

recipients list of valid email addresses.

message valid `mrmime` representation of the email message.

Runs asynchronously using Lwt and retuns unit when the message is sent successfully. If anything fails during the process, throws an exception.


Innovation. Community. Security.