автоматическая распаковка писем

Обсуждение работы программы Корпоративная электронная почта FossMail


Ответить
dpi0519
Новичок
Сообщения: 6
Зарегистрирован: 01 авг 2014, 13:03
2 + 2 = ?: 4

автоматическая распаковка писем

Сообщение dpi0519 » 01 авг 2014, 13:11

помогите со скриптом. Нужно распаковывать письма, внутри файлы, тело письма пустое, файлы нужно ложить в каталог, имя каталога должно соответствовать теме письма.

Стандартный скрипт видел, работает.

FossWare
Пользователь
Сообщения: 380
Зарегистрирован: 19 дек 2008, 17:28

Re: автоматическая распаковка писем

Сообщение FossWare » 06 авг 2014, 13:32

помогите со скриптом. Нужно распаковывать письма, внутри файлы, тело письма пустое, файлы нужно ложить в каталог, имя каталога должно соответствовать теме письма.
Т.е. у вас будет так: Тело (а не тема?) письма - "Справки" -> каталог Справки. Или поясните подробно что вы хотите получить?

dpi0519
Новичок
Сообщения: 6
Зарегистрирован: 01 авг 2014, 13:03
2 + 2 = ?: 4

Re: автоматическая распаковка писем

Сообщение dpi0519 » 06 авг 2014, 13:33

победил, Алгоритм примерно такой:

fm- скриптом FossMail
ps- скриптом PowerShell

Код: Выделить всё

получаем. (fm)
 пока есть ФПК, берем из фпк, тему (ps)
  распаковываем ФПК (fm)
  создаем каталог. (ps)
  перемещаем файлы (ps)
 конец цикла
отправляем(fm)
Вопрос №2 как получать\отправлять\распаковывать на ps? реально ли, то что хочу? если можно, напишите простой пример.

dpi0519
Новичок
Сообщения: 6
Зарегистрирован: 01 авг 2014, 13:03
2 + 2 = ?: 4

Re: автоматическая распаковка писем

Сообщение dpi0519 » 06 авг 2014, 13:37

