ИнтернетПочта.ПолучитьИдентификаторы (InternetMail.GetUIDL)

Синтаксис:

ПолучитьИдентификаторы(<МассивИдентификаторов>, <ПараметрыОтбора>)

Параметры:

<МассивИдентификаторов> (необязательный)

Тип: Массив.
Для получения всех идентификаторов сообщений из почтового ящика необходимо передать пустой массив. Если же надо получить идентификаторы только новых сообщений, то необходимо передать массив, заполненный ранее полученными идентификаторами (свойство Идентификатор).

<ПараметрыОтбора> (необязательный)

Тип: Структура.
В качестве ключей структуры используются названия свойств письма, по которым осуществляется отбор.
Значения могут быть выражения следующих типов: Строка, Дата, Число, Булево.
Тип значения определяется ключом. Например, если требуется отобрать письма до определённой даты, то в качестве значения необходимо использовать выражения типа Дата.
Если в качестве значения используется строка, то регистр не имеет значения.
Если заданы несколько ключей, то они применяются последовательно по логическому И.
  • ОтправленОтвет (Answered) - Булево. Отобрать сообщения, у которых установлен флаг – Answered;
  • Недавние (Recent) - Булево. Отобрать сообщения, пришедшие в рамках текущей IMAP-сессии.
  • СлепыеКопии (Bcc) - Строка. Отобрать сообщения, которые имеют “строка” в поле Bcc;
  • Копии (Cc) - Строка. Отобрать сообщения, которые имеют “строка” в поле Cc;
  • Получатели (To) - Строка. Отобрать сообщения, которые имеют “строка” в поле To;
  • ДатаОтправления (PostDating) - Дата. Отобрать сообщения, у которых значение поле Date: равно “Дата”;
  • Отправитель (From) - Строка. Отобрать все сообщения у которых встречается “строка”в поле From;
  • ДоДатыОтправления (BeforeDateOfPosting) - Дата. Отобрать сообщения, у которых значение поле Date: перед “дата”;
  • ПослеДатыОтправления (AfterDateOfPosting) - Дата. Отобрать сообщения, у которых значение поля Date: после значения “Дата”;
  • Тема (Subject) - Строка. Отобрать сообщения, в заголовке которых встречается заданная строка;
  • Текст (Text) - Строка. Отобрать сообщения, в любых текстовых полях которого встречается заданная строка;
  • ТелоСообщения (Body) - Строка. Отобрать сообщения, в теле которых встречается строка – “строка”;
  • Удаленные (Deleted) - Булево. Отобрать сообщения, которые должны быть удалены или не должны быть удалены;
  • УстановленФлаг (Flagged) - Булево. Отобрать сообщения, которые помечены флагом или не помечены флагом;
  • Прочитанные (Seen) - Булево. Отобрать сообщения, которые были прочитаны или не прочитаны;
  • Новые (New) - Булево. Отобрать новые или старые сообщения.
Пример:
ПараметрыОтбораIMAP = Новый Структура;
ПараметрыОтбораIMAP.Вставить("Новые", Истина);
ПараметрыОтбораIMAP.Вставить("Тема", "привет");
Почта.ПолучитьЗаголовки(ПараметрыОтбораIMAP);



Строковые значения критериев отбора отправляются в кодировке US-ASCII, если содержат только символы ANSI и в кодировке UTF-8 - в противном случае. Не все IMAP-серверы поддерживают UTF-8, поэтому сервер может выдать соответствующую ошибку.

Возвращаемое значение:

Тип: Массив.

Описание:

Возвращает массив, содержащий идентификаторы всех или новых сообщений, находящихся в почтовом ящике на сервере.
Внимание! Фильтрация заголовков работает только при работе по протоколу IMAP. При работе по протоколу POP3 отбор писем не выполняется - метод вернет полный массив сообщений, даже если установлены ПараметрыОтбора.

Доступность:

Тонкий клиент, сервер, толстый клиент, внешнее соединение, мобильное приложение(клиент), мобильное приложение(сервер).

Примечание:

Для IMAP протокола идентификаторы будут выбраны из IMAP почтового ящика (ТекущийПочтовыйЯщик).

Пример:

Профиль = Новый ИнтернетПочтовыйПрофиль;
ЗаполнитьПрофиль(Профиль);

Почта = Новый ИнтернетПочта;
Почта.Подключиться(Профиль);

ИДы = Новый Массив;
// Восстановим ранее сохраненные идентификаторы
ВосЗнач = ВосстановитьЗначение("ИДы");
Если 
ВосЗнач <> Неопределено Тогда
    ИДы = ВосЗнач
КонецЕсли;
    
// Получим идентификаторы новых сообщений
НовыеСооб = Почта.ПолучитьИдентификаторы(ИДы);

Если 
НовыеСооб.Количество() > Тогда
    
    // Получим только новые сообщения
    Масс = Почта.Выбрать(Ложь, НовыеСооб);
    
Иначе
    
    Сообщить("Новых сообщений нет");
    Почта.Отключиться();
    Возврат
;
    
КонецЕсли
;       

Для 
Каждого Письмо Из Масс Цикл
    
    // Сохраним идентификатор полученного
    // сообщения для дальнейшего использования
    ИДы.Добавить(Письмо.Идентификатор[0]);
    Сообщить(Письмо.Идентификатор[0]);
    
    // ...
    
КонецЦикла
;

СохранитьЗначение("ИДы", ИДы);

Почта.Отключиться();

См. также:

ИнтернетПочтовоеСообщение, свойство Идентификатор

    

1C:Enterprise Developer's Community