Объектный тип ВХОДЯЩАЯ_ПОЧТА
Физический объектный тип c закрытой моделью.
Тип ВХОДЯЩАЯ_ПОЧТА предназначен для чтения почты через протокол POP3.
Поля
| Тип | Поле | Описание | Значение по умолчанию |
|---|---|---|---|
| СТРОКА | сервер | Адрес POP3 сервера. Обязательно нужно указывать префикс протокола (pop3:// или pop3s:// для серверов без шифрования и с шифрованием соответственно) и порт. | |
| СТРОКА | логин | Логин на POP сервере. | |
| СТРОКА | пароль | Пароль на POP сервере. | |
| ЦЕЛОЕ | макс_число_писем | Максимальное количество загружаемых писем. | |
| СТРОКА | папка | Имя или полный путь к папке для сохранения прикрепленных к письмам файлов. В указанной папке создаются папки с именем идентификатора письма. Если это поле не заполнено (пустая строка), то используется рабочая папка программы. | |
| ЛОГИКА | отладка | Задайте ДА для отображения отладочных сообщений в соответствующем окне (аналогично curl --verbose). | |
| СТРОКА | лог_файл | Имя log файла для записи отладочных сообщений. Может использоваться независимо от значения поля отладка. | |
| СТРОКА | тип_трасс | Позволяет указать режим вывода отладочной информации (трассировки).
|
|
| ЛОГИКА | трасс_время | Вывод времени в начале строк отладочных сообщений (аналогично curl --trace-time). |
Методы
| Метод | Описание |
|---|---|
| ОТКРЫТЬ | Формирует список писем в соответствии с заданными параметрами. |
| КОЛ | Получает количество писем в списке. |
| СЧИТАТЬ | Получает все или некоторые данные письма. Для представления информации о письме используется тип ВХОДЯЩЕЕ_ПИСЬМО. |
| ЗАКРЫТЬ | Принудительно закрывает список писем и удаляет письма, помеченные для удаления. Закрытие списка вызывается автоматически при разрушении физического объекта, но удаление писем при этом не происходит. |
| УДАЛИТЬ | Письмо с указанной позицией в списке помечается для удаления. |
Замечания:
- Полученные файлы, которые были прикреплены к письмам, а также содержащие их папки автоматически не удаляются. Рекомендуется указывать путь к временной папке в поле папка и удалять ее со всем содержимым после завершения работы со входящей почтой.
- Если включен режим отладки или указано имя log файла, то при большом количестве писем отладочный вывод может существенно замедлять работу.
Пример:
ПЕРЕМ ВХОДЯЩАЯ_ПОЧТА: почта
почта.сервер = "pop3s://pop.example.ru:995"
почта.логин = "user@example.ru"
почта.пароль = "secret"
ПЕРЕМ ЛОГИКА: рез = почта.ОТКРЫТЬ(ПОЛЯ_ПИСЬМА_КОНВЕРТ)
ЕСЛИ НЕ рез ТО
ВЫХОД // ошибка открытия списка
КОНЕЦ_ЕСЛИ
// количество писем
ПЕРЕМ ЧИСЛО: кол = почта.КОЛ
ЦИКЛ ДЛЯ (и = 1, кол)
ПЕРЕМ ВХОДЯЩЕЕ_ПИСЬМО: письмо
рез = почта.СЧИТАТЬ(и,
ПОЛЯ_ПИСЬМА_КОНВЕРТ + ПОЛЯ_ПИСЬМА_ТЕКСТ, // что хотим
письмо) // выходной параметр
ЕСЛИ рез ТО
// ... обрабатываем письмо
КОНЕЦ_ЕСЛИ
КОНЕЦ_ЦИКЛА
// В принципе, закрывать не обязательно — закроется само при выходе.
// Явное закрытие требуется, когда одно или более писем были помечены для удаления.
почта.ЗАКРЫТЬ