Синхронизация по новому [P2P sync for multi-device instead of chatmail buffering]

Начиная с версии 2.50+, опция «Удалять сообщения с сервера» была удалена, а эта задача полностью переложена на сторону сервера. Хотя это отлично работает для Chatmail, это создает серьезные проблемы для пользователей классических почтовых провайдеров. В сценарии с несколькими устройствами (multi-device) классические почтовые ящики быстро забиваются копиями сообщений, отправленных самому себе и собеседникам, из-за чего у пользователей заканчивается квота на почте. При этом включение режима «одного устройства» (который принудительно удаляет письма с сервера сразу после скачивания) не является выходом, так как нам необходима синхронизация чатов между несколькими устройствами (например, ПК и телефоном).Какое решение предлагается?
Я хочу предложить альтернативное архитектурное решение, которое вернет экономию места на сервере, но не сломает синхронизацию нескольких устройств на классической почте. Вместо того чтобы полагаться на IMAP-сервер для бесконечного хранения сообщений ради всех устройств, Delta Chat мог бы реализовать механизм опроса и синхронизации «клиент-клиент» прямо поверх классической почтовой инфраструктуры: Немедленное удаление: Когда любой запущенный клиент (например, мобильный телефон) скачивает новое сообщение, он может безопасно удалить его с почтового сервера, чтобы ящик оставался чистым. Прямая синхронизация клиентов: Когда запускается другой клиент (например, ПК), вместо поиска старых недостающих сообщений на IMAP-сервере, он отправляет специальное электронное письмо-запрос синхронизации напрямую на другие активные клиенты пользователя.P2P-передача данных: Активный клиент (телефон) отвечает, отправляя недостающую историю чата, упакованную внутри временного служебного письма. Очистка: Как только вновь открытый клиент (ПК) обрабатывает это письмо синхронизации и восстанавливает историю сообщений у себя локально, он тут же удаляет это временное служебное письмо с сервера.
Какие альтернативы рассматривались? Использование Chatmail — не подходит для пользователей, которые хотят или вынуждены использовать свою существующую доверенную классическую почтовую инфраструктуру. Исчезающие сообщения — хотя они со временем удаляют письма с сервера, они также стирают их и из локальной истории на устройстве, что не подходит пользователям, которые хотят просто сэкономить квоту на сервере, но сохранить переписку на телефонах и ПК.
Дополнительный контекст: Этот подход будет полностью соответствовать Peer-to-Peer (P2P) парадигме Delta Chat. Он радикально снизит нагрузку на серверы и решит проблему переполнения ящиков для всех, кто использует традиционных почтовых провайдеров, не заставляя их отказываться от синхронизации между устройствами.

Is your feature request related to a problem? Please describe.

Since version 2.50+, the “Delete Messages from Server” option has been removed, shifting this responsibility entirely to the server side. While this works seamlessly for Chatmail, it causes severe issues for users on “classic email” providers.
In a multi-device setup, classic email inboxes quickly get flooded with copies of messages sent to oneself and chat partners, causing users to run out of mail quota. However, turning on the “single device” mode to force immediate server deletion is not a viable option because we need our chats synced across multiple devices (e.g., Desktop and Mobile).

Describe the solution you’d like

I would like to propose an architectural alternative that brings back server space-saving without breaking multi-device synchronization on classic email relays.
Instead of relying on the IMAP server to keep messages indefinitely for all devices, Delta Chat could implement a Client-to-Client polling/sync mechanism over the classic email infrastructure:

  1. Immediate Deletion: When any running client (e.g., Mobile) downloads a new message, it can safely delete it from the mail server to keep the inbox clean.
  2. Direct Client Sync: When another client (e.g., Desktop) starts up, instead of looking for old missing messages on the IMAP server, it sends a special peer-to-peer synchronization request email directly to the user’s other active clients.
  3. P2P Payload Transfer: The active client responds by sending the missing chat history bundled inside a temporary sync email.
  4. Cleanup: Once the newly opened client processes this sync email and restores the message history locally, it deletes this temporary sync email from the server immediately.

Describe alternatives you’ve considered

  1. Using Chatmail — not ideal for users who want or need to stick strictly to their existing trusted classic email infrastructure.
  2. Disappearing messages — while it deletes emails from the server eventually, it also deletes them from the local device history, which is not what users want when they just want to save server quota.

Additional context

This approach would respect the Peer-to-Peer paradigm of Delta Chat and drastically reduce server load/quota issues for everyone using traditional email providers without forcing them to sacrifice multi-device setups.

Expected behavior

Actual behavior

Example Images

1 Like