2.3.2. Флаги сообщения
С сообщением связывается список (возможно пустой) именованных маркеров (флагов). Установка флагов обеспечивается их включением в список, сброс — удалением из списка. Протокол IMAP4rev1 поддерживает два типа флагов — для сессии и постоянные.
Имена системных флагов определяются настоящей спецификацией (см. таблицу). Все системные флаги начинаются с символа "\". Некоторые из системных флагов (\Deleted и \Seen) используют специальную семантику.
Если невозможно определить, является ли сеанс для данного сообщения первым, сообщение следует рассматривать как новое (установить флаг).
Если с одним почтовым ящиком одновременно организовано более одного соединения, невозможно определить для каких сеансов будет установлен флаг \Recent.
\Seen | Сообщение было прочитано. |
\Answered | На сообщение был отправлен ответ. |
\Flagged | Флаг важности сообщения. |
\Deleted | Сообщение «удалено» для последующего уничтожения с помощью EXPUNGE. |
\Draft | Сообщение не закончено (помечено как черновик — draft). |
\Recent | Сообщение недавно доставлено в почтовый ящик. Этот сеанс является первым, в котором это сообщение появилось. Следующие сеансы не будут устанавливать флаг \Recent для этого сообщения. Это флаг не может быть изменен клиентом. Если невозможно определить, является ли сеанс для данного сообщения первым, сообщение следует рассматривать как новое (установить флаг). Если с одним почтовым ящиком одновременно организовано более одного соединения, невозможно определить для каких сеансов будет установлен флаг \Recent. |
Имена флагов задаются разработчиками сервера и не ДОЛЖНЫ начинаться с символа "\". Серверы могут позволять клиенту определять новые имена флагов в почтовом ящике (см. описание отклика PERMANENTFLAGS).
Флаги могут быть постоянными или сеансовыми (для каждого флага это определяется независимо). К постоянным относятся те флаги, клиент сохраняются после завершения сеанса, т. е. в следующем сеансе они будут иметь те же значения. Изменения сеансовых флагов сохраняются только в течение сеанса. Флаг \Recent представляет собой специальный случай сеансового системного флага (этот флаг не может использоваться в качестве аргумента команды STORE).