Email загрузчики

Название - понятное название загрузчика, например, почтовый ящик, с которого собирается почта.
Расписание - расписание в крон формате, с какой периодичностью будет производиться проверка почтового ящика, устанавливайте разумный интервал проверки.

Настройки почтового сервера - настройки согласно документации вашего почтового сервера. Соблюдайте должный уровень осмотрительности, пароли не хранятся в открытом виде и никто не сможет получить к ним доступ, в том числе и вы сами, но для этих целей все же правильно использовать отдельные почтовые ящики, на которые вам присылают данные поставщики.
Общие настройки - то, количество писем, которое будет собрано за раз, лучше оставить по умолчанию, если у вас тысячи непрочитанных писем, они соберутся в несколько заходов, если пытаться загрузить сразу огромное количество, это просто приведет к долгому выполнению задачи, в то время как можно брать пачками и делать другие вычисления в то время, как следующая пачка загружается.
Callback токен - не используется в email загрузчиках, так как не имеет смысла.

Правила email - для добавления нового правила необходимо нажать кнопку "добавить". Для одного загрузчика доступно неограниченное количество правил. Правила необходимы для того, чтобы правильно определить письмо и вложение, соответствующее нужному прайс-листу поставщика или другому источнику данных, которое будет всегда сохраняться в один и тот же общий файл, что позволить обновлять данные автоматически. Функциональность довольно широкая и гибкая, стоит отметить - учите регулярные выражения, они сильно упростят вам жизнь. Итак, правила регистрозависимы и на это есть причины, ниже примеры настроек:
Примеры фильтрации отправителя
1. Точное совпадение email (только exact:)
exact:supplier@company.ru
2. Точное совпадение с именем (только exact:)
exact:ООО Поставщик <supplier@company.ru>
3. Регулярное выражение для домена (любой email с доменом company.ru)
@company\.ru$
4. Регулярное выражение для нескольких доменов
@(company|supplier)\.(ru|com)$
5. Регулярное выражение для email, начинающегося с определенного префикса
^prices@
6. Регулярное выражение для email, содержащего слово (без exact:)
prices
7. Регулярное выражение для нескольких вариантов написания компании
ООО (Поставщик|Прайс-лист)
8. Регулярное выражение с игнорированием регистра
(?i)supplier@company\.ru
9. Регулярное выражение для email с поддоменами
.+@(prices|docs)\.company\.ru
10. Точное совпадение email в кавычках (без exact: - не сработает, нужно exact:)
exact:"Supplier Name" <supplier@company.ru>
Примеры фильтрации темы письма
1. Точное совпадение темы
exact:Прайс-лист на 2026 год
2. Регулярное выражение для даты в теме (форматы ДД.ММ.ГГГГ)
Прайс.*\d{2}\.\d{2}\.\d{4}
3. Регулярное выражение для месяца и года
Прайс.*(январь|февраль|март).*2026
4. Регулярное выражение для слов "прайс" или "цены" в любом регистре
(?i)(прайс|цены|price)
5. Регулярное выражение для темы с номером заказа
Заказ №\d+
6. Регулярное выражение для темы с датой в формате YYYY-MM-DD
\d{4}-\d{2}-\d{2}.*прайс
7. Регулярное выражение для исключения тестовых писем
^(?!.*тест).*прайс
8. Точное совпадение для многострочной темы (только exact:)
exact:Актуальные цены
Обновление от 01.02.2026
9. Регулярное выражение для сезонных прайсов
(весна|лето|осень|зима).*2026
10. Регулярное выражение для ID поставщика в теме
Поставщик [A-Z]{3}-\d{4}
Примеры шаблонов имени вложения
1. Точное совпадение имени файла
exact:price_list.xlsx
2. Точное совпадение с расширением (только exact:)
exact:Прайс-лист.xls
3. Регулярное выражение для определенного расширения
\.(xlsx|xls|csv)$
4. Регулярное выражение для архива
\.(zip|rar|7z)$
5. Регулярное выражение для файлов с датой в имени
price_\d{8}\.xlsx
6. Регулярное выражение для прайсов в названии
(?i)прайс.*\.xlsx
7. Регулярное выражение для файлов поставщика
supplier_\d+\.csv
8. Регулярное выражение для нескольких возможных имен
(price|pricelist|прайс).*\.(xlsx|xls)
9. Регулярное выражение для файлов с версией
catalog_v\d+\.xlsx
10. Регулярное выражение для файлов с кодом товара
products_\d{6}\.csv
Примеры шаблонов архивов
1. Точное совпадение имени архива
exact:prices.zip
2. Регулярное выражение для zip архивов
\.zip$
3. Регулярное выражение для архивов с датой
archive_\d{8}\.(zip|rar)
4. Регулярное выражение для многотомных архивов
part\d+\.rar
5. Регулярное выражение для архивов с префиксом
supplier_prices.*\.7z
6. Регулярное выражение для архивов любого типа
\.(zip|rar|7z)$
7. Регулярное выражение для архивов в подпапке
backup/.*\.zip
8. Регулярное выражение для архивов с годом
2026.*\.(zip|rar)
9. Регулярное выражение для запароленных архивов (по имени)
protected_.*\.rar
10. Регулярное выражение для архивов с пометкой full
full_backup_\d+\.7z
Комбинированные примеры
Пример 1: Простой - точное совпадение отправителя и любого вложения
filter_from: exact:supplier@company.ru
filter_subject:
attachment_name_pattern:
extract_archives: never
archive_pattern:
extract_all_files: false
extract_subfolders: true
mark_as_read: true
delete_after_fetch: false
Пример 2: С регулярными выражениями и извлечением архивов
filter_from: @(company|supplier)\.ru$
filter_subject: (?i)прайс.*обновление
attachment_name_pattern: \.xlsx$
extract_archives: always
archive_pattern:
extract_all_files: true
extract_subfolders: true
mark_as_read: true
delete_after_fetch: false
Пример 3: Точные совпадения со сложным именем вложения
filter_from: exact:ООО Поставщик <supplier@company.ru>
filter_subject: exact:Прайс-лист на 2026 год
attachment_name_pattern: exact:pricelist_2026_final.xlsx
extract_archives: never
archive_pattern:
extract_all_files: false
extract_subfolders: true
mark_as_read: true
delete_after_fetch: false
Пример 4: Работа с архивами - извлечение только нужных файлов
filter_from: .+@prices\.company\.ru
filter_subject: (?i)архив.*прайсов
attachment_name_pattern:
extract_archives: match_pattern
archive_pattern: \.zip$
extract_all_files: false
extract_subfolders: true
mark_as_read: true
delete_after_fetch: false
Пример 5: Сложная фильтрация с извлечением из подпапок архива
filter_from: ^prices@
filter_subject: \d{4}-\d{2}-\d{2}
attachment_name_pattern: (?i)price.*\.csv$
extract_archives: always
archive_pattern:
extract_all_files: true
extract_subfolders: true
mark_as_read: true
delete_after_fetch: false
Пример 6: Только определенные архивы, извлекать все файлы
filter_from: backup@company\.ru
filter_subject: backup
attachment_name_pattern:
extract_archives: match_pattern
archive_pattern: full_backup_\d+\.zip
extract_all_files: true
extract_subfolders: true
mark_as_read: true
delete_after_fetch: false
Пример 7: Несколько правил для разных типов файлов (должны быть отдельными объектами)
Правило 7.1: Для Excel файлов
filter_from: @supplier\.ru
filter_subject:
attachment_name_pattern: \.(xlsx|xls)$
extract_archives: never
archive_pattern:
extract_all_files: false
extract_subfolders: true
mark_as_read: true
delete_after_fetch: false
Правило 7.2: Для CSV файлов в архивах
filter_from: @supplier\.ru
filter_subject:
attachment_name_pattern:
extract_archives: always
archive_pattern: \.zip$
extract_all_files: false
extract_subfolders: false
mark_as_read: true
delete_after_fetch: false
Пример 8: С удалением письма после загрузки (внимательно)
filter_from: exact:temp@temp-mail.org
filter_subject: exact:Тестовый прайс
attachment_name_pattern: test\.xlsx
extract_archives: never
archive_pattern:
extract_all_files: false
extract_subfolders: true
mark_as_read: false
delete_after_fetch: true
Пример 9: Извлечение из архивов с фильтрацией по содержимому
filter_from: catalog@company\.ru
filter_subject: (?i)каталог
attachment_name_pattern:
extract_archives: always
archive_pattern: catalog_.*\.zip
extract_all_files: true
extract_subfolders: true
mark_as_read: true
delete_after_fetch: false
Пример 10: Комплексное правило с regex для всех полей
filter_from: ^(supplier|provider|vendor)@.+\.(ru|com)$
filter_subject: (?i)(price|pricelist|прайс).*2026
attachment_name_pattern: (?i)(price|prices).*\.(xlsx|csv|zip|rar)$
extract_archives: match_pattern
archive_pattern: \.(zip|rar)$
extract_all_files: true
extract_subfolders: true
mark_as_read: true
delete_after_fetch: false
Полный список полей с пояснениями
display_name: "Имя файла для сохранения" (обязательное)
filter_from: "Фильтр отправителя" (опционально, exact: или regex)
filter_subject: "Фильтр темы" (опционально, exact: или regex)
attachment_name_pattern: "Шаблон имени вложения" (опционально, exact: или regex)
extract_archives: "Извлечение из архивов" (never/always/match_pattern)
archive_pattern: "Шаблон имени архива" (опционально, exact: или regex)
extract_all_files: "Извлекать все файлы" (true/false)
extract_subfolders: "Извлекать из подпапок" (true/false)
mark_as_read: "Помечать как прочитанное" (true/false)
delete_after_fetch: "Удалять после загрузки" (true/false)
is_active: "Активно" (true/false)
Примечания по синтаксису
1. Для точного совпадения всегда используйте префикс "exact:"
Правильно: exact:price_list.xlsx
Неправильно: price_list.xlsx (будет интерпретировано как regex)
2. Регулярные выражения пишутся без кавычек
Правильно: \.xlsx$|\.xls$
Неправильно: "\.xlsx$|\.xls$"
3. Для русских букв в regex используйте флаг (?i) для игнорирования регистра
(?i)прайс-лист
4. Пустые поля означают "пропустить проверку"
filter_subject: (пусто) - проверка темы не выполняется
5. Булевы значения: true/false (без кавычек, с маленькой буквы)
После создания правил загрузчик можно запустить вручную из списка загрузчиков или подождать запуска по расписанию.