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

Сегодня, когда я отправляю основные электронные письма, я использую класс «Почта», который является пользовательской оболочкой с помощью 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('contact@mydomain.com') ->to('mail@example.com', array('username' => 'Boris')) ->transport(Mail::SMTP) ->send(); 

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

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

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

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

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

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

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

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

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

Это не позволяет пользователю получить доступ к данным, которые у него отсутствуют, и запретить пользователям не администраторам доступ к методам API-интерфейса администратора (например, создавать пользователей).

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

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

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

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

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

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

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

  • Mailchimp
  • Sendinblue
  • MPZMail
  • Campayn
  • FreshMail

и т. д. Но все они хотят управлять контактами и множеством вещей, на которые мне не все равно.

Мне просто нужен сервис без интерфейса , который делает что-то близкое к тому, что я описал выше:

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

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

С уважением.

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

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

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