На сервере есть сервис Dovecot. Я вручную перемещал сообщения в почтовом ящике пользователя из одного в другой. Теперь у меня возникла проблема с сортировкой на устройстве iOS. Например:
Но на моем iPhone мне пришлось заново настраивать почтовый аккаунт. К сожалению, после синхронизации сообщения были в неправильном порядке. Теперь я должен пролистать целую вечность, чтобы получить Сообщение А.
Я обнаружил, что почтовый клиент iOS не поддерживает сортировку сообщений. Есть ли возможность повторно отсортировать каждое сообщение по его заголовку даты или заставить Dovecot возвращать сообщения в требуемом порядке?
Telnet возвращает:
OK [ВОЗМОЖНОСТЬ IMAP4rev1 LITERAL + SASL-IR ИДЕНТИФИКАЦИЯ ВХОДА-РЕФЕРАЛОВ ВКЛЮЧИТЬ IDLE STARTTLS LOGINDISABLED AUTH = CRAM-MD5] Dovecot (Ubuntu) готов.
после входа в систему:
4 OK [CAPABILITY IMAP4rev1 LITERAL + SASL-IR LOGIN-REFERRALS ID ВКЛЮЧИТЬ СОРТИРОВАТЬ ПРОСТОЙ СОРТИРОВАТЬ = DISPLAY THREAD = REFERENCES THREAD = REFS THREAD = ORDEREDSUBJECT MULTIAPPEND URL-PARTIAL CATISTENATE EXENDUSNES CONNECT ESD-REFERRALES = СПИСОК ПОИСКА-СТАТУС СПЕЦИАЛЬНОГО ИСПОЛЬЗОВАНИЯ ДВОИЧНЫЙ ПЕРЕМЕЩЕНИЕ] Выполнен вход
Я обнаружил, что расширение Dovecot SORT работает из коробки. Есть ли способ принудительной сортировки по дате?
Dovecot имеет индекс внутри maildir, где индексируются все сообщения, доставленные через imap. Сообщения, перемещенные вручную, не включаются в индекс и поэтому не работают.
Все, что вам нужно сделать - это вручную переиндексировать maildir с помощью doveadm
утилита:
doveadm index -u username Inbox
Дополнительную информацию можно найти здесь: http://wiki2.dovecot.org/Tools/Doveadm/Index