Skip to main content

Module sender

Module sender 

Source

StructsΒ§

Selected πŸ”’
Output of one EDU selector. shipped rides the current transaction up to the shared budget; overflow past the budget is written as queued rows for later transactions to drain.
ToDeviceRecipient πŸ”’
The appservice-injected recipient fields of a queued to-device event (MSC4203), parsed to scope MSC3202 one-time-key counts to the addressed devices.

EnumsΒ§

RetryAction πŸ”’
TransactionStatus πŸ”’
In-flight bookkeeping for one Destination. Cross-attempt backoff lives in peer_status (federation only); appservice/push paths keep their own status because they are not server-keyed.

ConstantsΒ§

DEQUEUE_LIMIT πŸ”’
EDU_LIMIT
PDU_LIMIT
SELECT_PRESENCE_LIMIT πŸ”’
SELECT_RECEIPT_LIMIT πŸ”’

FunctionsΒ§

arm_wake πŸ”’

Type AliasesΒ§

CurTransactionStatus πŸ”’
Devices πŸ”’
The MSC3202-interesting devices of one transaction: the appservice sender’s plus matched PDU senders’ devices and the to-device recipients.
FallbackTypes πŸ”’
MSC3202 device_unused_fallback_key_types: algorithms with an unused fallback key, keyed by user then device.
OtkCounts πŸ”’
MSC3202 device_one_time_keys_count: unclaimed one-time-key counts per algorithm, keyed by user then device. Matches the ruma request field type.
RankedReceipts πŸ”’
Per-rank slice of receipt EDU output. Each entry becomes one Edu::Receipt buffer; rank 0 carries each user’s earliest receipt in the window, rank 1 the next, and so on. Most windows produce a single rank.
RoomReceipts πŸ”’
Per-room ranked receipts gathered for one federation EDU window. The common case is a single room, so inline-1 avoids a heap touch.
SendingError πŸ”’
SendingFuture πŸ”’
SendingFutures πŸ”’
SendingResult πŸ”’
UserReceipts πŸ”’
Per-(room, user) bucket of ReceiptData. MSC3771 allows one receipt per thread context per user per EDU window; the dominant case is still a single receipt, so inline-1 fits without a heap touch.
WakeQueue πŸ”’
Per-worker retry timer keyed by earliest-retry deadline (tokio time). Every recorded federation failure arms one entry; heap size is bounded by the concurrently-sad destinations plus transient re-arms.