В двух словах: синхронизация базы данных с рассылочным сервисом нужна, чтобы
Конечно, вы можете ежедневно
А как быть с автоматическими письмами? Если массовая рассылка еще немного подождет, то welcome-серия, запрос отзыва и предложение скидки на вторую покупку должны отправляться точно по расписанию и не зависеть от того, как часто вы обновляете базу.
Появляется необходимость отправлять данные в сервис рассылок
Как синхронизироваться
Если в случае с формами подписки вы еще могли как-то обойтись своими силами (скажем, раздобыть готовое решение и подправить пару строчек в коде), то чтобы осуществить синхронизацию баз данных, уже точно не обойтись без специальных навыков.
Вам понятно, что здесь написано? Мне – не очень:-) И на этом этапе я предпочитаю звать на помощь
Автоматическое взаимодействие с рассылочным сервисом осуществляется при помощи API (
Как правило, часть методов вполне соответствует возможностям пользовательского интерфейса сервиса. То, что вы можете сделать при помощи разнообразных функций внутри сервиса (добавить подписчика, обновить информацию о нем, отписать от рассылки), можно реализовать и снаружи, используя соответствующие возможности API.
Если вы подобрали рассылочный сервис по всем правилам (см. подробности во второй главе), то API у него уже есть, как и подробная техническая документация, описывающая набор доступных методов.
Может быть, вы решите, что остается только передать всю информацию программисту и спокойно ждать результата, – однако это не совсем так.
Техническое задание на синхронизацию
Чтобы на выходе получить именно тот результат, на который мы рассчитываем – а именно, «заводить» в рассылочный сервис все необходимые данные в строго определенной последовательности, – нам понадобится составить детальное техническое задание (ТЗ) на синхронизацию.
• общая постановка задачи;
• вспомогательные материалы;
• набор данных для синхронизации;
• описание событий, при которых она срабатывает;
• примеры реализации.
Постановка задачи
Коротко формулируем, какой результат мы хотим получить в итоге.
Например: синхронизировать базу данных интернет-магазина shop-example.ru и рассылочного сервиса email-service.com.
Вспомогательные материалы
Здесь мы предоставляем исполнителю все, что может понадобиться для работы:
• доступ к рассылочному сервису (логин/пароль);
• документацию API (ссылку на ресурс, где она размещена);
• ключ API (специальный код для подключения сайта к сервису);
• список рассылки (ссылку на базу данных в сервисе, куда отправлять данные).
База в сервисе должна быть надлежащим образом подготовлена: содержать столбцы для всех видов данных с ячейками определенного типа (текст, даты, числа).
Набор данных
На этом этапе перечисляем все данные о подписчиках, какие хотим заводить в сервис. Удобно снабдить их короткими комментариями – для чего нужен каждый вид данных и как мы собираемся его использовать:
Набор данных, который нам понадобится, предопределен нашим планом (конечно, можно добавить и что-нибудь от себя):
• e-mail;
• имя;
• город;
• источник подписки;
• дата последнего заказа;
• количество заказов.
События
Ядро нашего ТЗ – события, которые инициируют передачу данных в рассылочный сервис.
• подписка на рассылку (любым способом);
• заказ товара;
• обновление профиля подписчика на сайте (если есть).
Верный признак, что событие должно быть включено в задание: оно является исходной точкой для отправки автоматического сообщения. Например, нас интересует подписка на рассылку, чтобы мы могли запустить welcome-серию. Или очередной заказ пользователя, чтобы запросить отзыв.
В ТЗ вносим не только события, но и описание, что происходит при каждом из них: