Pull to refresh

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

Reading time 3 min
Views 4K
Всем привет. Большую часть времени я занимаюсь управлением разработкой проектов shopium.ua и zakaz.ua, но инженер внутри меня периодически требует развлечений. Не имея свободного времени на хакатоны, гаражи, стартап-сауны и прочее, я придумал себе свой формат «покодить чего душа пожелает»:
  • нужен мне самому
  • время на реализацию MVP — до 24х часов в сумме
  • бюджет — до $100
  • коммерческий потенциал


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

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


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


Что такое Notifout?




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





Вся информация о взаимодествии получателя с письмом


В случае если адресат недоступен — Notifout корректно отработает bounce, и отразит это в статусе письма.


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


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

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


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

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

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


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


Итог


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

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


UPD1: Кстати, всем кому интересна тема рекомендую почитать прекрасную статью от MailChimp Email Delivery For IT Professionals
Tags:
Hubs:
+77
Comments 45
Comments Comments 45

Articles