Протокол SMTP

Описание отсылки сообщений через внешний протокол SMTP в системе «ISBC Telecom».

Протокол SMTP позволяет реализовать отсылку сообщений на мобильные телефоны через стандартные средства работы с электронной почтой, такие как почтовые программы или собственные приложения, использующие широко распространенные программные библиотеки.

Протокол SMTP и его дополнительные возможности, задействованные в системе «ISBC Telecom», описаны в следующих документах :

  • RFC2821 : Simple Mail Transfer Protocol
  • RFC2554 : SMTP Service Extension for authentication
  • RFC4616 : The PLAIN Simple Authentication and Security Layer (SASL) Mechanism
  • RFC2487 : SMTP Service Extension for Secure SMTP over TLS

1. Параметры

  • Адрес сервера : sms.qtelecom.ru
  • Порт : 2525
  • Тип авторизации : PLAIN (открытым текстом)
  • Шифрованный канал SSL : опционально через команду STARTTLS
  • Login/password : совпадают с login/password на web-сайт https://go.qtelecom.ru
  • Кодировка сообщений : любая, совместимая с MIME 1.0
  • Максимальная длина сообщений : 480 символов.

2. Трактовка адресов отправителя и получателя

Домен получателя может принимать значения:

  • sms.qtelecom.ru : отправка текстовых сообщений на мобильные телефоны (SMS).

Адрес получателя трактуется следующими способами :

  • Адрес list_XXXXX@… воспринимается как команда разослать сообщение на контакт-лист с кодовым именем XXXXX. Контакт-листы и их кодовые имена настраиваются в WEB-интерфейсе https://go.qtelecom.ru.
  • В противном случае, при отсылке на XXXXX@…, XXXXX воспринимется как номер телефона. Символы '(',')','-' игнорируются.

Адрес отправителя почтового email сообщения используется только в тех случаях, когда отправка идет на номер телефона, и преобразуется в имя отправителя сообщения на мобильный телефон. Преобразование производится по следующему алгоритму :

  • Если email отправитель зарегистрирован как псевдоним отправителя телефонного сообщения, то используется соответствующий ему отправитель телефонного сообщения.
  • Если email начинается с 'default@', то используется отправитель по умолчанию для агента.
  • В остальных случаях за отправителя принимается текст до знака '@', а домен - игнорируется.

3. Специальные расширения протокола

В протоколе SMTP реализована возможность сверки статуса отосланных сообщений. После приема сообщения по команде «DATA» SMTP сервер выдает следующий статус :

S: 250 <id> message accepted

, где <id> - идентификатор сообщения. В последствии статус сообщения можно узнать командой «STATUS» :

C: STATUS <id>
   S: 250 <id> <res_count> <closed> <status_code>    any text

, где

  • <id> - идентификатор сообщения;
  • <res_count> - количество единиц ресурса. Для SMS сообщений - количество кусков.
  • <closed> - [0,1] - признак закрытия обработки сообщения;
  • <status_code> - код статуса, где «0» - сообщение находится в процессе доставки; «1» - сообщение принято оператором, но статус доставки неизвестен; «2» - сообщение доставлено; «3» - время попыток доставить сообщение оператором истекло; «5» - сообщение не может быть доставлено (ошибка в номере, номер не существует и т.д.); «8» - сообщение не принято оператором; «20» - отправка была отменена пользователей; «21» - ошибка при работе по сообщению; «22» - оператор не сообщил о состоянии сообщения за отведенное время.

4. Пример сеанса отсылки SMS

S: 220 Message gateway
   C: EHLO mycomputer
   S: 250-SMTP Server
   S: 250-8BITMIME
   S: 250-STARTTLS
   S: 250-AUTH LOGIN PLAIN
   S: 250 Ok
   C: AUTH PLAIN
   S: 334 Ok
   C: ADMAZnJlZXRlc3Q=
   S: 235 Authentication successful.
   C: MAIL FROM:<default@mydomain.ru>
   S: 250 Ok
   C: RCPT TO:<89061234567@sms.qtelecom.ru>
   S: 250 Ok
   C: DATA
   S: 354 End data with <CR><LF>.<CR><LF>
   C: From: SMSGW <default@mydomain.ru>
   C: To: 89061234567@sms.qtelecom.ru
   C: MIME-Version: 1.0
   C: Content-Type: text/plain; charset=windows-1251
   C: Content-Transfer-Encoding: quoted-printable
   C: 
   C: Privet !
   C: .
   C: {377 bytes sent}
   S: 250 33 message accepted.
   C: STATUS 4418
   S: 250 4418 1 0 0 Message is accepted for delivery
   C: RSET
   S: 250 Ok
   C: QUIT
   S: 221 Bye

5. Пример настройки программы thebat

Создайте новый почтовый ящик.

image001.png
image003.png

Впишите E-mail отправителя согласно правилам из раздела «Трактовка адресов отправителя и получателя».

image005.png

Укажите SMTP сервер исходящей почты и пометьте флажок «SMTP сервер требует аутентификацию».

image007.png

Впишите ваши имя пользователя и пароль.

image009.png

image011.png

После создания ящика вызовите его свойства и исправьте порт исходящего SMTP сервера с 25 на 2525.

image013.png

Настройки закончены. Можно отсылать SMS.

image015.png