package email_message
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=3aa5c85da8530c277cf9e72e18861b235b3b872f08c87f118c04478433320ebb
doc/email_message.kernel/Email_message_kernel/Simple/index.html
Module Email_message_kernel.Simple
Source
val create :
from:Email_address.t ->
to_:Email_address.t list ->
?cc:Email_address.t list ->
?reply_to:Email_address.t ->
subject:string ->
id:string ->
?in_reply_to:string ->
date_string:string ->
?auto_generated:unit ->
?extra_headers:(Headers.Name.t * Headers.Value.t) list ->
?attachments:(attachment_name * Content.t) list ->
Content.t ->
t
extract_body ?content_type t
returns the body associated with the email part that matches the content_type
mimetype, or none if t
does not contain a body or part of type content_type
.
val extract_body_ext' :
accept:
((Mimetype.t * (string * string option) list) option -> 'format option) ->
t ->
('format * string) Core.Sequence.t
extract_body_ext
and extract_body_ext'
Attempt to find the message body in the preferred format.
accept
is used to select only content parts in a format that is supported. If a multipart component is accepted by accept
, we do NOT recursively extract the body. We do so otherwise.
order
will be used to select the least part (by default the first part)
val extract_body_ext :
accept:
((Mimetype.t * (string * string option) list) option -> 'format option) ->
?order:('format -> 'format -> int) ->
t ->
('format * string) option
Related parts are those that are included in a multi-part message with a "Content-ID" header. This content can be referenced by adding the "cid:" prefix and stripping the enclosing '<' and '>'.
For example (from https://tools.ietf.org/html/rfc2392):
From: foo1@bar.net To: foo2@bar.net Subject: A simple example Mime-Version: 1.0 Content-Type: multipart/related; boundary="boundary-example-1"; type=Text/HTML --boundary-example 1 Content-Type: Text/HTML; charset=US-ASCII to the other body part, for example through a statement such as: <IMG SRC="cid:foo4*foo1@bar.net" ALT="IETF logo"> --boundary-example-1 Content-ID: <foo4*foo1@bar.net> Content-Type: IMAGE/GIF Content-Transfer-Encoding: BASE64 R0lGODlhGAGgAPEAAP/////ZRaCgoAAAACH+PUNvcHlyaWdodCAoQykgMTk5 NSBJRVRGLiBVbmF1dGhvcml6ZWQgZHVwbGljYXRpb24gcHJvaGliaXRlZC4A etc... --boundary-example-1--
Calling all_related_parts
on this email would return a list of length one where the attachment_name
is "foo4*foo1@bar.net" for the single entry.
Related parts are often used for inline images.