Class OutgoingEmailRequest
- Namespace
- MailFathom.Domain.Delivery
- Assembly
- MailFathom.Domain.dll
States one send somebody authored, in the form it is written down before any SMTP command is issued.
public sealed record OutgoingEmailRequest : IEquatable<OutgoingEmailRequest>
- Inheritance
-
OutgoingEmailRequest
- Implements
- Inherited Members
Remarks
A new message, a reply, and a forward are one request shape rather than three. Each needs the same answers — which account sends, who it goes to, and what asked — and the difference between them is entirely in the MIME, which this type does not carry and never sees.
The sending account is named and the sending address is not. A message is sent as the account that sends it and its
From address is derived from that account's own configuration, so there is nothing here an input path could
set to send as somebody else.
Every recipient appears once. An envelope offers one address one time, so the same mailbox written in two headers is
one RCPT TO and would otherwise be a second copy in that person's mailbox — which is refused where the request
is built rather than deduplicated silently, because a caller naming one person twice has described something they
did not mean.
Fields
- MaximumRecipientCount
The greatest number of people one message may be addressed to.
Properties
- AccountId
Gets the account the message is submitted through and sent as.
- DueAt
Gets the time the author asked the message to leave at, or null when they asked for it to leave at once.
- Recipients
Gets the people the message is offered to, each named once.
- Requester
Gets the authored act that asked, which is what makes the same request twice one delivery.
Methods
- Create(MailAccountId, OutgoingEmailRequester, IReadOnlyList<OutgoingRecipient>, ZonedInstant?)
Asks for one message to be submitted through an account and delivered to the recipients it names.
- HeldUntil(ZonedInstant)
States the same send, held until the time the author named.