Архив: Скрипт для чтения писем по pop/imap и парсинга на python

Бюджет По договоренности
Создан: 7 лет назад
Закрыт
Описание
Ситуация: в некий почтовый ящик приходят письма с определенным набором полей (имя, email, телефон, сообщение, прочие данные). 

Требуется: 
0. Написать скрипт и файл конфига для него (в идеале  веб-интерефейс для настройки (настройки описаны в конце)) 
1. Скриптом по крону парсить каждое новое письмо (не свежее "непрочитанное", а любое новое необработанное, пусть даже и прочитанное, например, почтовым клиентом) 
2. Запоминать обработанное письмо 
3. Передавать данные в указанную функцию (REST API) 
4. "Слушать" ответ функции:  
4.1 если ответ ОК, то переместить письмо в другую (обговоренную) папку (|| присвоить ярлык) 
4.2 если ответ НЕОК, то включить таймер на N минут, в течение которого письма НЕ парсятся 
4.2.1. запомнить письмо 
4.3 через TIME1 минут новая попытка передачи. 
4.4 если после COUNT1 попыток передачи ответ все еще НЕОК, переслать письмо на другой ящик BOX1 c темой SUBJECT1 + оригинальная тема письма и предупреждением NOTE1 
5. Как только ответы от функции станут ОК, все необработанные письма (в том числе и те, которые были пересланы), должны быть спарсены и отработаны по шагам 1  4.1 
6. В момент TIME2 отправлять письмо на BOX2 c отчетом об общем количестве обработанных писем и о письмах, для которых на данный момент ответ функции НЕОК 
7. Все операции должны логироваться с ротацией и пересылкой на BOX3 
8. Если каких-то параметров в конфиге не хватает для нормальной работы, в текущей директории должен формироваться файл c описанием ошибки (допустим,error<datetime>.txt). Если для работы достаточно параметров и этот файл в наличии, то удалить его. 

Т.о. для скрипта должны настраиваться: 
email 
stmp/pop/smtp/ports 
password 
прочие данные для подключения к ящику 
TIME1  время, через которое должна быть новая попытки отправки данных. default = 5 мин 
TIME2  время для отправки отчетов по письмам. Обсуждаемо. Возможно, проще будет настроить несколько раз на крон 
COUNT1  = количество попыток отправки, после которого нужно переслать письмо на BOX1. default = 2 
BOX1  email. дефолта нет 
BOX2  email. дефолта нет 
BOX3  email. дефолта нет 
SUBJECT1   строка. default = "Проблемы. Требуется ручная обработка" 
NOTE1  строка. defalt = "Обработать вручную до разрешения проблем" 
LOGDIR  возможно, потребуется определять директорию для логов. default = "" 
LOGMAX  максимальный размер всех логов, после превышения которого самый старый отправляется на BOX3 и удаляется. default = 2Мб 

Технологии и ЯП: Python 3
Категория

Похожие проекты

safe 
0 3
Необходимо разработать систему, которая: Подключается к API Diagnocat и iDent (через токены доступа). Получает данные о пациенте, результатах диагностики, снимках и назначениях. Автоматически формирует структурированный отчет по шаблону (включая врачей, этапы лечения, стоимость и описание процедур).......
 
0 0
Необходимо связать БД 1C:ERP с БД Outlook, MS Access, Битрикс24. Например при вводе нового сотрудника в 1С:ERP он должен автоматически появляться в вышеперечисленных БД....
3 месяца назад
 
0 1
Требуется реализация отчёта на кастомизированной 1С:УПП 1. 2, ТЗ и контрольный пример во вложении, 80% кода должно быть покрыто модульными тестами....
3 месяца назад
$7
0 2
Мне нужно копировать мой текст и вставлять в одну группу ВК с открытой стеной для публикации рекламы. Задача скрипта/сервиса/программы - примерно каждые 10 секунд брать мой текст и вставлять в эту группу. Я пробовал через одну программу, которая записывает действия мышки и потом повторяет, но она как-то......
5 месяцев назад
safe 
0 0
Написать прошивку для A94B114, используя 2 подобные рабочие прошивки. Все файлы есть....
$21
0 2
Нужно разархивировать файл архив. ujems, есть распаковщик, но выдает ошибку. Прислать пруфы(скрины)....
7 месяцев назад
safe 
0 1
Входные: Имеется скрипт по обработке email писем и добавление их в систему Redmine   Проблема: Система обработки этих писем написана некорректная и негибкая    Задача: Переписать логику обработки входящих писем, чтобы исключить их потерю при незначительных отклонениях от ожидаемой структуры....
$37
0 1
- В обязанности сотрудника входит поддержание мобильного приложения системы автоматизации бизнеса. - Работа сдельная: задачи выдаются на оценку, далее после согласования передаются на реализацию. - Заключаем договор и NDA (соглашение о неразглашении)....
$71
0 0
Информация о проекте: Проект включает в себя React Native приложение с Expo внутри которого находится webview с сайтом На устройствах с ОС IOS проблема с воспроизведением видео....
8 месяцев назад
safe 
0 0
Разрабатываю десктопные программы на языке Java,  а так же Java + SQL....
 
0 6
  1. Чтобы можно было писать описание события (без заголовка) - превью в списке берется N количества букв с начала. (в списке писать дату события и сколько осталось до него) . Выставление даты и времени напоминания и ИНТЕРВАЛА ПОВТОРА ОТ 1 МИНУТЫ! Выставлять количество повторов, далее напоминания прекращаются.......
safe 
0 4
Сайт arg2028t. beget. tech/. Нужно сделать вот такой калькулятор. airprint. by/outdoor/wide-format. и еще некоторые доработки....
safe 
0 7
Краткое описание: Мы ищем исполнителя для тестирования функционала мобильного приложения на платформе Android. Задача включает проверку основных функций приложения, таких как работа комнаты, передача видео, звука и чата, а также создание подробной отчетности о найденных ошибках.   Требования к исполнителю:......
safe 
0 12
Разработка чат-бота под ваши нужды....
$143
0 0
Oпpocы (1008pyб/чaс) Заходитe на сaйт: gonsù....
11 месяцев назад
 
0 4
Требуется создать скрипт для premiere pro. Данная суть скрипта: в выделеном бине нужно что бы автоматически проставлялся in out ровно по серидине файла так что бы выделенная область была длиной 3 секунды. И требуется кнопка что бы работало через окно expressions. Проблема текущего в том что он не работает......
 
0 2
Нужно создать приложения под гемблинг/беттинг, на котлин. Приложение должно работать Firebase. Детали вышлю при обсуждение....
$21
0 4
Нужно разархивировать файл archive. ujems, есть распаковщик, но выдает ошибку. Прислать пруфы  ....
1 год назад
safe 
0 3
Разработать впн сервис ( Приложения на ios и android + сайт для оплаты подписки). Настройка Серверов. Оплата по договоренности. Работаем черед безопасную сделку....
1 год назад
Смотреть все