The ability to host client-side bots (bots running in a Deltachat client) would have advantages.
- easier to host and test bots
- harder to block bots (especially if they offered their own source code)
- harder to do traffic analysis (is the target talking to a human or a bot? is the target a bot?)
- easier to add experimental functionality to the client
The main disadvantage, bot downtime, could be mitigated where necessary by hash-based indexes of identical sibling bots, and people sending bot contacts to one another. At least one of the identical bots should be up almost all the time.
Security
Bots could be public, private (ignoring messages not from whitelisted contacts), or internal (interacting only with the accounts of their host client). Internal bots could implement functions (like link preview, backup, reading aloud, transcribing, etc.) if added to a chat.
Bots could be given permissions (access the internet through this proxy, write to this local directory, access microphone or speaker).
Examples
- A mailman bot could run a public mailing list.
- A vacation-response bot
- A screening bot could transfer a new contact made via a posted QR code to a new account with an unpublished key