28 lines
1.3 KiB
Markdown
28 lines
1.3 KiB
Markdown
## UI
|
|
* [x] List `mailboxes` all in the `Email Provider`, identifying those *registered* locally.
|
|
* [x] Select which to *register* or unregister for watching.
|
|
* [x] List *registered* `mailboxes`.
|
|
* [x] List `messages` for selected `mailbox`.
|
|
* [x] Schedule `attachments` downloads.
|
|
* [ ] Download `attachments` (*encrypted* & *decrypted*).
|
|
|
|
## CLI
|
|
* [x] Get `mailboxes` from **[API]** then run `grab messages` job in **[API]** for each one.
|
|
* [x] Get `pending attachments` jobs from **[API]** and run.
|
|
|
|
## API
|
|
* [x] Grab all `mailboxes` from `Email Provider`, identifying those that are registered.
|
|
* [x] Register `mailboxes` into **[database]** and grab latest `messages`.
|
|
* [x] Grab new `messages` from `Email Provider` for selected `mailboxes` and store them in the `database`.
|
|
* [x] Grab `messages` from **[database]** for selected `mailboxes`.
|
|
* [x] Grab `attachments` from `Email Provider` for selected `messages`.
|
|
* [x] Register `messages` for `attachment` job.
|
|
* [x] Decrypt `attachments`.
|
|
|
|
|
|
## Workflow
|
|
* **[User]** Choose `mailboxes` to register or unregister
|
|
-> **[API]** Register selected `mailboxes` and get `messages` for recently registered.
|
|
* **[Cron]** Get registered `mailboxes` -> **[API]** Get `messages`
|
|
* **[User]** Check messages found -> **[API]** Schedule `attachments`
|
|
* **[Cron]** Get `attachment download` jobs -> **[API]** grab `attachments` |