Самый эффективный способ рассылки новостей

Сегодня, когда я отправляю основные электронные письма, я использую класс «Mail», который представляет собой пользовательскую оболочку, использующую SwiftMailer, например:

<?php
Mail::create('Message title')
->template('Template string or view path. Global variable "var" is "{var}". Current user is {username}.')
->tags(array('var' => 'value 1'))
->from('[email protected]')
->to('[email protected]', array('username' => 'Boris'))
->transport(Mail::SMTP)
->send();

Он отлично работает для основных электронных писем, но не может быть использован для отправки информационных бюллетеней по нескольким причинам:

  • Нет управления бассейном
  • Нет отложенной отправки
  • Нет отслеживания

Поэтому я подумал о способе централизовать более сложное управление электронной почтой. Я сделал схему:

введите описание изображения здесь

Я не хочу, чтобы удаленный сервер сохранял какую-либо контактную информацию, только кампании, получатели и статистика, как на следующей диаграмме:

Диаграмма базы данных

«данные«Поле»ПолучательТаблица предназначена для хранения пользовательской структуры данных, которая будет отправлена ​​обратно, когда у API запрашивается информация о получателе. Например:

<?php
$result = NewsletterAPI::getRecipientsViewReport($campaignRef);
//
// Will contain something like :
// Array
// (
//   [recipients] => Array
//     (
//       [0] => Array
//         (
//           [email] => [email protected]
//           [opened] => 3
//           [last_open_date] => '2015-02-02 12:32:23',
//           [data] => Array
//             (
//               [id] => 123
//             )
//         )
//       [1] => Array
//         (
//           [email] => [email protected]
//           [opened] => 0
//           [last_open_date] => null,
//           [data] => Array
//            (
//              [id] => 17
//            )
//        )
//    )
// )

Удаленный сервер не заботится ни о чем, кроме отправки электронных писем и получения статистики по ним. Независимо от того, какие объекты находятся за адресами электронной почты или как пользователи управляются.

Это только предотвращает доступ пользователя к данным, которые ему не принадлежат, и предотвращает доступ пользователей с правами администратора к методам API администратора (например, создание пользователей).

Таким образом, это очень легко интегрировать в любой веб-сайт, мне просто нужно сохранить ключ API учетной записи, с которой я хочу отправлять почту (например, добавив «mailing_api_key«поле по моему»пользовательсущность например).

Итак, мой вопрос

Прежде всего, что вы думаете об этой архитектуре?

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

Помимо этого, есть три основные проблемы, о которых я могу думать:

  • Быть в черном списке,
  • У меня плохие статистические результаты, потому что я не знаю другого способа отслеживать просмотры, кроме использования изображения для отслеживания, и его очень легко заблокировать,
  • Обнаружение отказов кажется довольно сложным из того, что я прочитал, и у меня нет никакого опыта с этим.

Поэтому я провел несколько исследований, чтобы найти специализированные сервисы, которые могут справиться с этим, например:

и так далее … Но все они хотят управлять контактами и многими вещами, которые мне безразличны.

Я просто хочу услугу без интерфейса вообще, сделать что-то близкое к тому, что я описал выше:

  • Динамическое создание учетной записи (только для учетной записи администратора),
  • Отправлять электронные письма на пользовательский список адресов каждый раз, без ограничений и без предварительно созданного списка рассылки любого рода,
  • Простой способ получить:
    • список кампаний (пользователя, выполняющего запрос),
    • статистика кампании,
    • статистика по конкретному адресу,
  • и это все !

Большое спасибо, если вы прочитали все это, я надеюсь найти решение.

С уважением.

4

Решение

Большинство (крупных) компаний просто используют сторонние API, такие как mailchimp. Просто подпишитесь на рассылку новостей нескольких компаний и посмотрите заголовок письма.

Существует причина, по которой компании с бюджетом, превышающим миллионы, будут использовать сторонние информационные бюллетени. У вас будет много проблем со спам-фильтрами и проблемы, о которых вы еще не знаете … В разных странах даже существуют разные законы. (пример: в Германии вы должны предоставить ссылку для отмены подписки в письме).

Эти сторонние информационные агентства предоставляют API, которые вы можете интегрировать в php.

2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]