Expand description
New mail told as a notification, at the times it may come (docs/porch.md,
“Notifications”; the rules are sioul_core::mailnote). After each fetch
(arrived), the inbox’s arrivals are judged as the Porch judges them and
gathered for ten seconds (a minute at most), every account together:
then one quiet notification for the batch. What may not come now waits,
and comes in one notification when a time begins in which it may
(tick, each minute): “The Porch opens: …”.
Only the device you used last tells (the “notices” lease, as for the sites’ gathered notification): your phone and your computer fetch the same mail, and the sharing does not carry what each one told. The other marks it told without a word.
Without the window too: on a phone, a service of its own fetches the
inboxes in another process, without Qt, and calls arrived and tick
here (docs/android.md); the ledger is written under a lock, and a letter
is claimed before it is told, so that two processes never tell it twice.
Structs§
- Batch 🔒
- The letters waiting for their batch to close, in this process.
- Seen 🔒
- What decides now whether a message is told: the matrix of what reaches
you (
attention), the moment as it reads it (the time, a slot of time for you, do-not-disturb, Free time’s “Nothing at all”, the Porch resting after a pause), the Always through list, and whether new mail is told at all. - Window 🔒
- Sioul’s window, when it runs in this process: you at it (for the lease) and “Open” on a computer’s notification.
Constants§
- AT_MOST 🔒
- A batch waits this long at most for others to join it.
- GATHERED 🔒
- Arrivals this close make one batch: the accounts fetched as Sioul starts.
Statics§
Functions§
- add_
to_ 🔒batch - Letters added to this process’s batch (
opens: they waited for their time), told ten seconds after the last added, a minute at most after the first. - arrived 🔒
- After a fetch of an account (
new: its inbox’s arrivals; nothing on its first fetch, which brings two weeks of mail): from a process without the window (a phone’s service). - arrived_
from 🔒 - arrived_
in_ 🔒window - The same, from the window’s watchers.
- claim 🔒
- The letters still waiting in the ledger, marked told by this process
(the others are another’s to tell, or told);
gonemarked told too. - close_
batch 🔒 - Waits for the batch to close (ten seconds without another arrival, a minute at most), then tells it.
- close_
now 🔒 - Every account fetched at once, in a process without the window (a phone’s
background step,
steps::fetch_mail): every arrival is known, so the batch is told now, in one notification, not ten seconds on, which kept the phone awake for nothing. The thread waiting for it finds it empty, and ends. - ours 🔒
- Whether this device tells: the one you used last (the “notices” lease, renewed by the window; only read without it). Sharing off: this one.
- show 🔒
- The notification: the desktop’s, with “Open” (the Porch) where it takes
buttons, at critical urgency when someone Always through is in it
(
through: it passes the desktop’s do-not-disturb); on a phone, Android’s, in the quiet “New mail” channel, a tap opening the Porch. - tell_
batch 🔒 - A batch told, its letters claimed first: those still waiting (told by
nobody else meanwhile). Nothing may be told now (a pause pressed in the
meantime): they keep waiting for their time. Some waited for it
(
opens): “The Porch opens: …”, for them all. - tick 🔒
- Each minute: when the moment changed (a time began, waking, a pause or a do-not-disturb over, Sioul starting), the mail that waited and may come now, told in one notification. From a process without the window.
- tick_
from 🔒 - tick_
in_ 🔒window - The same, from the window’s minute: off its thread.
- told 🔒
filesjudged and told by the rules of what reaches you;hold: what a mail filter would move out of the inbox or mark read held back, for this device’s filters to act on first (unfilteredtells it if they cannot).- unfiltered 🔒
- What your mail filters could not act on (a folder missing, the server
refusing), once this device’s filters ran: told as any new mail is, by the
same rules, the arrivals having been held back for them
(
filters::untold). Told once only: the ledger knows what was. - unfiltered_
in_ 🔒window - The same, from the window’s watchers.