- PVSM.RU - https://www.pvsm.ru -

Письма для ваших приложений (за 24-часа)

Всем привет. Большую часть времени я занимаюсь управлением разработкой проектов shopium.ua и zakaz.ua, но инженер внутри меня периодически требует развлечений. Не имея свободного времени на хакатоны, гаражи, стартап-сауны и прочее, я придумал себе свой формат «покодить чего душа пожелает»:

  • нужен мне самому
  • время на реализацию MVP — до 24х часов в сумме
  • бюджет — до $100
  • коммерческий потенциал

В наших проектах мы шлём пользователям письма. Мы шлём пользователям информационные рассылки, и с этим прекрасно справляется MailChimp, но ниша отсылки транзакционных писем (подтверждения, уведомления и т.д.) до недавнего времени была относительно пуста.

В большинстве проектов, которые я знаю, транзакционные письма прямо в коде создаются из шаблона письма (и хорошо если он вынесен в отдельные файл, а не зашит рядом в коде), и передаются локальному SMTP серверу. И при этом:

  • менять текст сообщений могут только программисты (это медленно и дорого, и при этом невозможно делегировать работу с текстами контент-менеджеру, а для любого изменения текста писем нужен редеплой системы)
  • не отслеживается открытие писем и клики по ссылкам (нет данных для улучшения текста письма)
  • не обрабатываются bounce (можно постоянно слать письма на несуществующие адреса, а это влияет на показатель «спамности» адреса, с которого шлются письма)
  • лишь у некоторых реализована подпись писем через DKIM (тоже уменьшает шансы на доставку письма в inbox)

Я решил за 24 часа сделать сервис, с помощью которого можно будет надёжно слать красивые письма, быстро менять их текст, и отслеживать статистику. Встречайте Notifout [1].

Что такое Notifout?

Письма для ваших приложений (за 24 часа)

Notifout.com [2] — это сервис для отправки транзакционных сообщений вашим пользователям, и работает он так:

  • вы в Notifout объявляете список шаблонов писем, которые вы хотите рассылать
  • когда нужно отослать пользователю письмо вы из своего приложения делаете HTTP POST запрос, передавая идентификатор шаблона, и любые дополнительные данные в виде JSON
  • Notifout используя ваш шаблон, и переданные данные сформирует HTML и plain-text версии письма, соберёт их в одно письмо, проставит токены для отслеживания открытия, пропишет в ссылках код для отслеживания кликов, проставит правильные заголовки для Return-Path и List-Unsubscribe, подпишет письмо с помощью DKIM ключа, и отправит получателю.

Письма для ваших приложений (за 24 часа)

Письма для ваших приложений (за 24 часа)

Вся информация о взаимодествии получателя с письмом
Письма для ваших приложений (за 24 часа)

В случае если адресат недоступен — Notifout корректно отработает bounce, и отразит это в статусе письма.
Письма для ваших приложений (за 24 часа)

О времени и ресурсах

Разработка велась в основном в перерывах между поездками и встречами, вечером под любимый сериал. В запланированный формат удалось вписаться практически полностью. Первая версия, заняла 23:30 (включая локализацию ru/en и оплату через PayPal/LiqPay), всё отсылала, принимала и всячески работала, но чтобы вписаться в тайминг из неё пришлось исключить реализацию DKIM/SPF. После релиза [3] добавление SPF+DKIM заняло ещё около 4х часов.

Финансовые затраты:

Осталось: $52,52

В планах было чтобы не мозолить стандартным бутстрепом глаза — купить симпатичную тему на https://wrapbootstrap.com/ [7], но пока всё достаточно симпатично и так.

Благодарности

Конечно такой результат за 24 часа был бы не возможен без прекрасного FOSS софта, и отличных сервисов:

Итог

Мы уже используем его в своих проектах, но мне хочется поделиться им с окружающими, поэтому для всех пользовтелей хабра до 01.08.12 действует акция:
Зарегистрируйтесь на http://notifout.com [19], и напишите на serg@notifout.com [20] кодовую фразу «Я c хабра», со ссылкой на свой профиль на хабре, и адресом под которым вы зарегистрировались в Notifout и я увеличу вам бесплатный лимит до 10 000 сообщений в месяц.

И на дессерт — видео 24х часов создания Notifout, сжатое до 11 минут, под аккомпанемент прекрасного пси-транса Etnica — Full-on:

Автор: rushman


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/json/11856

Ссылки в тексте:

[1] Notifout: http://notifout.com/?utm_source=habr&utm_medium=article&utm_content=before-cut&utm_campaign=articles

[2] Notifout.com: http://notifout.com/?utm_source=habr&utm_medium=article&utm_content=after-cut&utm_campaign=articles

[3] релиза: https://www.facebook.com/serg.kirillov/posts/447503825274974

[4] Венских Булочках: http://afisha.tochka.net/restaurants/23786-venskie-bulochki/

[5] Хостинг: https://www.reg.ru/?rlink=reflink-717

[6] StartSSL: http://habrahabr.ru/post/106252/

[7] https://wrapbootstrap.com/: https://wrapbootstrap.com/

[8] Python: http://www.python.org

[9] Flask: http://flask.pocoo.org/

[10] SQLAlchemy: http://www.sqlalchemy.org/

[11] Jinja2: http://jinja.pocoo.org/docs/

[12] gevent: http://www.gevent.org/

[13] Inbox.py: http://habrahabr.ru/post/143241/

[14] Postfix: http://www.postfix.org/

[15] Twitter Bootstrap: http://twitter.github.com/bootstrap/

[16] Linode: http://www.linode.com/

[17] Linode Birthday Giveaway: http://blog.linode.com/2012/06/16/linode-birthday-giveaway/

[18] Mailtrap.io: http://mailtrap.io/

[19] http://notifout.com: http://notifout.com/?utm_source=habr&utm_medium=article&utm_content=call-to-action&utm_campaign=articles

[20] serg@notifout.com: http://serg@notifout.com