Как отправить почту на SMTP сервер Gmail (Google) через программу Blat

(тут описывается способ отправки писем через утилиту blat.exe и используя SMTP сервер от Gmail - https://www.google.com)

 

Напоминаю, что программа Blat (http://www.blat.net) - это небольшая утилита, которая может посылать почту из "Командной строки". То есть, без полноценного почтового клиента. Может пригодиться для автоматизации оправки почты без участия пользователя.

Программа отлично работает с обычными SMTP серверами и описание наладки этого процесса достаточно хорошо документировано. И все было бы замечательно, но программа не умеет работать с SMTP серверами, которые при отправке почты требуют организации "Безопасного соединения" - SSL.

Хочется нам того, или не хочется, но это "Безопасное соединение" нам придется организовывать самим. И возьмем мы для этого программу "STunnel" (http://www.stunnel.org). Я лично качал программу по этой ссылке:

http://www.stunnel.org/download/stunnel/win32/stunnel-4.26-installer.exe

 

Инсталлируем программу, залезаем в корень этой проги и находим файл stunnel.conf Редактируем его и приводим этот вид:

; Some debugging stuff useful for troubleshooting

;debug = 7

;output = stunnel.log

 

; Use it for client mode

;client = yes

 

; Service-level configuration

[pop3s]

accept = 995

connect = 110

 

;[imaps]

;accept = 993

;connect = 143

 

[ssmtp]

accept = 465

connect = 25

 

к этому виду:

; Some debugging stuff useful for troubleshooting

debug = 7

;output = stunnel.log

 

; Use it for client mode

client = yes

 

; Service-level configuration

[pop3s]

accept = 127.0.0.1:1109

connect = pop.gmail.com:995

 

;[imaps]

;accept = 993

;connect = 143

 

[smtps]

accept = 127.0.0.1:1099

connect = smtp.gmail.com:465

После чего, воспользовавшись уже созданными во время инсталляции программы ярлыками в меню "Пуск" винды, "Инсталлируем службу" (Service install) и "Стартуем службу" (Service start).

Далее распаковываем (обычной инсталляции она не требует) программу Blat в каталог, (пусть это будет каталог C:\Blat\), и запускаем C:\Blat\blat.exe /? Программа выдаст все параметры, с которыми она может работать.

Теперь делаем один важный момент. Запускаем из "Командной строки" такую команду:

C:\Blat\blat.exe -install -serverSMTP 127.0.0.1 -portSMTP 1099 -try 1 -u vasya@gmail.com -pw 12345 -f vasya@gmail.com

C:\Blat\blat.exe - это, разумеется, путь, где сидит наш запускаемый екзешник

-install - это ключ, заставляющий Blat записать в реестр винды настройки, которые следуют далее в нашей командной строке

-serverSMTP 127.0.0.1 - это сервер SMTP (который прописан нами в настройках в "Stunnel".

-portSMTP 1099 - порт SMTP сервера (который прописан нами в настройках "Stunnel".

-try 1 - это число попыток, если отправка почты не удалась (необязательный параметр).

-u vasya@gmail.com - имя пользователя

-pw 12345 - пароль

-f vasya@gmail.com - от имени кого будет приходить почта

 

После выполнения строки, в реестре, по этому пути:

HKEY_LOCAL_MACHINE\SOFTWARE\Public Domain\Blat

сохранятся настройки, которые потом уже не нужно будет указывать при отправке почты через Блат. Это удобно. К тому же, это еще и безопасно тем, что в дальнейшем вам не понадобиться в параметрах blat.exe, указывать свой пароль в открытом виде (в реестре он хранится в зашифрованном виде). Хочется отметить, что команду "-install " можно и не выполнять вовсе. Это не строго обязательно. Просто потом, в дальнейшем, в параметрах программы Blat, вам придется всегда указывать абсолютно все параметры, в том числе и пароль (в открытом виде). Полная строка в этом случае будет выглядеть так:

C:\Blat\blat.exe -subject "Eto tema soobscheniya" -body " Eto telo soobscheniya " -to sss@sss.net -serverSMTP 127.0.0.1 -portSMTP 1099 -f vasya@gmail.com -u vasya@gmail.com -pw 12345

 

А если мы выполнили команду "-install" и заранее прописали наши настройки в реестре, то строка отправки почты будет выглядеть так:

C:\Blat\blat.exe -subject "Eto tema soobscheniya" -body " Eto telo soobscheniya " -to sss@sss.net

Как мы видим, в этом случае достаточно лишь указать тему, тело письма и кому мы его посылаем. Коротко и просто.

 

После удачной отправки письма, в командной строке должно появится сообщение такого вида:

Sending stdin.txt to sss@sss.net

Subject: Eto tema soobscheniya

Login name is vasya@gmail.com

Разумеется, без каких либо сообщений об ошибках

 

Создав обычный bat-файл, и запихнув туда такие строки:

C:\Blat\blat.exe -subject "Fayl 001" -body "Fayl 001" -to sss@sss.net -attach E:\ForDC\part001.rar

ping -n 180 localhost > nul

C:\Blat\blat.exe -subject "Fayl 002" -body "Fayl 002" -to sss@sss.net -attach E:\ForDC\part002.rar

ping -n 180 localhost > nul

C:\Blat\blat.exe -subject "Fayl 003" -body "Fayl 003" -to sss@sss.net -attach E:\ForDC\.part003.rar

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

Всем удачи в бою! :)

Данную статью можно обсудить на форуме

Или оставить о ней отзыв в Гостевой книге

Последнее обновление странички:

Дата:     21 ноября 2008 г.
Время:  11:16
Сайт управляется системой uCoz