Відправка пошти через командний рядок або powershell

! Хочу звернути увагу на ось ці дані

rem SMTP сервер для відправки повідомлення, наприклад, smtp.mail.ru
set from_server = smtp.inbox.ru
rem Порт SMTP сервера для відправки, наприклад 2525 порт
set from_port = 2525

Ця штуковина, в нашому випадку, дає нам можливість підключатися з безпечного з'єднання з локального комп'ютера.

Після установки утиліти потрібно через cmd.exe перейти в папку, куди була встановлена ​​програма, і виконати

щоб встановити програму як службу

щоб програма запустилася як служба

! Чи не закриваємо командний рядок

Потім, відкрити і відредагувати файл

C: \ Program Files (x86) \ stunnel \ stunnel.conf

цим самим ми оновлюємо конфігураційний файл.

Ну, а тепер повернемося до вказівкою SMTP сервера і порту для відправки пошти з командного рядка, а саме, замінюємо

rem SMTP сервер для відправки повідомлення, наприклад smtp.mail.ru
set from_server = smtp.inbox.ru
rem Порт SMTP сервера для відправки, наприклад 2525 порт
set from_port = 2525

нами раніше рядки в файлі send.bat на

rem Тепер SMTP сервер це наш комп'ютер

rem Порт, взятий з stunnel.conf

Ось і все, кидаємо цей «батник» в Планувальник завдань, прив'язавши до якого то події, або вставляємо весь вміст з send.bat в свій батник, наприклад, який робить щось корисне, і буде вам повідомлення, що щось корисне виповнилося, в моєму випадку вийшло, що один «батник» викликається Планувальником, який спочатку архівує файлову базу БД, відправляє БД на фтп сервер і потім відправляє мені по електронній пошті про виконання.

Так само, наведу приклад, для загального огляду відправки електронного листа за допомогою Powershell.

Створимо файл name.ps1 куди помістимо

$ Subject = "Тема повідомлення"

$ Body = "Текст повідомлення"

$ SMTPServer = "127.0.0.1 \ так як і вище, потрібно використовувати для відправки stunnel"

# 587 тут иммет зважаючи порт, див. Вище про stunnel

$ SMTPClient = New-Object Net.Mail.SmtpClient ($ SmtpServer, 587)

$ SMTPClient.Send ($ EmailFrom, $ EmailTo, $ Subject, $ Body)

Send-MailMessage -From $ EmailFrom -To $ EmailTo -Subject $ Subject -Body $ Body -SmtpServer $ SMTPServer

Схожі статті