Table of Contents

Class UserMailItem

Namespace
Tharga.Team
Assembly
Tharga.Team.dll

A mail as the outbox keeps it: what was queued and where it stands.

public sealed record UserMailItem : IEquatable<UserMailItem>
Inheritance
UserMailItem
Implements
Inherited Members

Properties

Attempts

How many times it has been claimed for sending.

public int Attempts { get; init; }

Property Value

int

BatchId

The batch whose content the mail carries, or null for a mail queued on its own.

public string BatchId { get; init; }

Property Value

string

BouncedAt

When the report that it bounced was read, in UTC; null unless it bounced.

public DateTime? BouncedAt { get; init; }

Property Value

DateTime?

ClaimedBy

Who holds it, while a sender does.

public string ClaimedBy { get; init; }

Property Value

string

ClaimedUntil

When the holder's lease runs out, in UTC.

public DateTime? ClaimedUntil { get; init; }

Property Value

DateTime?

CompletedAt

When it was sent, skipped or given up, in UTC.

public DateTime? CompletedAt { get; init; }

Property Value

DateTime?

Id

The mail's id.

public required string Id { get; init; }

Property Value

string

Mail

The mail as it was queued, after sanitizing; for a mail of a batch only its recipient, category and subject, the rest being the batch's.

public required UserMail Mail { get; init; }

Property Value

UserMail

MessageId

The Message-ID it was sent with.

public string MessageId { get; init; }

Property Value

string

NextAttemptAt

When it is next due, in UTC.

public DateTime NextAttemptAt { get; init; }

Property Value

DateTime

QueuedAt

When it was queued, in UTC.

public required DateTime QueuedAt { get; init; }

Property Value

DateTime

Reason

Why it was skipped, failed or bounced, or why the last attempt did not succeed.

public string Reason { get; init; }

Property Value

string

RecipientAddress

The address the mail was addressed to: the one it was queued with, or for a mail to a user the one on their record when it was sent; null until then.

public string RecipientAddress { get; init; }

Property Value

string

Refused

Whether this records a mail the queue refused rather than one it accepted; such a record is in the mail log and not in the user's own history.

public bool Refused { get; init; }

Property Value

bool

Status

Where it stands.

public required UserMailStatus Status { get; init; }

Property Value

UserMailStatus