FossWare писал(а):
помогите со скриптом. Нужно распаковывать письма, внутри файлы, тело письма пустое, файлы нужно ложить в каталог, имя каталога должно соответствовать теме письма.
Т.е. у вас будет так: Тело (а не тема?) письма - "Справки" -> каталог Справки. Или поясните подробно что вы хотите получить?
Хотел\хочу следующее: по теме письма, создать каталог и распаковать в него письмо. Результат уже получил но некрасиво получилось. Работает на 3-х скриптах. :(

lyk
Разработчики Fossmail
Сообщения: 38
Зарегистрирован: 19 фев 2009, 11:44
2 + 2 = ?: 4

Re: автоматическая распаковка писем

Сообщение lyk » 07 авг 2014, 17:06

Добрый день. Т.е. предлагается подход - доставка должна быть не конкретному пользователю/почтовому_ящику, адрес которого задается в Получателе, а на основании других критериев - что задано в другом поле? Как, например, в старые времена был подход - кодировать получателя в имени вложенного файла? Т.е. задавать получателя не через адрес получателя?

Ряд вопросов по алгоритму:
- Если есть несколько ФПК с вложениями с одинаковой темой - создается каталог из темы, туда сносятся вложенные файлы. А со следующего ФПК - сносятся файлы в уже созданный каталог? Что делать с возможными одноименными вложенными файлами в данном случае?
- Время жизни этого каталога? Если кто-то сторонний будет его убивать (по какому критерию?), а в это время в новом ФПК тема совпадает с этим каталогом?
- Что делать, если в теме есть запрещенные для имени каталога символы (*, ?) и как отрабатывать ситуацию, когда в теме что-то типа "..\..\..\Windows\System32\", т.е. когда может возникнуть проблема с безопасностью ОС?
- Поле Тема имеет определенную длину - может ли быть ситуация, когда путь/имя каталога превысит эту длину?
- на компе может работать несколько скриптов от разных пользователей - возможна ли такая ситуация и возникнет ли между ними конфликта ?

Сейчас есть встроенный алгоритм, когда каталог создается по текущей дате и в него сливаются все вложенные файлы из пришедших ФПК (было создано для создания архивов на пользоваельской стороне) - не подходит? Есть возможность в скрипте использовать С-шные функции (синтаксис - нижнее подчеркивание, например:
pBuf := _newchar(128);
_strcpy(pBuf, "c:\Tmp2);
_strcat(pBuf, "\aa.txt");
_delete(bBuf)).
Для доступа к полям ФПК можно использовать функции скрипта более низкого уровня. Возможности скрипта Foss - очень гибкие (сочетание низкоуровневого доступа к полям конверта с возможностью rt библиотеки С), нужно определиться с надежностью полученного решения.

dpi0519
Новичок
Сообщения: 6
Зарегистрирован: 01 авг 2014, 13:03
2 + 2 = ?: 4

Re: автоматическая распаковка писем

Сообщение dpi0519 » 08 авг 2014, 10:28

lyk писал(а): Возможности скрипта Foss - очень гибкие (сочетание низкоуровневого доступа к полям конверта с возможностью rt библиотеки С), нужно определиться с надежностью полученного решения.
По поводу: "зачем все это?"
Есть филиал, 150++ человек. В филиале есть почтовый ящик. На этот ящик идет почта. Эта почта нужна ВСЕМ. Почтовые ящики есть не у всех.
Почта идет с уникальной темой. В теле письма нужные файлы.

Для удобства работы вся почта должна распаковываться в общий сетевой каталог. Что-бы не было путаницы (в письмах могут быть одинаковые файлы), решили в общем каталоге создавать подкаталог по теме письма.

Для этой реализации и создан скрипт.

Насчет длины\имени итд каталога: решили 3-мя регулярными выражениями, ограничили длину каталога (режим тему если что, бывает редко, и не критично когда идет длинная тема), добавили дату время (дата-время_тема письма)

Насчет "гибкости" языка в ФМ: Работа со строками это просто ужас. Процедуры\функции (пользовательские) - прошлый век. Доступа к полям конверта, примера так и не дождался, решил через PS в 3 строчки. Изучать все возможность вашего языка нет времени и возможности. В документации описание функций вашего языка не соответствует действительности. Например есть функция по отправке почты, но она не только отправляет но и принимает. В документации написано что идет ОТПРАВКА почты про прием почты НИ СЛОВА.

Насчет надежности: Работает не трогай. Проблем нету. ;)

lyk
Разработчики Fossmail
Сообщения: 38
Зарегистрирован: 19 фев 2009, 11:44
2 + 2 = ?: 4

Re: автоматическая распаковка писем

Сообщение lyk » 08 авг 2014, 16:00

"Что-бы не было путаницы (в письмах могут быть одинаковые файлы), решили в общем каталоге создавать подкаталог по теме письма." - никто не гарантирует, что темы будут уникальными. Решение еще проще - без всяких скриптов. На отделение создается общий ящик группы (напр. ALL). В реале этих групп м.б. сколько угодно (бухгалтеры, депозитчики и т.д.). Отправитель пишет на адрес нужной группы в отделении, а на приемной стороне на узле в маршрутных таблицах за группой закрепляются конкретные конечные получатели, которым и разбрасывается пришедшая на группу корреспонденция. Что не у всех получателей есть почтовый ящик - это организационные погрешности (люди должны участвовать в тех.процессе, а у них нет элементарного доступа). Если нужна реализация каких-то сложных механизмов взаимодействия людей через хитрую параллельно-последовательную обработку пришедших, в том числе и по почте, документов, т.е. задачи автоматического обхода соисполнителей принятыми документами, синхронизации обработки и в соответствии с реакцией каждого - это задачи системы документооборота предприятия. Да и понятие "папка"/"каталог", "сервер общих файлов" в бизнес логике отсутствует - другой уровень абстракции.

dpi0519
Новичок
Сообщения: 6
Зарегистрирован: 01 авг 2014, 13:03
2 + 2 = ?: 4

Re: автоматическая распаковка писем

Сообщение dpi0519 » 11 авг 2014, 14:21

1. начальник всегда прав.
2. см пункт 1.

Гос. структура однако ;) Ящиков всем не хватает. С организацией делопроизводства не поспоришь. Поставленная задача решена, а это главное.

Ответить

Вернуться в «FossMail»