05.02.2009, 08:41
общий
это ответ
Здравствуйте, Karlson!
Отправка почты
Стандартный порт smtp-сервера: 25.
будем использовать программу Telnet.
Программа Telnet входит в поставку всех операционных систем которые поддерживают tcp/ip.
Для пользователей Windows: Start(Пуск)->Run(Выполнить).
В окошке набираем: telnet smtp.mail.ru 25
Должна запуститься программа и сразу подсоединиться к серверу. Об удачном подключении будет свидетельствовать сообщение от сервера (что-нибудь в таком роде):
220 mx7.port.ru ESMTP MAIL.RU Mon, 2 Apr 2001 03:56:38 +0400
Это сообщение говорит нам что сервер готов к работе. Теперь можно вводить команды.
Для начала можно ввести команду HELP. На эту команду сервер ответит:
214-Commands supported:
214- HELO EHLO MAIL RCPT DATA
214 NOOP QUIT RSET HELP
это список команд, которые поддерживает сервер.
пример отправки сообщения.
Для начала нужно представиться серверу, набираем команду HELO [domain]. Domain - это имя домена, но для нас это непринципиально, вместо domain пишем все что угодно:
HELO 12345
ответ сервера:
250 mx7.port.ru Hello dialup16-45.iptelecom.net.ua [212.9.229.237]
сервер показал нам наше имя хоста и ip-адрес (dialup16-45.iptelecom.net.ua [212.9.229.237]). Эта информация потом будет добавлена в заголовок письма и получатель письма если его заинтересует дополнительная информация может запросто увидеть ее, заглянув в свойства письма. Следующая команда - MAIL, эта команда обязательна, используем ее для указания адреса отправителя. Синтаксис:
MAIL FROM: siraxxx@mail.ru
ответ сервера:
250 <siraxxx@mail.ru> is syntactically correct
Обратный адрес (адрес отправителя) можно придумать и указать любой.
Тепрь необходимо указать адрес получателя сообщения:
RCPT TO: siraxxx@mail.ru
ответ сервера:
250 <siraxxx@mail.ru> verified
здесь указан свой собственный адрес, т.е. письмо, прийдет отправителю. Я вам рекомендую сделать также, тогда вы будете уверены, что все сделали правильно - после того, как получите свое собственное сообщение.
И последняя основная команда:
DATA
ответ сервера:
354 Enter message, ending with "." on a line by itself
Это вход в режим набора письма. Здесь нельзя вводить команды smtp. чтобы закончить ввод и выйти обратно в командный режим, нужно нажать [Enter] (перейти на новую строку), набрать символ [.] (просто ввести точку без скобок) и опять нажать [Enter]. Проще говоря, конец письма - это ввод точки с новой строки.
А теперь о теле письма.
Можно конечно сразу после входа в режим набора сообщения, начинать набирать текст. Но такое сообщение будет даже без поля Subject (то есть без темы). Хотя знать стоит только об одном поле: [reply-to].
После того как вы набрали команду DATA, для начала укажите поле reply-to:
reply-to: dr_stark@chat.ru
Зачем это поле?
это поле не команда smtp, а просто сообщение для почтового клиента (вспомогательная информация, типа того же subject). Многие почтовые клиенты показывают в пришедшем письме только адрес отправителя указанный командой [mail from] а адрес указанный в поле [reply-to] не показывает. Но если ответить на такое сообщение (например: нажать кнопку ответить) ответ пойдет по адресу указанному в поле [reply-to]
Дополнительная информация.
Если вы хотите, чтобы в отправленных вами письмах присутствовала "тема", то после ввода поля [reply-to], введите поле [subject].
subject: subj of message
после этого можете приступать к набору сообщения. Когда закончите - вводите точку с новой строки, и вы вернетесь в командный режим. Там вам сервер сообщит, что ваше сообщение принято:
250 OK id=11oivl-0000hm-00
Теперь можно ввести еще сообщения или отключиться, набрав команду QUIT.
Итого: как все это выглядит на экране Telnet-а:
220 mx7.port.ru ESMTP MAIL.RU Mon, 2 Apr 2001 03:56:38 +0400
HELP
214-Commands supported:
214- HELO EHLO MAIL RCPT DATA
214 NOOP QUIT RSET HELP
HELO 12345
250 mx7.port.ru Hello dialup16-45.iptelecom.net.ua [212.9.229.237]
MAIL FROM: siraxxx@mail.ru
250 is syntactically correct
RCPT TO: siraxxx@mail.ru
250 verified
DATA
354 Enter message, ending with "." on a line by itself
reply-to: dr_stark@chat.ru
subject: subj of message
this message content line1
content line2
.
250 OK id=14oivl-0000hm-00
QUIT
221 mx7.port.ru closing connection
все ответы сервера начинаются с какого-то числа. Это "коды ответов" сервера. Только эти цифры являются обязательными ответами, текст, который идет после них, предназначен для упрощения понимания, и на разных серверах этот текст может быть разным, а на некоторых, возможно, вообще могут быть цифры без текста.