Как отправить почту на 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 |