2012-01-19 3 views
1

Я создаю простой HTTP-прокси, который будет размещаться между мобильными приложениями и сервером SOAP-сервера. Прокси-сервер будет завернут в фильтр, который отправляет уведомления по электронной почте и sms при обнаружении определенных типов сообщений. Я решил использовать Scala, Finagle и Heroku. Однако мой клиент настаивает на том, что система не должна быть привязана к Heroku, если когда-либо они решат разместить на своих серверах Ubuntu. Таким образом, они скептически относятся к использованию плагинов Heroku, что затруднит настройку той же услуги на Ubuntu позже.Отправка электронной почты и SMS с Scala с использованием сервера Heroku и Ubuntu

Если кто-то может поделиться некоторыми идеями по решению этой проблемы, я буду очень благодарен. В частности:

  • Есть ли что-нибудь особенное для запуска Finagle на Ubuntu? Могу ли я просто использовать SBT, чтобы все было «волшебным»?
  • Есть ли хорошие решения, библиотеки или службы там, что позволяет отправлять почту или SMS простым и безопасным способом, который будет хорошо играть как с Heroku, так и с Ubuntu?
  • Отправка почты из Java типично использует свойства системы. Как настроить это для удаленного сервера, такого как Heroku?

ответ

0

Отправка почты из Java не требуется систему свойства:

Properties props = new Properties(); 
props.put("mail.smtp.auth", "true"); 
Session session = Session.getInstance(props); 
Message message = new MimeMessage(session); 
message.setFrom(new InternetAddress("[email protected]")); 
message.setRecipients(Message.RecipientType.TO, new InternetAddress("[email protected]")); 
message.setSubject("Some Subject"); 
message.setText("Some Message"); 
Transport transport = session.getTransport("smtp"); 
transport.connect(host, port, username, password); 
Transport.send(message); 

нагрузки реквизита и хост, порт, имя пользователя, пароль из файла свойств, если вам нравится. Или из базы данных.

Таким образом, отправка почты полностью не зависит от Ubuntu и Heroku.

Отправка SMS Я сделал вот так: http://nexmo.com/documentation/libs/index.html#java