автоматическая распаковка писем
автоматическая распаковка писем
помогите со скриптом. Нужно распаковывать письма, внутри файлы, тело письма пустое, файлы нужно ложить в каталог, имя каталога должно соответствовать теме письма.
Стандартный скрипт видел, работает.
Стандартный скрипт видел, работает.
Re: автоматическая распаковка писем
Т.е. у вас будет так: Тело (а не тема?) письма - "Справки" -> каталог Справки. Или поясните подробно что вы хотите получить?помогите со скриптом. Нужно распаковывать письма, внутри файлы, тело письма пустое, файлы нужно ложить в каталог, имя каталога должно соответствовать теме письма.
Re: автоматическая распаковка писем
победил, Алгоритм примерно такой:
fm- скриптом FossMail
ps- скриптом PowerShell
Вопрос №2 как получать\отправлять\распаковывать на ps? реально ли, то что хочу? если можно, напишите простой пример.
fm- скриптом FossMail
ps- скриптом PowerShell
Код: Выделить всё
получаем. (fm)
пока есть ФПК, берем из фпк, тему (ps)
распаковываем ФПК (fm)
создаем каталог. (ps)
перемещаем файлы (ps)
конец цикла
отправляем(fm)
Re: автоматическая распаковка писем
Хотел\хочу следующее: по теме письма, создать каталог и распаковать в него письмо. Результат уже получил но некрасиво получилось. Работает на 3-х скриптах.FossWare писал(а):Т.е. у вас будет так: Тело (а не тема?) письма - "Справки" -> каталог Справки. Или поясните подробно что вы хотите получить?помогите со скриптом. Нужно распаковывать письма, внутри файлы, тело письма пустое, файлы нужно ложить в каталог, имя каталога должно соответствовать теме письма.
Re: автоматическая распаковка писем
Добрый день. Т.е. предлагается подход - доставка должна быть не конкретному пользователю/почтовому_ящику, адрес которого задается в Получателе, а на основании других критериев - что задано в другом поле? Как, например, в старые времена был подход - кодировать получателя в имени вложенного файла? Т.е. задавать получателя не через адрес получателя?
Ряд вопросов по алгоритму:
- Если есть несколько ФПК с вложениями с одинаковой темой - создается каталог из темы, туда сносятся вложенные файлы. А со следующего ФПК - сносятся файлы в уже созданный каталог? Что делать с возможными одноименными вложенными файлами в данном случае?
- Время жизни этого каталога? Если кто-то сторонний будет его убивать (по какому критерию?), а в это время в новом ФПК тема совпадает с этим каталогом?
- Что делать, если в теме есть запрещенные для имени каталога символы (*, ?) и как отрабатывать ситуацию, когда в теме что-то типа "..\..\..\Windows\System32\", т.е. когда может возникнуть проблема с безопасностью ОС?
- Поле Тема имеет определенную длину - может ли быть ситуация, когда путь/имя каталога превысит эту длину?
- на компе может работать несколько скриптов от разных пользователей - возможна ли такая ситуация и возникнет ли между ними конфликта ?
Сейчас есть встроенный алгоритм, когда каталог создается по текущей дате и в него сливаются все вложенные файлы из пришедших ФПК (было создано для создания архивов на пользоваельской стороне) - не подходит? Есть возможность в скрипте использовать С-шные функции (синтаксис - нижнее подчеркивание, например:
pBuf := _newchar(128);
_strcpy(pBuf, "c:\Tmp2);
_strcat(pBuf, "\aa.txt");
_delete(bBuf)).
Для доступа к полям ФПК можно использовать функции скрипта более низкого уровня. Возможности скрипта Foss - очень гибкие (сочетание низкоуровневого доступа к полям конверта с возможностью rt библиотеки С), нужно определиться с надежностью полученного решения.
Ряд вопросов по алгоритму:
- Если есть несколько ФПК с вложениями с одинаковой темой - создается каталог из темы, туда сносятся вложенные файлы. А со следующего ФПК - сносятся файлы в уже созданный каталог? Что делать с возможными одноименными вложенными файлами в данном случае?
- Время жизни этого каталога? Если кто-то сторонний будет его убивать (по какому критерию?), а в это время в новом ФПК тема совпадает с этим каталогом?
- Что делать, если в теме есть запрещенные для имени каталога символы (*, ?) и как отрабатывать ситуацию, когда в теме что-то типа "..\..\..\Windows\System32\", т.е. когда может возникнуть проблема с безопасностью ОС?
- Поле Тема имеет определенную длину - может ли быть ситуация, когда путь/имя каталога превысит эту длину?
- на компе может работать несколько скриптов от разных пользователей - возможна ли такая ситуация и возникнет ли между ними конфликта ?
Сейчас есть встроенный алгоритм, когда каталог создается по текущей дате и в него сливаются все вложенные файлы из пришедших ФПК (было создано для создания архивов на пользоваельской стороне) - не подходит? Есть возможность в скрипте использовать С-шные функции (синтаксис - нижнее подчеркивание, например:
pBuf := _newchar(128);
_strcpy(pBuf, "c:\Tmp2);
_strcat(pBuf, "\aa.txt");
_delete(bBuf)).
Для доступа к полям ФПК можно использовать функции скрипта более низкого уровня. Возможности скрипта Foss - очень гибкие (сочетание низкоуровневого доступа к полям конверта с возможностью rt библиотеки С), нужно определиться с надежностью полученного решения.
Re: автоматическая распаковка писем
По поводу: "зачем все это?"lyk писал(а): Возможности скрипта Foss - очень гибкие (сочетание низкоуровневого доступа к полям конверта с возможностью rt библиотеки С), нужно определиться с надежностью полученного решения.
Есть филиал, 150++ человек. В филиале есть почтовый ящик. На этот ящик идет почта. Эта почта нужна ВСЕМ. Почтовые ящики есть не у всех.
Почта идет с уникальной темой. В теле письма нужные файлы.
Для удобства работы вся почта должна распаковываться в общий сетевой каталог. Что-бы не было путаницы (в письмах могут быть одинаковые файлы), решили в общем каталоге создавать подкаталог по теме письма.
Для этой реализации и создан скрипт.
Насчет длины\имени итд каталога: решили 3-мя регулярными выражениями, ограничили длину каталога (режим тему если что, бывает редко, и не критично когда идет длинная тема), добавили дату время (дата-время_тема письма)
Насчет "гибкости" языка в ФМ: Работа со строками это просто ужас. Процедуры\функции (пользовательские) - прошлый век. Доступа к полям конверта, примера так и не дождался, решил через PS в 3 строчки. Изучать все возможность вашего языка нет времени и возможности. В документации описание функций вашего языка не соответствует действительности. Например есть функция по отправке почты, но она не только отправляет но и принимает. В документации написано что идет ОТПРАВКА почты про прием почты НИ СЛОВА.
Насчет надежности: Работает не трогай. Проблем нету.
Re: автоматическая распаковка писем
"Что-бы не было путаницы (в письмах могут быть одинаковые файлы), решили в общем каталоге создавать подкаталог по теме письма." - никто не гарантирует, что темы будут уникальными. Решение еще проще - без всяких скриптов. На отделение создается общий ящик группы (напр. ALL). В реале этих групп м.б. сколько угодно (бухгалтеры, депозитчики и т.д.). Отправитель пишет на адрес нужной группы в отделении, а на приемной стороне на узле в маршрутных таблицах за группой закрепляются конкретные конечные получатели, которым и разбрасывается пришедшая на группу корреспонденция. Что не у всех получателей есть почтовый ящик - это организационные погрешности (люди должны участвовать в тех.процессе, а у них нет элементарного доступа). Если нужна реализация каких-то сложных механизмов взаимодействия людей через хитрую параллельно-последовательную обработку пришедших, в том числе и по почте, документов, т.е. задачи автоматического обхода соисполнителей принятыми документами, синхронизации обработки и в соответствии с реакцией каждого - это задачи системы документооборота предприятия. Да и понятие "папка"/"каталог", "сервер общих файлов" в бизнес логике отсутствует - другой уровень абстракции.
Re: автоматическая распаковка писем
1. начальник всегда прав.
2. см пункт 1.
Гос. структура однако Ящиков всем не хватает. С организацией делопроизводства не поспоришь. Поставленная задача решена, а это главное.
2. см пункт 1.
Гос. структура однако Ящиков всем не хватает. С организацией делопроизводства не поспоришь. Поставленная задача решена, а это главное.