Использование электронной почты на ruby ​​без электронной почты - PullRequest
1 голос
/ 25 июля 2011

Я хотел бы отправить электронное письмо, не настраивая внешнюю учетную запись электронной почты и не настраивая собственный сервер. В идеале мне не нужно ничего делать, кроме как вводить код в команду ruby.

Есть ли способ сделать это?

Я не смог найти четкого пошагового руководства по использованию электронной почты на ruby, кто-то может указать мне правильное направление? Пожалуйста, предположите, что я ничего не знаю. Благодарю. Я не использую рубин на рельсах. : -)

Я попробовал пони, но, похоже, мне нужно письмо, чтобы отправить сообщение с ...? Я хотел бы отправить сообщение напрямую с ruby.

1 Ответ

3 голосов
/ 25 июля 2011

Это зависит.Вот некоторые методы:

  • Обратный адрес не должен быть действительным, вы можете его создать.Но разве вы не хотите, чтобы обратный адрес был хотя бы реальным под вашим контролем?
  • Оригинальный, официальный IETF способ сделать это включал поиск записи MX или A для вашего пункта назначения в DNS изатем отправка почты через SMTP на этот хост через поток TCP через порт 25. Существуют гемы, которые будут делать это.
  • На сервере вышеописанное работает, но опять же, сервер должен работать самостоятельноретрансляция почты с очередями и повторными попытками и т. д. Таким образом, усовершенствование вышеупомянутой техники состоит в том, чтобы просто пропустить DNS и отправить сообщение на localhost: 25.
  • Но если это сервер, не требуется чтобы говорить по SMTP, нужно всего 5 или 10 строк кода для popen () одного из почтовых агентов CLI, а именно: sendmail, mailx или mail.Вы можете просто написать свое сообщение с помощью puts() сейчас.
  • Если это не сервер (домашний кабель или DSL) или его виртуальный сервер (EC2), то могут существовать какие-то ограничения на прямую почтовую передачу.Если вы управляете своим собственным ретранслятором где-то в облаке на выбранном вами номере порта, вы можете обойти эти ограничения.
  • Чисто технического решения может быть недостаточно, если вы отправляете больше почты, чем черный список или ваш облачный провайдер утверждаетиз.Решение , что , заключается в привлечении сторонней службы доставки почты.Одной из их задач является социальный инжиниринг в черных списках и сохранение бизнеса.
...