25 882 документа
← К списку

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

страница

ИнтернетПочта (InternetMail)

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

Доступен, начиная с версии 8.1.

Синтаксис:

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

Параметры:

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

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

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

Тип: Структура.
В качестве ключей структуры используются названия свойств письма, по которым осуществляется отбор.
Значения могут быть выражения следующих типов: Строка, Дата, Число, Булево.
Тип значения определяется ключом. Например, если требуется отобрать письма до определённой даты, то в качестве значения необходимо использовать выражения типа Дата.
Если в качестве значения используется строка, то регистр не имеет значения.
Если заданы несколько ключей, то они применяются последовательно по логическому И.

  • ОтправленОтвет (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]);
    Сообщить(Письмо.Идентификатор[0]);
    
    // ...

    
КонецЦикла;

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

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

См. также:

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

Использование в версии:

Доступен, начиная с версии 8.1.


     Методическая информация