Руководство разработчика

Объектный тип ВХОДЯЩАЯ_ПОЧТА

Физический объектный тип c закрытой моделью.

Тип ВХОДЯЩАЯ_ПОЧТА предназначен для чтения почты через протокол POP3.

Поля

Тип Поле Описание Значение по умолчанию
СТРОКА серверАдрес POP3 сервера. Обязательно нужно указывать префикс протокола (pop3:// или pop3s:// для серверов без шифрования и с шифрованием соответственно) и порт.
СТРОКА логинЛогин на POP сервере.
СТРОКА парольПароль на POP сервере.
ЦЕЛОЕ макс_число_писемМаксимальное количество загружаемых писем.
СТРОКА папкаИмя или полный путь к папке для сохранения прикрепленных к письмам файлов. В указанной папке создаются папки с именем идентификатора письма. Если это поле не заполнено (пустая строка), то используется рабочая папка программы.
ЛОГИКА отладкаЗадайте ДА для отображения отладочных сообщений в соответствующем окне (аналогично curl --verbose).
СТРОКА лог_файлИмя log файла для записи отладочных сообщений. Может использоваться независимо от значения поля отладка.
СТРОКА тип_трасс Позволяет указать режим вывода отладочной информации (трассировки).
  • Значение "bin" применяется для трассировки двоичных данных (аналогично curl --trace). Двоичные данные выводятся столбиками шестнадцатеричных значений байтов (как в hex-редакторах файлов).
  • Значение "ascii" применяется для трассировки текстовых данных (аналогично curl --trace-ascii). Не ASCII символы при выводе заменяются точкой.
  • По умолчанию используется режим диагностики и вывод заголовков (аналогично curl --verbose). Для входных и выходных данных в этом режиме выводится только размер в байтах.
Эти три режима являются взаимоисключающими.
ЛОГИКА трасс_времяВывод времени в начале строк отладочных сообщений (аналогично curl --trace-time).

Методы

МетодОписание
ОТКРЫТЬ Формирует список писем в соответствии с заданными параметрами.
КОЛ Получает количество писем в списке.
СЧИТАТЬ Получает все или некоторые данные письма. Для представления информации о письме используется тип ВХОДЯЩЕЕ_ПИСЬМО.
ЗАКРЫТЬ Принудительно закрывает список писем и удаляет письма, помеченные для удаления. Закрытие списка вызывается автоматически при разрушении физического объекта, но удаление писем при этом не происходит.
УДАЛИТЬ Письмо с указанной позицией в списке помечается для удаления.

Замечания:

Пример:

ПЕРЕМ ВХОДЯЩАЯ_ПОЧТА: почта
почта.сервер = "pop3s://pop.example.ru:995"
почта.логин = "user@example.ru"
почта.пароль = "secret"

ПЕРЕМ ЛОГИКА: рез = почта.ОТКРЫТЬ(ПОЛЯ_ПИСЬМА_КОНВЕРТ) 
ЕСЛИ НЕ рез ТО
    ВЫХОД // ошибка открытия списка
КОНЕЦ_ЕСЛИ

// количество писем
ПЕРЕМ ЧИСЛО: кол = почта.КОЛ

ЦИКЛ ДЛЯ (и = 1, кол)
    ПЕРЕМ ВХОДЯЩЕЕ_ПИСЬМО: письмо
    рез = почта.СЧИТАТЬ(и, 
                        ПОЛЯ_ПИСЬМА_КОНВЕРТ + ПОЛЯ_ПИСЬМА_ТЕКСТ, // что хотим
                        письмо) // выходной параметр
    ЕСЛИ рез ТО
        // ... обрабатываем письмо
    КОНЕЦ_ЕСЛИ
КОНЕЦ_ЦИКЛА

// В принципе, закрывать не обязательно — закроется само при выходе.
// Явное закрытие требуется, когда одно или более писем были помечены для удаления.
почта.ЗАКРЫТЬ 

См. также: