Просмотр полной версии : Формирование и отправка email
Здравствуйте, хочу спросить совета. Я хочу создать возможность отправки письма опльзователю. Для этого я использую класс Socket.
Код выглядит следующим образом:
this.connect("127.0.0.1", 25);
this.writeUTFBytes ("HELO "+sHost+"\r\n");
this.writeUTFBytes ("MAIL FROM: <"+user@mail.ru+">\r\n");
this.writeUTFBytes ("RCPT TO: <"+user@gmail.ru+">\r\n");
this.writeUTFBytes ("DATA\r\n");
this.writeUTFBytes ("From : "+pFrom+"\r\n");
this.writeUTFBytes ("To : "+pDest+"\r\n");
this.writeUTFBytes ("Subject: "+pSubject+"\r\n");
this.writeUTFBytes ("Mime-Version: 1.0\r\n");
this.writeUTFBytes ("Content-Type: text/html; charset=UTF-8; format=flowed\r\n");
this.writeUTFBytes (pMess+"\r\n");
this.writeUTFBytes (".\r\n");
this.flush();
Работать отказывается :( почему не могу понять. Может кто-то уже сталкивался с подобной проблемой?
Приведи свой пост в надлежащий вид, оформив код, как полагается.
з.Ы. А с чего вы взяли, что у каждого пользователя на его компьютере установлен SMTP-сервер и что вообще, адрес 127.0.0.1 доступен в интернете?
:) это мой SMTP временный для проверки работы
Ну тогда имеет смысл прочитать про политику безопасности флеша и crossdomain.xml.
А что, неужели нельзя отправлять письма посредством какого-либо скрипта? Ведь открытый SMTP практически мгновенно будет забанен другими почтовыми серверами. И где вы его собрались брать, этот SMTP?
SMTP я создаю на своей машине с помощью фриварной тулзы. Можно конечно отправлять письмо с помощью php, я не отрицаю. Но пытаюсь обойтись возможностями AS
Помимо, политики безопасности, если уж постите что есть проблема, то можно еще хотя бы описать что именно происходит, какие еррор евенты выбрасывает объект Сокета и т.д.
И что, пользователи будут коннектиться к вашей машине и отправлять через неё письма?
onConnected: 220 ArGoSoft Mail Server Freeware, Version 1.8 (1.8.3.6)
onMailError: 250 Welcome [127.0.0.1], pleased to meet you
onMailError: 250 Sender "user@mail.ru" OK...
onMailError: 550 User not local. We don't relay
onMailError: 550 Incomplete envelope information
onMailError: 502 Unknown command
SMTP-сервер выдает сообщение о том, что он не является relay-сервером и отправляет письма исключительно с локальных адресов почты (т.е. с тех, что расположены на этом сервере).
Может лучше всё-таки php хотя бы?
к моей машине конектиться никто не будет. Будет использоваться SMTP сервера который будет предоставлять мне хостинг. Пока что такого у меня нет :(
А ждать результатов коннекта, отсылки комманд не надо? просто по тому коду что преведен не совсем понятно сразу ли все команды посылаются или как
скорее всего надо вернуться к php, спасибо за помощь
А ждать результатов коннекта, отсылки комманд не надо? просто по тому коду что преведен не совсем понятно сразу ли все команды посылаются или как
метод flush выполняет отправку письма. А события конекта и выполнения команд я перехватываю след. образом
mailer.addEventListener(Mailer.MAIL_SENT, onMailSent);
mailer.addEventListener(Mailer.MAIL_ERROR, onMailError);
mailer.addEventListener(Mailer.CONNECTED, onConnected);
mailer.addEventListener(Mailer.DISCONNECTED, onDisconnected);
Я не думаю, что SMTP провайдера позволит подставлять в кач. обратного адреса любой введенный. Так что эта затея заранее обречена на провал.
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.