Отправка email с вложениями из подпапок каталога
Здравствуйте. Хочу настроить отправку email из каталога C:/Mail/ с папками где, в каждой папке файл pdf или xls, который будет вложением в письмо.
Отправлять или средствами PowerShell или скриптом для MailAlert. Адрес получателя могу указать в каждой папке в виде файла с именем example@mail.com. Как сделать перебор папок с выводом в цикле переменных "адрес получателя" и "ссылка на файлы с вложением" или "файл с вложением"? потому что MailAlert может только одно вложение вставлять. После каждого цикла сделать перенос файлов вложений в отдельную одну папку архив. Если в какой-то папке нет файлов pdf и/или xls, то пропустить её. Будут ли проблемы, если папки и/или вложения будут на русском? Можно ли сделать так, чтобы скрипт проверял содержимое файла на наличие определенных слов, например во вложении есть слова "отправитель" и "получатель", а в папке есть файл words.txt, в котором указаны эти 2 слова, как некий параметр и если в содержимом файла нет этих слов, то в лог пишется ошибка и письмо не отправляется, файл не удаляется. Спасибо. |
Создайте примерную иерархию каталогов с файлами и выложите сюда в zip.
|
E_o, попробуйте описать саму задачу, а не выбранное решение.
|
Вложений: 1
Цитата:
|
Iska,
Задача: Отправлять письма с вложениями zip, pdf, xls, xlsx, doc, docx из каталога папок по разным адресатам с проверкой в тексте вложения корректности соответствия наименования отправителя и адресата. Документ вложение содержит имена отправителя - он один во всех документах - ГеннадийВВ, и адресата, АннаИЛ или ЗлатаГВ и т.д. в разных папках каталога. Этим именам соответствуют адреса электронной почты в каком-то произвольном документе. Все имена и почта уникальные. Это для того, чтобы в каталог АннаИЛ не попало вложение для ЗлатаГВ или не от ГеннадийВВ, потому что в папках они будут создаваться вручную. Если имена соответствуют, то отправить письмо с вложениями, а файлы переместить в отдельную папку, если не соответствуют, оставить их в папке и создать 1 файл с текстом ошибок: не совпадает адресат, не совпадает отправитель, не совпадает адресат/отправитель - в папке 1, папке 2 |
Могу сразу сказать, что проверять содержимое файла скриптом - занятие крайне неблагодарное, если вообще возможное. Во всяком случае, работать это будет супер-криво при том, что реализация такого добра невероятно трудоёмкая. Я за это точно не буду даже браться.
Ладно бы был один формат (лучше всего txt), ещё куда ни шло, а тут такой зоопарк. Тем более, тут и zip, и pdf, который может вообще не содержать текстового слоя. Насчёт остального - сейчас поковыряю. |
DJ Mogarych, спасибо.
Если бы и без проверки, то уже ах! Тогда емейл отправителя какой-то один на yandex.ru или gmail.com, а адрес получателя либо файлом с именем адреса или в текстовом файле в папке. |
Powershell:
Код:
$folders = dir C:\mail -Directory -Recurse |
DJ Mogarych,
спасибо, сейчас попробую |
Код:
$Encoding = [System.Text.Encoding]::UTF8 Большое спасибо. Письма отправляются, доходят. |
Время: 11:47. |
Время: 11:47.
© OSzone.net 2001-