18 мая 2021 года был заблокирован почтовый сервис mail.tut.by. Я предлагаю оставить политические/правовые и этические нюансы данного события и поговорить о практических.
В результате данного решения несколько миллионов пользователей почтовых ящиков в данном сервисе (включая меня) оказались в довольно деликатном положении. Многие имели глупость привязать к данному почтовому ящику важные аккаунты, подписки, и теперь чувствуют себя несколько неуютно.
Из немногочисленных сообщений в сети складывается впечатление, что компаниям TUT.by и hoster.by сейчас совсем не до спасения почтового сервиса. В целом, это вполне понятно, с учетом того, что речь идет о вполне реальных перспективах лишиться бизнеса в принципе и отхватить срок.
Теперь вопрос, что с этим всем делать? Специально для вас я подготовил небольшую инструкцию наиболее безболезненного выхода из ситуации.
Почта tut.by хостилась на почтовом сервисе от компании Яндекс. Это значит, что есть неплохие шансы того, что вы еще сможете получить к ней (возможно временный) доступ:
Перейдите по адресу https://mail.yandex.by/
Попробуйте авторизоваться с помощью вашего логина и пароля для почту tut.by
Если у вас получилось залогиниться - у вас есть возможность спасти (сохранить локально\распечатать\переслать на другой ящик) важные письма. После чего переходим к шагу 2.
Если нет - селяви. Пока (а может и вообще) ничего сделать нельзя, и Яндекс на встречу идти не планирует, упорно отправляя к "администратору домена tut.by", которого больше нет. В этом случае переходим к шагу 3.
Настройте переадресацию на другой почтовый ящик - так, в случае последующей потери доступа к ящику tut.by вы сможете получать важные письма.
Внимание! К сожалению, переадресовывать письма из папки "Спам" не получиться. Для них придется создать отдельное правило.
Скоро я опубликую краткую видео-инструкцию, как это сделать.
Постарайтесь найти все сервисы и подписки, которые привязаны к данному почтовому ящику. После чего в каждом из сервисов вам придется указать иной почтовый ящик. К сожалению не все сервисы позволяют это сделать, но многие позволяют.
На данный момент неизвестно, насколько временный доступ к почте через mail.yandex.by, а, соответственно, как долго будет работать переадресация. Также есть риск неавторизованного доступа к вашей почте tut.by.
В связи с этим, может быть целесообразно уже сейчас отказаться от использования данного ящика для переписки.
Сообщите всем вашим знакомым, коллегам, партнерам, которые использовали данный ящик для свящи свами о том, что вы впредь будете использовать другой.
Что в итоге произойдет с ящиком tut.by в Яндексе сказать трудно. Скорее всего, когда придет срок оплаты за пользование почтовым сервисом, и оплата не пройдет - ящик превратиться в тыкву, а с ним слетят все подписки на сервисах Яндекса, и могут стать недоступными другие подписки. И конечно, вы перестанете получать важные письма.
Скорее всего придется смириться с потерей почтового ящика. Пароль к ящику сменить тоже не получиться, что убивает безопасность и сводит на нет пользу от ящика
Прислано анечке
Ваше письмо получено и в ближайшее время будет прочитано. Спасибо.
Здравствуйте! Спасибо за письмо. Я обязательно его прочту и отвечу Вам! С уважением, Татьяна!
ИМПУЛЬС принял!!!Несколько вводящие в заблуждение автоответы:
Ура!
Спасибо большое за письмо. Всего самого хорошего
ПРОЧИТАНО
Принято к исполнению.
Ваше письмо получено, спасибо, правда, не факт, что я его читала)))
Здравствуйте!
Ваше письмо дошло до нас.
Вам ответят в течение трёх рабочих дней!
Хорошего дня!
Здравствуйте.
Ваше письмо доставлено по указанному Вами электронному адресу.
Отвечу при очередном подключении к Интернету.
С уважением, ***
Здравствуйте!
Благодарю Вас за интерес к моей персоне.
В настоящее время я живу полной жизнью, поэтому проверяю и отвечаю на электронную почту один раз в неделю, по вторникам в 19:00.
Если Вам срочно необходимо в чём-то помочь (очень прошу убедитесь в том, что это действительно срочно), что не
может ждать до назначенного срока, то пожалуйста свяжитесь со мной по телефону +7912***
Спасибо за понимание моего решения, которое увеличит мою продуктивность и производительность. Это поможет
достигнуть мне большего, чтобы помогать Вам лучше.
С уважением,
***
Если вы получили это письмо, значит я сейчас не на почте, и как только прочту Ваше письмо, то отвечу незамедлительно.
Здравстуйте! Ваша письмо получено, оно будет рассмотрено в течение 24 часов. Пока Вам нужно перейти по этой ссылке: *** Прямо сейчас сделайте это. С уважением к Вам и Вашему делу!
Ваше письмо получено. Письма обрабатываются в порядке очереди. И мы сделаем все возможное, чтобы как можно быстрее ответить на Ваше письмо.
Если Вы прислали заявку на участие в проекте "***, то Ваша заявка рассматриваются в течении суток. Ожидайте, ответ Вам обязательно придет на Вашу почту и нечего не предпринимайте.
Благодарим Вас за направленное письмо.
Мы обязательно ответим Вам в течение одного рабочего дня.
В рабочие дни Вы можете связаться с нами с 8.00 22.00 (по московскому времени) по телефонам:
+7 800 *** (бесплатно по РФ и Крыму)
+7 978 ***
Круглосуточно с дежурным администратором:
+7 978 ***
ЭТО СООБЩЕНИЕ ОТПРАВЛЕНО АВТОМАТИЧЕСКИ И НЕ ПРЕДПОЛАГАЕТ ОТВЕТА ОТ ВАС.
С уважением,
отдел бронирования
пансионат у моря
***, Алушта
частный пансионат
на берегу моря
тел 8 800 *** ( бесплатно по РФ и Крыму)
тел +7 495 ***
тел +7 978 ***
отдел бронирования
*** п. Чайка
Алушта, ***
*** Крым, РФ
skype: ***
почта :***
https:// ***.com/
Пансионат *** в Вконтакте Facebook
Вы ошиблись адресом
Меня сейчас нет
Временно нет на месте
Этого почтового ящика не существует.
Ваше сообщение никем не будет прочтено
Уважаемые Партнеры!
Настоящим информирую вас о том, что с 15.02.2020 я складываю с себя полномочия генерального директора *** RUSSIA.
По всем вопросам, связанным с сотрудничеством в СНГ прошу вас связываться с Региональным директором по СНГ *** (***почта и телефон***) .
Данный сотрудник больше не работает в компании ООО "***". Просим удалить этот адрес.
Спасибо за Ваше письмо, с 09.01.2020 нахожусь в декретном отпуске. Ваши вопросы прошу адресовать Руководителю отдела инсталляции и сервиса *** ***@***.ru
Здравствуйте! Я временно нахожусь в отпуске. Ваше письмо перенаправлено нашему менеджеру.
Здравствуйте!
Вы отправили письмо на почту, с которой другого ответа не дождетесь =)
С 18.08.18 я не работаю в АО ***.
Неверно указан почтовый адрес. Почтовый сервер @***.ru
C 1 мая Компания *** перешла на корпоративную почту, просьба направлять письма по адресу ***
Обращаем Ваше внимание, что в связи с переездом сайта на новый домен изменился адрес корпоративной почты. Новый адрес: ***
Здравствуйте!
Вы пишите на нерабочую электронную почту.
Если Вам необходимо связаться с отделом логистики, позвоните по номеру +7 4012 ***
К сожалению данный сотрудник уволился, в дальнейшем просим писать на ***
Данный почтовый ящик заблокирован. Ваше письмо перенаправлено руководителю.
Здравствуйте, *** более не работает в компании ***. Ваше письмо будет перенаправлено соответствующему специалисту.
Добрый день!
В связи со счастливым замужеством мои контактные данные изменились Иванова Мария ***.
Актуальная почта: maria.ivanova@***.ru
Пожалуйста, используйте новую.
С улыбкой и пожеланием счастья, Мария Иванова
В связи с техническими проблемами на сервере, просим Вас перезвонить по телефону *** и убедиться в получении Вашей корреспонденции.
Этим почтовым ящиком я больше не пользуюсь из-за большого количества спама! Ваше письмо удалено. Пользуйтесь другими известными Вам моими адресами.
Если Вы все же хотите, чтобы я получил письмо, отправленное на данный адрес, его тема должна в точности совпадать с моим именем, написанным по-русски с заглавной буквы
Добрый день! Данную почту взломали. Новая почта ***. Прошу писать туда.
Лохотрон закрыт. Спасибо за ваше время и деньги!
Взлом мыла на заказ
Мир Вам!
Хочу спросить у Вас: Вы спасены?
Если нет, то пользуясь случаем, хочу напомнить Вам о том, что, если Вы ещё не покаялись в грехах перед Богом Отцом Небесным и не уверовали в Его Сына Иисуса Христа и в Евангелие и не стремитесь жить по нему, то у Вас есть возможность примириться с Ним сейчас, потому что не знаем ни дня ни часа, когда умрём.
Вот, теперь время благоприятное; вот, теперь день спасения, как написано в Библии.
Исполнилось время и приблизилось Царствие Божие: покайтесь и веруйте в Евангелие, сказал Иисус Христос.
Да благословит Вас Господь Бог во имя Иисуса Христа! Аминь!
Здравствуйте!
Скорее всего Вы ошиблись электронным адресом при написании письма.
Мгновенные кредиты с оформлением через интернет.
Моментальные переводы на банковскую карту.
http://***
Актуальные новости о нашей работе и туризме мы публикуем в наш телеграм канал ***. Вступайте!
АКЦИЯ
ЗАКАЖИТЕ НА САЙТЕ НОЧЬЮ с 18-7 утра, получите доп. скидку в 3%!
Закрытое акционерное общество *** *** *** ***
Услуги:
1. Оценка имущества всех видов, оценка ущербов;
2. Журнал Вестник *** публикация сообщений о фактах ликвидации, реорганизации, уменьшении уставного капитала и проч. в соответствии с законодательством..
3. Оформление недвижимости, консультации по недвижимости;
4. Создание, ликвидация и реорганизация юридических лиц и индивидуальных предпринимателей;
5.Консультации по хозяйственному праву и финансам, налогам;
6. Международный научный журнал "***", ***.
[адрес]
[телефон]
[факс]
[контакт]
(консультации для клиентов компании бесплатные)
Представительство в Карачаево-Черкессии: [адрес и телефон]
Наше качество работы лучшее в Ставропольском крае. Компания работает с *** года. Приглашаем к посредничеству риэлторов, адвокатов, юристов. Комиссионное вознаграждение гарантируем.
Добрый день! Спасибо за внимание к нашему предложению. Чтобы пригласить вас на собеседование, сначала нужно заполнить небольшое резюме на сайте, после чего с вами созвонятся по указанному контактному телефону, согласуют с вами время и место собеседования. Заполнить нужно по этой ссылке: ***. В случае успеха, вы будете приняты на работу. Работодатель находится на хорошем счету и гарантирует соц пакет, хорошие условия труда, расширенную мед. страховку, прохождение обучения по высшим стандартам, помощь в переезде (если необходимо), премии, бонусы и интересную и хорошо оплачиваемую работу. Еще раз, спасибо за уделённое время и внимание.
Ваше письмо не доставлено, так как одному или нескольким адресатам запрещено получать от Вас почту (По причине усиления информационной безопасности ООО "***").
Для решения проблемы просим связаться с системным администратором (admin@***)
При удалении всех писем надо проверить нужно оно тебе для других действий: Пароль от любой странице, важная информация для пользователя и т.д.
Добрый день, уважаемые туристы!
Сотрудники нашей компании находятся в отпуске.
Просим все ваши вопросы направлять на почту nostress@***.ru
ВНИМАНИЕ!!! ПИСЬМА ПО ДАННОМУ АДРЕСУ НЕ ОБРАБТВАЮТСЯ!!!
Сегодня не многие уже помнят, как функционировала служба e-mail всего каких-то 20-25 лет назад. Приведу простой пример для понимания общих принципов работы интернета, принятых в те времена повсеместно.
Протокол SMTP, который используется для обмена сообщениями как между почтовыми серверами, так и между сервером и отправляющим свое сообщение клиентом, изначально не предполагал вообще никакой авторизации. Любой узел мог подключиться к любому почтовому серверу и просто так отправить электронное сообщение кому угодно. Сегодня это кажется настолько невероятным, что даже застав те времена, теперь уже сомневаешься, а было ли это на самом деле, или просто привиделось во сне.
Просто представьте себе. Работает некий почтовый сервер, который обслуживает клубную почту в условном домене kernel.org. К нему подключается хост с IP-адресом из пула dial-up урюпинского интернет-провайдера, и на голубом глазу говорит ему: а прими-ка, уважаемый, письмецо для vasya.pupkin@supermail.net от ivanov.ivan@mega-haсker.com. И сервер, обслуживающий kernel.org, принимал это письмо! И лично пересылал его на mx.supermail.net с наилучшими пожеланиями! А mx.supermail.net без всяких заморочек клал эту депешу в ящик vasya.pupkin. Причем ящик этот состоял из единственной папки, куда без всякого разбора падало все, что имеет соответствующий адрес в поле To:.
Это была действительно на 100% децентрализованная система, готовая трудиться на благо каждого, кто умел с ней работать. А весь интернет был миром непуганых альтруистов, верящих, что все, что ни делается в сети, делается для пользы всего мира.
Типичное содержимое почтового ящика без фильтраИ к чему привело такое доверие всем и каждому, мы прекрасно сегодня знаем. Система электронной почты из децентрализованного сервиса по факту превратилась в полу-закрытый клуб, куда новичков пускают с большой неохотой, а пустив, подвергают всем прелестям дедовщины. Крупные почтовые сервисы ограниченно доверяют лишь друг другу, но, даже не смотря на все закручивание гаек, надежность электронной почты как средства обмена информацией упала ниже плинтуса. Не дошедшее даже по давно используемому каналу сообщение вообще не вызывает удивления, и любой акт передачи важных данных через e-mail сегодня обязательно сопровождается либо подтверждением в обратную сторону, либо контролем через иные средства коммуникации. Один только факт наличия кнопки типа отправить повторно на многих формах валидации адреса, говорит о совершенно плачевном состоянии дел. Ведь нам предлагают в точности повторить сделанное ранее действие, но при этом на полном серьезе надеяться на иной результат!
Итогом всего этого стало стремительное падение популярности имейла. Десяток лет назад без адреса электронной почты в интернете делать было нечего. Регистрация на почти любом публичном ресурсе предполагала обязательное наличие ящика. А сегодня добрые 75% пользователей вообще не имеют электронной почты. Либо имеют нечто, предоставленное в нагрузку к другим сервисам, но совсем не пользуются. Теперь адрес электронной почты почти повсеместно вытеснен номером мобильного телефона, и это самое печальное, потому что тянет за собой те же проблемы с надежностью в сферу телефонной связи, но об этом ниже.
Дверь в грядущееНет, вы, конечно, можете, создать свой SMTP-сервер по
оригинальным мануалам тех времен, и сразу начать принимать тонны
спама входящую корреспонденцию. Но вот с исходящим трафиком у
вас сразу же возникнут проблемы, которые будут проявляться тем, что
для мастодонтов рынка публичного e-mail вашего сервера с большой
вероятностью просто не будет существовать. Все ваши сообщения будут
тихо игнорироваться, даже без уведомления о причине отказа. Если
сойдутся все звезды, то некоторые из мейлов обнаружатся в папке
нежелательной корреспонденции, но это только для везучих.
Чтобы условный gmail.com соизволил принять от вас сообщение для зарегистрированного у него же vasya.pupkin@gmail.com, должно быть выполнено очень много условий, неведомых во времена свободного интернета. Особенно печально, что не все из них вообще зависят от вас.
Я не буду тут расписывать тонкости настройки TLS или DKIM, это
не специализированная статья. Скажу лишь, что если вам, по воле
случая, при аренде интернет-подключения для вашего SMTP, достанется
IP-адрес с подмоченной кредитной почтовой историей, то всю
идею собственного почтового сервера можно хоронить. Отмыть адрес до
исходного состояния невозможно. Его можно несколько обелить,
доказав каждому сервису черных списков, что ты не верблюд, но
отношение конечных почтовых систем к нему все равно останется более
подозрительным, чем к другим. Ваши письма будут чаще пропадать или
оказываться в списке нежелательных, вам будет установлен более
жесткий лимит на количество исходящих. Для личной почты все это
может быть и не особо важно, но если это публичный проект, то все,
сушите весла.
Повторю, озвученные проблемы это лишь малая часть тех палок, которые будут лететь вам в колеса со всех сторон при попытке войти в клуб отправителей e-mail. И согласитесь, что это очень сильно отличается от описанной выше вольницы на рубеже тысячелетий.
В результате проблем спама, и, что главное, последствий борьбы со спамом, пользовательскую массу сильнейшим образом колыхнуло в направлении, максимально далеком от принципов работы электронной почты. Теперь упомянутые 75% используют жестко централизованные сервисы обмена сообщениями, в которых иногда вообще нельзя начать общение с новым контрагентом без предварительного его согласия. Может показаться, что такой подход решает проблему спама, но это не так. Многочисленные назойливые запросы на авторизацию от явно рекламных профилей хорошо знакомы со времен ICQ. А проблем добавляется тем, что решение о начале общения обычно основывается только на основе просмотра профиля вызывающего на предмет А ты вообще кто такой? с изначально отрицательным индексом доверия. И если ваш профиль покажется недостаточно привлекательным, то, например, давно потерянный родственник просто добавит вас в черный список, так и не поняв, кто к нему постучался.
Даже на дне морскомНо бог с ней, с текстовой перепиской. Печально, что те же личности, которые угробили удобнейший инструмент общения в интернете, сегодня активно занимаются уничтожением мобильной голосовой связи. Причем, по сути теми же методами. Дешевизна автоматического обзвона с использованием разнообразных робобаб и робомужиков сорвала рекламщикам всякие тормоза. Ведь теперь вообще не нужно платить зарплату рабам в колл-центрах, достаточно настроить электронную систему и делать хоть миллион холодных звонков в сутки. Глава Центра Американского Английского на том свете уже сто раз удавился от зависти. А неудачно засвеченный номер телефона иногда бывает проще выбросить, чем пытаться бороться с навязчивыми звонками от спамеров и жуликов.
Из достижений рекламщиков на фронте телефонной связи на сегодня можно отметить практически убитую культуру перезвона на пропущенный вызов с незнакомого номера. Еще пять лет назад можно было процентов на девяносто быть уверенным, что незнакомый человек перезвонит тебе, если он не смог поднять трубку непосредственно при входящем вызове. Сегодня такое можно ожидать только от тех, кто обязан перезванивать на все пропущенные входящие. Простой человек с той же вероятностью 90% проигнорирует пропущенный вызов с неизвестного номера.
Что может быть хуже обычного спама? Только веганский телефонный спамНо ладно бы только пропущенные вызовы страдали. В конце концов, если кому надо, то сам перезвонит, тем более связь не бесплатная. Совсем плохо то, что спамеры в данный момент активно уничтожают такое, казалось бы незыблемое, правило телефонной связи, как простой ответ на входящий звонок. Мне, как человеку, имеющему небольшое отношение к интернет-торговле, уже прекрасно знакома эта проблема. Ненормально, когда человек делает заказ в магазине, но к нему невозможно дозвониться для уточнения деталей, потому что брать трубку, если на экране неизвестный номер, он просто не привык. И процент таких параноиков быстро растет: условные пять лет назад это было нонсенсом, а сегодня даже язвить на эту тему в своем кругу стало не интересно. Ну не думает человек, что интернет-магазин не позвонит ему с контакта Мама или Работа, ну и что, если таких каждый день по несколько штук попадается
Для борьбы с нежелательными звонками предлагается методика, которая удручает своей схожестью с основным методом борьбы с почтовым спамом, черные списки номеров. С одной стороны, это пока работает, но с другой, а что будет, если вам или вашим детям попадется номер, запомоеный спамерами? Ведь деактивированные номера отнюдь не пополняют кладбище цифр, они запросто могут попасть на реинкарнацию всего через несколько месяцев после смерти. Хотели бы получить номерок, прописанный во всех черных списках, при подключении к любимому оператору?
Выпускается по сей деньЧто будет дальше я не знаю. Статья, как было написано выше, не о решении проблемы. Даже радикальные меры вроде глобальной централизованной телефонной книги (т.е. полной принудительной деанонимизации всех телефонных номеров) тут не помогут, потому что +1234567890 на экране входящего вызова ничем принципиально не отличается от пусть не анонимного, но от этого ничем не более знакомого Петра Ивановича Котолюбова. Но одно могу сказать с уверенностью: мы живем во время уничтожения привычной мобильной связи. Вероятно, что времена, когда любой мог просто позвонить любому, скоро останутся в прошлом точно так же, как ушло и время свободного обмена электронными письмами.
Отдельный привет хочу передать пламенный тем хабровчанам, которые занимаются разработкой всех этих автоинформаторов, наверняка есть и такие.
Email остается одним из главных каналов коммуникации компаний с аудиторией. Существует огромное множество инструментов, которые позволяют создавать и отправлять письма, но каждый раз когда дело доходит до выбора какого-то одного это сразу оказывается непростой задачей.
Я решила разобраться с тем, какие вообще инструменты создания адаптивных писем существуют сегодня, и выбрал наиболее простые в использовании, функциональные и свежие. Поехали!
Инструменты категории email builders делятся по типам на основе принципов своей работы и целевой аудитории. Вот некоторые из них:
HTML-генераторы обычно такими инструментами пользуются разработчики, которым нужно включить в свои продукты функции отправки email. Обычно работают в связке с системами отправки писем приложение генерирует код email-шаблона, который затем передается для отправки.
Email-фреймворки как правило такие инструменты используют какой-то язык разметки, а описанный с его помощью шаблон затем конвертируется в адаптивный HTML.
Встроенные в системы отправки библиотеки шаблонов большинство email-провайдеров предоставляют возможность выбрать шаблон письма из библиотеки и отредактировать его. Обычно этого хватает пользователям с минимальными требованиями, для сильной кастомизации требуются внешние сервисы.
Drag-n-drop редакторы такими инструментами чаще пользуются маркетологи. По аналогии с конструкторами сайтов здесь шаблоны писем собираются в визуальном редакторе из доступных элементов. Как правило, это облачные сервисы, хотя есть и исключения, о которых ниже.
В этой статье я сфокусируюсь на последней категории инструментов.
Наиболее популярные и простые в использовании инструменты, которые доступны простым смертным без навыков программирования. Обычно все работает так пользователь регистрируется в облачном сервисе и начинает с ним работать, а затем покупает платную подписку для разблокировки всех возможностей. Вот пара таких интересных продуктов.
С помощью этого инструмента можно создавать в drag-n-drop редакторе письма, комбинируя более 100 готовых элементов и 900 шрифтов. После того, как шаблон создан в конструкторе, его можно экспортировать в HTML, причем он будет адаптивным то есть письмо будет нормально выглядеть в подавляющем большинстве существующих почтовых клиентах и приложениях.
После создания шаблона, его можно отправить в сервисы для осуществления рассылок, вроде MailChimp. В итоге можно создать куда более функциональное и красивое письмо, чем при использовании встроенных в такие приложения шаблоны.
Из плюсов Postcards:
возможность командной работы можно расшарить доступ к шаблону коллегам;
версионность это важно как раз для совместного редактирования шаблона;
облачный хостинг картинок не надо думать, где держать изображения для сообщений;
неограниченное число экспортов шаблонов некоторые сервисы ограничивают это.
Еще один grag-n-drop редактор. Пользователи могут выбирать примерно из 10 шаблонов в бесплатной версии. Можно и создать собственный шаблон из готовых блоков, причем результат получится адаптивным разработчики заявляют о поддержке более 90% десктопных, мобильных и веб-клиентов электронной почты.
Помимо облачных инструментов, существуют и desktop-приложения для создания писем на локальном компьютере. Вот пара интересных инструмента этой категории.
Это десктоп-приложение для Mac. С его помощью можно разрабатывать шаблоны рассылок электронной почты. Как и в случае BEE, здесь есть более 80 готовых шаблонов, которые можно дорабатывать.
Редактор также работает по принципу drag-n-drop и позволяет изменять графические элементы, добавлять анимации из специальной библиотеки, кастомизировать тексты, используя различные шрифты.
Этот инструмент работает на платформе Windows. В отличие от Mail Designer 365, здесь есть не просто триал, а возможность бесплатного использования с ограниченной функциональностью.
Базово инструмент также позволяет работать с графическими элементами и текстами. При этом в бесплатной версии есть только функции превью, отправить письмо или экспортировать его в HTML нельзя.
Помимо инструментов, которыми по большей части пользуются маркетологи и руководители бизнеса, есть еще тип продуктов, нацеленных на разработчиков. Очень часто в том или ином сервисе нужно предусмотреть возможность отправки email-сообщений, и для таких целей используются различные встраиваемые плагины. Ниже описание одного из таких инструментов.
Это сервис для разработки email-сообщений для SaaS-компаний. По своей сути, это JavaScript-плагин, который можно встроить в веб-приложение. После этого уже можно использовать drag-n-drop редактор для сборки шаблона из готовых элементов.
При этом, в Unlayer нет готовых шаблонов, которые можно было бы кастомизировать придется разрабатывать свои с нуля. Среди интересных и полезных именно для разработчиков фич возможность сохранить шаблон в формате JSON.
Как видно, сегодня создавать адаптивные почтовые рассылки можно и без серьезных навыков программирования. При этом выбрать подходящий для конкретной задачи инструмент не всегда просто нужно изучить набор функций и цену на подписку, понять, насколько велика библиотека графических элементов, есть ли интеграции со сторонними сервисами рассылки для автоматизации email-маркетинга. Надеюсь, этот материал послужит неплохой отправной точкой для такого анализа.
Какими инструментами для создания адаптивных писем пользуетесь вы? Пишите в комментариях соберем самый подробный список в одном месте.
Примерные темы для обсуждения:
Лиды.Маркетинговая воронка и воронка продаж
Автоматизация: процессы и инструменты
Lead nurturing
Кроссканальный маркетинг
Эксперименты
Спикеры:
Мариам Ванян, Head of Marketing Operations, Wrike
Ирина Манолова, Marketing Automation Specialist, JetBrains
Ксения Бородулина, Solution Engineer, CRM and Marketing Automation, Veeam
Анна Фомина, Email Marketing & Marketing Automation Team Lead @ Wrike
Надежда Николаева, Marketing Automation Specialist, Selectel
Сергей Лебедев, Marketo Administrator, Wrike
Встреча пройдет 18 февраля в 18:00 по Мск, онлайн.
Disclaimer
Статья написана для новичков и тех, кому хочется шаг за шагом
понять как устроена работа с электронной почтой из Java-приложений.
Желающие быстро понять как отправлять электронные письма из
Spring-приложений могут сразу переходить к 3 части.
Эту статью я решил написать, потому что не нашел русскоязычных
источников про работу c электронной почтой из Java, описывающих
имеющиеся библиотеки достаточно полно. На хабре существует
статья, посвященная очень узкой задаче по чтению писем (и
выводу их содержимого в консоль) и статья с how-to по
отправлению
письма с вложениями при помощи Spring Email. Также существует
несколько статей (например)
на тематических ресурсах, которые приводят порядок действий при
работе
с электронной почтой. В этих источниках мне не хватало объяснения
основ, на которых стоит
электронная почта и взгляда с высоты на существующие библиотеки для
работы с почтой в Java.
Для таких же лапкообразных, как я, написана эта статья. Она дает общие представления о работе электронной почты, разъясняет основные сущности библиотеки Jakarta Mail и дает советы о том, как работать с электронной почтой в Spring-приложениях.
Содержание:
Сегодня электронная почта кажется устаревшей технологией, которая нужна только для того чтобы зарегистрироваться на сайтах, куда забыли прикрутить авторизацию с помощью Google, Vk или Facebook -аккаунта. Возможно, так и есть, но наверняка вы до сих пор получаете электронные письма о падении сборки от вашего CI-инструмента или уведомления о пул-реквестах от вашего репозитория на свой почтовый ящик.
Электронная почта была создана на заре интернета и позаимствовала многие свои идеи из реального мира. Подобно тому как в оффлайне для отправки и получения писем нам требуются почтовые отделения, в электронной почте нам нужны почтовые сервера, т.е. электронная почта основана на модели клиент-сервер. В крупных компаниях сисадмины разворачивают свои собственные почтовые сервера, в маленьких компаниях используют почтовые сервера, предоставляемые специальными провайдерами, например: Яндекс.Почта, Gmail и др.
Популярные почтовые серверы: Postfix, Sendmail, Apache James, Zimbra.
Для работы с письмами на стороне клиента используются десктопные приложения вроде Outlook или The Bat!, либо веб-приложения вроде Gmail или Яндекс.Почта.
Предположим, что человек А решил отправить письмо человеку Б. Он
пишет его в своем почтовом клиенте и нажимает кнопку "отправить".
Письмо отправляется по протоколу SMTP на почтовый сервер клиента А.
Этот почтовый сервер пересылает письмо почтовому серверу клиенту Б
также при помощи протокола SMTP. Когда клиент Б решит проверить
почту, он сделает запрос к своему почтовому серверу с помощью
протокола POP3 или IMAP. В случае использования протокола POP3
письма будут выкачены на устройство клиента Б и удалены с почтового
сервера. При использовании протокола IMAP клиенту Б будут переданы
копии писем,
а оригиналы останутся храниться на почтовом сервере.
Электронное письмо состоит из следующих частей:
Раньше тело письма могло состоять только из символов ASCII, но с развитием почтовых систем, появилась возможность добавлять в тело html-разметку, изображения, а также прикладывать к письму различные файлы. Для того чтобы правильно выделять различные части из письма, были разработаны MIME-типы многоцелевые расширения интернет-почты.
Для отправки писем используется протокол SMTP. А для их приема используется либо протокол POP3, либо IMAP.
Существуют и другие почтовые протоколы, но три перечисленных выше наиболее популярны.
Все почтовые протоколы относятся к самому высокому уровню модели
OSI и основаны на TCP.
У каждого из нижеперечисленных протоколов существует защищенная
версия, основанная на SSL.
Simple Mail Transfer Protocol простой протокол передачи писем. Используется для рассылки писем.
SMTP использует порт 25 или 587. А его защищенная версия SMTPS слушает порт 465.
Post Office Protocol v3 почтовый протокол. Используется для чтения писем. POP3 при выкачивании письма на клиентский компьютер удаляет письмо с почтового сервера. Недостатком этого протокола является то, что при просмотре письма на одном клиентском компьютере это письмо уже нельзя будет посмотреть с другого устройства.
POP3 слушает порт 110. А его защищенная версия POP3S слушает порт 995.
Internet Message Access Protocol протокол доступа к электронной
почте. Альтернатива протоколу POP3. IMAP подгружает на клиент
только мета-информацию письма, а остальные
данные предоставляет по требованию.
IMAP слушает порт 143. А его защищенная версия IMAPS слушает порт 993.
Multipurpose Internet Mail Extensions многоцелевые расширения интернет-почты. MIME используется, для того чтобы обозначить тип передаваемого контента с помощью протоколов, которые первоначально были предназначены только для передачи текстовой информации, например SMTP и HTTP.
MIME первоначально предназначался для электронной почты, но впоследствии начал использоваться не только в ней, но и в HTTP.
Тип определяется двумя словами, записанными через прямой слеш. Первое слово это общий тип, а второе уточнение.
image/jpeg
MIME позволяет устанавливать иерархию вложенности одних блоков
контента в другие.
При этом блоки контента могут быть смешанного содержимого. Для
таких блоков используется общий тип multipart
, нам еще
встретится этот термин.
Jakarta Mail это библиотека / фреймворк, использующийся для создания, отправки и чтения электронной почты из Java-кода. Библиотека входит в состав Jakarta EE. Ранее библиотека называлась JavaMail, но с 2017 года она переехала под крыло Jakarta.
Как принято в Java EE, сама библиотека предоставляет только
базовые сущности, не зависящие от конкретных реализаций. Эти
основные классы находятся в пакете javax.mail
. Помимо
этого к библиотеке прикладывается Reference Implementation для
основных протоколов SMTP, POP3, IMAP. Все классы, относящиеся к
этим протоколам, находятся в пакете com.sun.mail
. Для
использования других протоколов, не входящих в Reference
Implementation, необходимо подключать сторонние библиотеки.
Для обработки различных форматов данных, которые могут быть вложены в электронное письмо, Jakarta Mail использует библиотеку JavaBeans Activation Framework при использовании автоматического сборщика эта зависимость будет подтянута в ваш проект транзитивно.
На текущий момент актуальной версией Jakarta Mail является
1.6.5, но близится выпуск версии 2.0.0, главным "нововведением"
которого станет переименование основного пакета с
javax.mail
на jakarta.mail
.
В Jakarta Mail не входит почтовый сервер. Для отправки писем по SMTP или получения по IMAP или POP3 требуется развернуть собственный почтовый сервер или использовать существующий.
Как следует из первой части, для отправки и получения
электронных писем необходимо поддерживать соединение с почтовыми
серверами. В Jakarta Mail почтовые сервера представляют объекты
классов Transport
и Store
для отправления
и чтения писем соответственно.
Настройка соединения с почтовыми серверами происходит с помощью
пар ключ-значение, передаваемых в виде объекта класса
Properties
. Например для настройки SMTP-соединения с
почтовым сервером Яндекс.Почты достаточно следующих параметров:
mail.transport.protocol = smtpsmail.smtp.host = smtp.yandex.rumail.smtp.port = 465mail.smtp.user = artem.boiarmail.smtp.ssl.enable = truemail.smtp.auth = truemail.debug = true
Полный список различных настроек и их описание можно найти в документации на пакеты основной библиотеки и ее реализаций для различных протоколов.
На основе объекта Properties
создается сессия:
final Session session = Session.getInstance(mailProperties, authenticator);
Обычно сессия создается одна для всего приложения. Она представляет собой сеанс работы с почтовыми серверами. Почти каждый объект библиотеки должен принадлежать какой-либо сессии.
Вторым аргументом при создании сессии необходимо передать объект
абстрактного класса Authenticator
, у которого
требуется переопределить метод
getPasswordAuthentication()
(по умолчанию возвращает
null, почему он не был сделан абстрактным неизвестно).
Этот метод используется сессией для связи с почтовым сервером
метод будет вызываться при каждом обращении к серверу. При его
вызове возвращается объект класса
PasswordAuthentication
, который представляет собой
обычное DTO для хранения логина и пароля.
final Authenticator authenticator = new Authenticator() { @Override protected PasswordAuthentication getPasswordAuthentication() { return new PasswordAuthentication( this.getDefaultUserName(), PropUtils.getPassword() ); }}
Разработчиками библиотеки подразумевается, что внутри этого
метода можно запросить пароль у пользователя или достать его из
хранилища. При получении пароля можно пользоваться значениями полей
класса Authenticator
: IP почтового сервера, тип
протокола, используемый
порт и даже имя дефолтного пользователя.
Почти все сущности, представляющие какие-либо объекты предметной области, представлены абстрактными классами, реализация которых зависит от конкретного протокола:
Message
электронное письмо;BodyPart
фрагмент электронного письма: основная
часть или вложение;Address
адрес отправителя или получателя;Folder
папка, в которой хранятся электронные
письма;SearchTerm
условие поиска писем в папке;MailEvent
событие, произошедшее с письмом.Примечание в данной статье обработка событий не рассмотрена.
Электронные письма представляются с помощью абстрактного класса
Message
, у которого есть один наследник
MimeMessage
(реализации различных протоколов могут
дополнительно расширять этот класс).
Электронное письмо состоит из метаинформации: отправитель,
получатели, тема, дата отправки и др.,- и основной части: текст и
вложения. Основная часть письма представлена в виде фрагментов
BodyPart
, которые хранятся в контейнере
Multipart
. Подробнее о фрагментах ниже.
Каждое письмо привязывается к конкретной сессии. При создании нового письма в конструктор передается объект сессии:
final Message message = new MimeMessage(session);
Для установки значений полей метаинформации используются обычные
сеттеры. При установке получателей необходимо указывать еще тип
адресантов, для этого у класса Message
есть внутренний
класс RecipientType
, который представляет собой
различные виды адресантов:
TO
прямой получатель;CC
получатель копии;BCC
получатель скрытой копии.Поля с такими названиями можно найти в интерфейсе любого почтового клиента при написании письма.
message.setFrom("artem.boiar@yandex.ru");message.setRecipients(Message.RecipientType.TO, "joshua.bloch@google.com");message.setRecipients(Message.RecipientType.CC, "tagir.valeev@jetbrains.com");message.setRecipients(Message.RecipientType.BCC, "sergey.egorov@pivotal.com");message.setSubject("Java 20 new hot features");
При чтении писем можно изменять их состояние, устанавливая им
различные флаги. Стандартные флаги представлены в классе
Flags
:
ANSWERED
отвеченоDELETED
удаленоDRAFT
черновикFLAGGED
выделеноRECENT
недавнееSEEN
просмотреноUSER
пользовательский флагФлаги устанавливаются в сообщении в нужное положение с помощью
метода setFlag(Flag, boolean set)
.
Адреса используются для идентификации получателя письма.
Класс Address
является абстрактным и по сути имеет
всего одну реализацию InternetAddress
(есть еще
NewsAddress
для мамонтов, пользующихся Usenet'ом).
InternetAddress
представляет привычные нам адреса
электронной почты, записанные в формате:
trisha.gee@jetbrains.com
Помимо адреса объекты могут хранить в себе имя адресанта в любой кодировке:
internetAddress.setPersonal("Сергей Куксенко");
Для того чтобы создать объект InternetAddress
можно
воспользоваться одним из конструкторов, либо распарсить строку с
несколькими адресами в массив:
InternetAddress[] recipients = InternetAddress.parse( "kuksenko@oracle.com, baruh@jfrog.com, golodnyj@yandex.ru");
Примечание для валидации адресов электронной почты,
приходящих от пользователя в виде строк, можно пользоваться
аннотацией @Email
, объявленной в библиотеке
Bean Validation.
Фрагмент письма это неделимая часть письма, несущая полезную нагрузку адресанту. Фрагмент письма может либо относиться к основной части письма, либо быть вложением.
В Jakarta Mail фрагмент письма представлен абстрактным классом
BodyPart
и его реализацией
MimeBodyPart
.
Тип фрагмента определяется параметром disposition
:
INLINE
для основной части письма иATTACHMENT
для вложения.Тип фрагмента можно не объявлять явно, чаще всего он выводится автоматически, в зависимости от того, что записано во фрагмент.
Наиболее часто используемые MIME-типы для частей:
text/plain
для основной части письма иapplication/octet-stream
для вложений.Для создания фрагмента письма можно пользоваться обычным конструктором:
final MimeBodyPart mailBody = new MimeBodyPart();final MimeBodyPart attachment = new MimeBodyPart();
На UML-диаграмме наследования, приведенной выше, объявлен еще
интерфейс Part
, который реализуется почти всеми
классами, относящимися к письму. В нем объявлены методы доступа к
метаинформации письма. Это довольно странное решение как-будто у
различных фрагментов одного письма могут быть различные адресанты
или темы письма.
После создания фрагмента необходимо записать в него полезную
нагрузку. Для основной части используется метод
setText()
, а для вложения attachFile()
или setContent()
.
mailBody.setText("Java 20 new features.\nLook at the attachments.");attachment.attachFile(file);
MIME-тип вложения в большинстве случаев определяется автоматически по расширению файла.
Для чтения контента из пришедшего письма можно воспользоваться
методом
void saveFile(File)
для сохранения контента на диск
или
void writeTo(OutputStream)
для перенаправления
контента в указанный поток.
Фрагменты BodyPart
для помещения в письмо
объединяются в структуру Multipart
.
MimeBodyPart
соответственно объединяются в структуру
MimeMultipart
.
final Multipart multipart = new MimeMultipart();for (BodyPart bodyPart: bodyParts) { //cannot use streams because of checked exception multipart.addBodyPart(bodyPart);}
После этого мультипарт вкладывается в письмо:
message.setContent(multipart);
Для хранения писем на почтовом сервере используются папки.
Обычно папка по умолчанию называется INBOX
(в POP3 это
единственная папка).
Папки организуют древовидную структуру. В некоторых реализациях папки могут хранить в себе что-то одно: папки или письма, в других (например, IMAP) сразу и то, и другое.
Папка может находиться в открытом и закрытом состоянии. При
извлечении папки она находится в закрытом состоянии. Чтобы
прочитать письма, находящиеся в ней, необходимо сначала открыть ее
open(int mode)
в одной из двух режимов: только для
чтения READ_ONLY
или на чтение и запись
READ_WRITE
.
Folder folder = store.getDefaultFolder();folder.open(Folder.READ_WRITE);
Операции с содержимым папки могут выполняться только в открытом состоянии, а операции над самой папкой только в закрытом состоянии.
Для извлечения писем из папки можно использовать метод
getMessages()
, возвращающий все письма из папки:
Message[] messages = folder.getMessages();
Письма располагаются в папке аналогично списку и имеют номера,
начиная с 1
. Для получения писем по их порядковым
номерам используются разновидности приведенного выше метода.
При использовании протокола IMAP из папки достаются легковесные
объекты
вместо полноценных сообщений. Необходимые части сообщения
подтягиваются с почтового сервера по требованию, либо можно сразу
загрузить полную версию письма, вызвав метод fetch()
класса Folder, передав в него желаемые письма.
Папки позволяют удалять письма, но сделать это можно только с
теми письмами, которые помечены флагом DELETED
.
Jakarta Mail позволяет проводить поиск по письмам в папках. Для
составления поискового запроса предназначен абстрактный класс
SearchTerm
, имеющий множество реализаций для поиска по
различным критериям: теме письма, дате отправления, отправителю,
флагам и пр. Различные критерии поиска могут объединяться в один
поисковый запрос.
После составление поискового запроса он запускается по указанной папке:
final FromTerm fromTerm = new FromTerm(new InternetAddress("artem.boiar@yandex.ru"));final SubjectTerm subjectTerm = new SubjectTerm("Java");final AndTerm termsSummary = new AndTerm(fromTerm, subjectTerm);final Message[] foundMessages = folder.search(termsSummary);
Для удобства использования библиотеки Jakarta Mail в
Spring-приложениях была разработана библиотека Spring Email,
которая по сути является фасадом к API Jakarta Mail.
Все классы библиотеки находятся в пакете
org.springframework.mail
, который можно подтянуть с
помощью зависимости spring-boot-starter-mail
.
В большинстве Java-приложений не требуется читать письма с почтового сервера, чаще всего необходимо только рассылать электронную почту (например для подтверждения регистрации в вашем веб-приложении или для рассылки уведомлений). В связи с этим Spring Email предоставляет API только для отправки писем.
Интересный факт в разработке Spring Mail принимал участие наш земляк Дмитрий Копыленко.
Библиотека Spring Email предоставляет ряд классов и интерфейсов,
которые хорошо вписываются в общую концепцию фреймворка. Все что
нужно для отправки электронного сообщения из вашего кода, это
заинжектить бин отправителя и передать ему письмо с помощью метода
send()
.
В библиотеке выделяются два вида писем: простые и MIME-письма. Простые не могут содержать в своем теле ничего кроме текста, MIME-письма могут содержать в теле html-верстку, изображения и иметь вложения.
Простые письма представлены классом
SimpleMailMessage
. Этот класс полностью независим от
сущностей библиотеки Jakarta Mail все его методы принимают
примитивы и объекты стандартной библиотеки Java.
final SimpleMailMessage simpleMail = new SimpleMailMessage();simpleMail.setFrom("artem.boiar@yandex.ru");simpleMail.setTo("yegor.bugaenko@huawei.com");simpleMail.setSubject("Java 20 new hot features");simpleMail.setText("Java 20 new hot features. No attachments :(");
Отправить созданное письмо можно с помощью бина интерфейса
MailSender
.
this.mailSender.send(simpleMail);
Для работы с MIME-письмами используется класс
MimeMessage
из Jakarta Mail. Для тех случаев, когда
требуется одинаковый интерфейс для работы с простыми и
MIME-письмами существует класс адаптер
MimeMailMessage
, который как и
SimpleMailMessage
реализует интерфейс
MailMessage
.
Для создания объектов MimeMessage
в библиотеке есть
класс-помощник MimeMessageHelper
. Этот класс
предоставляет удобный фасад для работы с телом письма, его
мультимедийными вставками и вложениями. Пользоваться им очень
просто: достаточно обернуть в него объект MIME-письма и задать все
необходимые параметры:
final MimeMessage mimeMessage = this.mailSender.createMimeMessage();final MimeMessageHelper messageHelper = new MimeMessageHelper(mimeMessage, true);messageHelper.setFrom("artem.boiar@yandex.ru");messageHelper.setTo("artyom.boyarshinov@cosysoft.ru");messageHelper.setSubject("Java 20 new hot features");messageHelper.setText("Java 20 new hot features. Look at the attachment.\nAlso look at my great cat!");messageHelper.addInline("", FileUtils.getImage());messageHelper.addAttachment("java-new-features.txt", FileUtils.getFile());
Таким образом MimeMessageHelper
избавляет
разработчика от необходимости создания BodyPart
, и их
сборки в Multipart
, предоставляя удобное линейное
API.
Для отправки MIME-писем используется бин интерфейса
JavaMailSender
:
this.javaMailSender.send(mimeMessage);
Помимо всего прочего в Spring Email существует
callback-интерфейс для создания MIME-писем
MimeMessagePreparator
. Этот интерфейс является
функциональным и может быть заменен лямбдой Consumer
,
принимающей MimeMessage
.
final MimeMessagePreparator preparator = mimeMessage -> { final MimeMessageHelper messageHelper = new MimeMessageHelper(mimeMessage, true); messageHelper.setFrom("artem.boiar@yandex.ru"); messageHelper.setTo("vlad.mihalcea@hibernate.com"); messageHelper.setSubject("Java 20 new hot features"); messageHelper.setText("Java 20 new hot features. Look at the attachment"); messageHelper.addAttachment("java-new-features.txt", FileUtils.getFile());};
В отличие от Jakarta Mail, все методы Spring Email бросают
непроверяемые исключения.
Эти исключения являются runtime обертками над проверяемыми
исключениями Jakarta Mail.
Особый интерес представляет исключение
MailSendException
. Оно позволяет извлечь конкретные
письма, при отправке которых были инициированы исключения, с
помощью метода getFailedMessages()
:
catch (MailSendException exc) { Map<Object, Exception> exceptionsByMails = exc.getFailedMessages(); //...}
Spring Email предоставляет удобный способ настройки соединения с
SMTP сервером посредством обычного
application.properties
/ application.yml
-файла. Это упрощает настройку отправителя электронных писем, так
как бин JavaMailSenderImpl
конфигурируется
самостоятельно при поднятии контекста.
spring: mail: protocol: smtps host: smtp.yandex.ru port: 465 username: artem.boiar password: passw0rd
No-code сейчас в тренде. Статей на эту тему пока не много, хотя они появляются достаточно регулярно. На Хабре по тегу no-code и его вариантам я нашел всего около 15 статей и первая из них появилась только в июне 2020 меньше года назад! Во время чтения одной из статей у меня возникла идея собрать разные варианты no-code сценариев и снабдить некоторых из них, наиболее востребованных, инструкциями по реализации. Мне кажется, это будет интересно многим. Внизу после туториала, вы найдете пока небольшой, но пополняемый список сценариев и опрос, а пока давайте посмотрим как реализовать один простой сценарий.
Он относительно многоцелевой и с его помощью можно сделать различные интеграции для электронной почты, в том числе временный адрес почты для регистрации на разных сайтах. Если вы считаете, что можно просто зарегистрировать очередной ящик на gmail, или если вы знаете реализации такого сервиса, можете написать об этом в комментарии и дальше не читать. Наверняка, можно сделать это проще, нужно меньше 10 строчек кода. Хорошо, если хотите, напишите и об этом. Ну а для остальных, кому интересны технологии no-code, но пока не доходили руки разобраться и что-то сконструировать самому, предлагаю подробное описание сценария и пошаговую инструкцию.
Предположим, вам нужен временный адрес, который не жалко засветить при регистрации на малоизвестном сайте или сайте с репутацией, вызывающей вопросы. После регистрации или когда надобность в адресе отпадет, можем удалить или оставить, но временно заблокировать его (см. об этом шаг 10c ниже) вдруг нужно будет позже восстановить пароль. Идея простая и очевидная и такие сервисы наверняка есть, хотя я сам ими не пользовался. Говорят, что существует такой сервис у Apple, когда при регистрации с помощью Apple Id, он предлагает подменить основной почтовый адрес временным. Хорошая идея, но в данном случае она доступна только владельцам яблочных гаджетов, более того, сайт на котором нужна регистрация, должен принимать Apple Id. Также я сам видел бота, который предлагал временный адрес почты. Это был простейший бот, но он почему-то не работал.
Получаются два стартовых условия: 1) делаем свой, кастомный и настраиваемый сценарий; подробнее об этом см. варианты развития сценария шаг 11 почти в самом конце; 2) обходимся без единой строчки кода.
Конечно, сценарий будет зависеть от сторонних сервисов и их поставщиков, а также будет, скорее всего, платным. Но есть и хорошие новости, он может быть создан на коленке за считанные минуты. В самом худшем случае, если вы делаете это первый раз или если вдруг что-то пойдет не так, за 1-2 часа максимум. В последние несколько лет количество новых no-code сервисов растет как на дрожжах, так что сценарий может быть реализован разными способами и мы можем выбирать наиболее удобный вариант и таким образом снизить зависимость от провайдеров no-code. Поэтому добавляем еще условие: 3) задействованные сервисы должны быть легко заменяемыми и настраиваемыми. В одной статье не получится полностью описать, как реализовать все 3 условия, но будем считать это заделом на будущее развитие сценария (шаг 11). Кроме того, сейчас не будем подробно сравнивать разные альтернативы и объяснять, почему именно эти варианты выбраны. Об этом есть множество других публикаций (примеры есть по ссылкам в следующем абзаце) и, конечно же, можете написать обо всех альтернативах в комментариях.
Если вы в первый раз слышите о no-code, возможно вам будет интересно почитать вводные обзоры и статьи для знакомства с отдельными сервисами. Для старта подойдет небольшой обзор No-code как отличная альтернатива для быстрого решения бизнес-задач. Взвешиваем pro et contra Движение No-code конец программистов? Разбираем плюсы и минусы. Введение в один из инструментов на Хабре n8n. Автоматизация ИБ со вкусом смузи.
Мы подходим к задаче серьезно, поэтому изучив и выбрав лучшие (на сегодняшний день) из доступных альтернатив, уточним ТЗ.
Нужно получить временный адрес и указать его при регистрации на каком-то левом сайте/сервисе сомнительного качества или с репутацией, вызывающей вопросы. И далее мы должны будем получить письмо или как-то прочитать его. Нас интересует только ссылка или код регистрации в теле письма, поэтому достаточно его извлечь и переслать дальше. Вот только куда? На основной адрес? Но зачем нам это письмо на почте, может лучше в виде короткого сообщения в чате или даже СМС-ки. Можно подключить WhatsApp, Slack или другой мессенджер. Но удобнее всего, конечно, Телеграм, для него и сделаем сценарий.
Проблемы, которые должен решать сценарий: 1) в общем случае текст письма может быть длинным, в то время как текст сообщения ТМ ограничен до 4096 символов, нужно обрезать длинные письма или разбивать их на части, 2) нам нужно также извлечь из письма ссылку или код для регистрации, т.е. нужно уметь обработать не только plain-text, но и HTML.
Кажется, что все совсем просто приступим. Все, что мы будем использовать это сервис Zapier и мессенджер Телеграм. Если у вас пока нет Телеграма, хороший повод его установить.
Если у вас есть аккаунт, этот шаг пропускаем. Если нет, нужно будет пройти стандартную процедуру регистрации на сайте Zapier и выбрать тарифный план или тестовый период. К сожалению, я регистрировался давно и точных условий сейчас не знаю, кажется, бесплатный тариф позволяет выполнить до 100 операций в месяц. Это совсем мало, но для тестирования сценария хватит. К тому же, посчитайте, как часто вы регистрируетесь на разных сайтах? И если этот сценарий придется вам по вкусу и вы захотите его и адрес почты использовать на всю катушку, можно будет попробовать заменить Zapier на другой сервис (например, бесплатный n8n) или заплатить за тариф, который вас устроит.
Нажимаем [MAKE A ZAP] см. скриншот
Нужно как-то назвать Зап/сценарий и настроить триггер, который его запускает.
a) Жмем на Name your zap и вводим название запа. Вы можете
выбрать любое. Я назвал его TMP Email Zap.
b) Далее в строке поиска вводим: email, Zapier покажет доступные
почтовые сервисы.
c) В качестве триггера доступны различные приложения, но они
потребуют дополнительных действий и регистрации новых сервисов,
скорее всего. Нам не нужны такие трудности, выбираем простейший и
первый в списке вариант Email by Zapier. См. скриншот выше.
a) В разделе Trigger event нажмите на Choose an event
b) Тут вариантов не много: выбираем New inbound Email. См. скриншот
выше.
c) Нажмите дальше [Continue]
Укажите адрес почты:
a) Появится поле для ввода email-адреса. Можете добавить любое
слово. Но важно использовать ТОЛЬКО буквы в нижнем регистре или
цифры, иначе вы не сможете пройти дальше.
b) Сохраните полученный адрес (кнопка [Copy]), вы будете
использовать его для регистрации на левом сайте.
c) Нажмите дальше [Continue]. См. скриншот выше.
ВНИМАНИЕ!!!
Не показывайте никому этот адрес. Иначе вы рискуете попасть на спам. После чего, в лучшем случае, вы превысите бесплатные лимиты и сценарий перестанет работать, а в худшем случае придётся заплатить рублем, причём не деревянным, а зелёным по текущему курсу ЦБ. Хотя Zapier не очень дорогой, но платить только за спам совсем не хочется.
После того, как вы получили адрес почты, можете его протестировать.
a) Попробуйте отправить письмо на адрес, который вы получили на
шаге 5b.
b) После отправки письма нажмите кнопку [Test Trigger]
c) Если ничего не происходит или Zapier пишет что-то вроде Request
no found, подождите несколько секунд и еще раз нажмите кнопку
письму нужно время, чтобы дойти до сервера Zapierа
d) Если письмо все еще не пришло, проверьте, правильно ли вы
скопировали адрес
e) После того как Zapier получит тестовое письмо, он покажет
содержание письмо и все доступные поля (sender, subject и пр. их
довольно много).
f) После тестирования, нажмите кнопку [Continue]
Можно самостоятельно зарегистрировать бота есть множество инструкций, как это сделать. Но если оставаться строго в парадигме no-code, можно воспользоваться уже готовым решением телеграм-ботом.
a) Откройте Telegram и бота по этой ссылке @co_notbot. Если у вас еще нет
Телеграма, его нужно установить.
b) При входе нажмите кнопку [Start] или введите команду /start.
Ждите некоторое время пока бот отработает команду. Появится
сообщение с Главным меню бота и две кнопки внизу.
c) Нажмите на кнопку [Подключить]. См. скриншот выше.
d) Откроется следующее окно, в котором появится больше вариантов и
кнопок. Нас интересует кнопка [Webhook]. Нажмите на нее и подождите
до 1-3 секунд. См. скриншот ниже:
e) В следующем сообщении от бота вы получите вебхук, который нужно будет скопировать и затем добавить в наш Zap на шаге 9a.
ВНИМАНИЕ!!!
Не показывайте никому этот вебхук/токен и храните его в достаточно надежном месте. Иначе можете легко получить неприятный поток спама в свой до сих пор уютный чатик.
a) Вернитесь в Zapier и нажмите кнопку [Action].
b) В строке поиска наберите web
c) Из списка выберите Webhook by Zapier. См. скриншот выше
a) далее выберите Action event, нажмите на [Choose an Event]
b) из списка выберите вариант [POST]. См. на скриншоте выше.
c) Нажмите дальше [Continue]
На этом шаге нужно будет правильно задать несколько параметров Вебхука. Будьте внимательны, заполните все необходимые поля, смотрите внимательно скриншот, размещенный ниже.
a) в поле [URL] введите адрес вебхука, который вы получили на
шаге 7e. На скриншоте приведен пример. У вас должна быть точная
копия с токеном и адресом.
b) в поле [Payload Type] оставьте вариант [Form]
c) в следующем разделе [Data] нужно будет добавить/задать
передаваемые параметры вебхука. Нам нужно будет задать одно поле
text и его значение, в котором будет передаваться сообщение.
d) в поле text можно сначала добавить значение [Subject], [Sender],
[Body Plain] или [Stripped Text] из письма
e) если тестирование (шаг 10) пройдет успешно, можно попробовать
обрабатывать и передавать значения из html (об этом см. шаг 11c).
Можно пробовать разные варианты и смотреть, что получится в
результате. Если после выполнения Zapier будет выдавать сообщения
об ошибках, попробуйте задать статическую строку, например, Hello
world! и посмотрите, что получится.
f) остальные поля, ниже раздела [Data], заполнять и изменять не
нужно
a) после того как все поля будут заполнены вы можете снова
протестировать отправку письма и весь сценарий. Отправьте новое
тестовое письмо и нажмите кнопку [Test & Review]
b) если тест пройдет успешно, то вы получите ответ в зеленой зоне и
сообщение вроде Test was successful включите Zap/сценарий, нажмите
на переключатель [off] [on];
c) обратным действием можно выключить (или на время заблокировать)
этот сценарий позже
Можно продумать и сделать дальнейшие улучшения, которые я только кратко перечислю. Но если будет интерес, кто захочет сможет отдельно написать продолжение о том, как еще лучше реализовать этот и другие сценарии в парадигме no-code и не только.
a) проверка длины текста и самостоятельно решаем обрезать текст
или делить его на куски < 4096 символов, чтобы не превысить
лимиты Телеграма; можно реализовать по-разному, модулем Formatter
by Zapier, например;
b) можно пересылать не каждое сообщение, а пропускать все сообщения
через фильтр, который оставит только нужное и уберет спам,
например. См. Filter by Zapier;
c) можно сделать более сложную обработку входящих писем и извлекать
ссылки и/или картинки из HTML кода письма (Formatter by Zapier).
Как вариант, после этого картинки можно пропустить через один из
сервисов распознавания изображений для извлечения
чисел/текста/номеров/лиц и пр.
d) можно самостоятельно зарегистрировать бота Телеграм и подключить
один из бот-конструкторов; и тогда сможем реализовать бота
по-своему и не будем зависеть от работоспособности стороннего бота.
Правда попадем в новую зависимость от сервиса-конструктора;
e) можно сделать новый чат, куда с помощью аналогичного вебхука
вместо письма настроить получение RSS, уведомлений или любого
другого потока сообщений;
f) и наконец, можно сделать отдельные шаги взаимозаменяемыми, чтобы
не зависеть от отдельного провайдера сервиса no-code. Например,
вместо Zapierа можно использовать n8n или Integromat.
Как я обещал, кратко перечислю более-менее простые сценарии no-code. Выберите наиболее интересные на ваш взгляд.
Кастомный фильтр спама на базе AI/ML
Временная почта для регистраций (см. пример этого выше)
Агрегатор и фильтр вакансий/новостей/объявлений/rss
Сканирование и учет чеков и финансовых операций
Кастомный uptime-мониторинг для сайтов, серверов
Уведомления и команды Умного дома
No-code решения для скилов Алексы или навыков Алисы
Конечно, все зависит от запросов и фантазии и вы можете сколько угодно модифицировать и усложнять эти сценарии. Предлагайте другие варианты сценариев в комментариях. Интересные варианты я добавлю к списку опроса.
Блокировка изображений одна из самых серьезных проблем, с которой сталкиваются маркетологи, когда проводят email-кампании. Обычно причина кроется в настройках по умолчанию или личных предпочтениях получателя. В результате у большого количества подписчиков изображения блокируются автоматически и письма не доносят до человека основную мысль сразу же, а то и вовсе выглядят испорченными. Поэтому важно оптимизировать рассылки для режима отключенных изображений. Как это сделать? Сервис DashaMail делится лайфхаками.
Подписчики часто просматривают электронную почту с мобильных телефонов. Но временами мобильный интернет работает медленно или с перебоями, например, в общественном транспорте. И тогда, если пользователь получает письмо, полностью состоящее из изображения, которые не прогружаются, рассылка выглядит так:
Картинки в имейле не прогрузились...Поэтому важно заботиться о том, чтобы письма были понятными и содержательными, особенно если картинки не отображаются.
Стандартных настроек для блокировки изображений нет. Ниже мы схематично описываем их для самых популярных почтовых клиентов для ПК, веб-служб и мобильных устройств. Мы добавили в сравнение поддержку ALT-текстов (замещающих или альтернативных текстов) и стилизованных ALT-текстов (стилизованных замещающих текстов). Эти атрибуты HTML-разметки необходимы. Когда изображения в письме отключены или недоступны, заполненный альтернативный текст часто показывается вместо изображения.
Отметим несколько нюансов почтовых служб Outlook. Outlook 2000, 2003, 2007, 2010 и 2013 добавляют к альтернативному тексту длинное сообщение от службы безопасности. Из-за этого он становится практически бесполезным, ведь он появляется только в конце предупреждения:
Нажмите правой кнопкой мыши, чтобы загрузить изображения. Для вашей безопасности Outlook запретил автоматическую загрузку этой картинки из интернета. Только после этого сообщения появляется часть альтернативного текста.Все почтовые службы Outlook (включая Outlook 2011 для Mac) показывают изображения в письмах от проверенных отправителей. Если подписчики добавят вашу электронную почту в свою адресную книгу, то картинки будут показываться автоматически.
Когда речь идет о блокировке изображений и поддержке стилизованного альтернативного текста, операторы веб-почты показывают неоднозначный результат.
* По умолчанию открытие изображений разрешено, но для теста было запрещено вручную. ** Изображения разрешены по умолчанию, и запретить их отображение нельзя. В GMX и в Web.de отображение картинок запрещено для писем, находящихся в папке Спам. Если это произошло, то изображения сворачиваются, а альтернативный текст не поддерживается.Хотя все веб-версии почтовиков поддерживают альтернативный текст, работа его стилизованной версии зависит от того, какой браузер использует подписчик. Стилизованный альтернативный текст отображается в текущих версиях Chrome и Firefox, а в Internet Explorer нет. В этом браузере видно его цвет, но не такие атрибуты как шрифт, размер, стиль и насыщенность.
Отображение заблокированных изображений в браузере ChromeОтображение заблокированных изображений в браузере Internet ExplorerOutlook.com относится к блокировке изображений немного странно. Он по умолчанию отключает картинки не во всех письмах, а только в тех, которые были отправлены от подозрительных пользователей. При этом неясно, по какому принципу отправителей делят на подозрительных и проверенных. Кроме того, пользователи Outlook могут запрещать отображение картинок во всех имейлах, которые приходят от отправителей не из списка контактов. Почтовый сервис по-разному обрабатывает эти два вида фильтрации:
в электронных письмах с подозрительных адресов он не показывает картинки, но отображает альтернативный текст;
для пользователей, у которых установлены более строгие настройки блокировки содержимого, Outlook.com использует серые поля.
Gmail не блокирует изображения с декабря 2013 года. Казалось бы, маркетологи и дизайнеры должны быть в восторге письма будут отображаться как нужно, а открытое отслеживание станет более надежным. Однако и это изменение не прошло гладко. Нередко изображения повреждаются или искажаются из-за проблем с кэшированием.
Хорошие новости для дизайнеров: у мобильных клиентов почтовых служб отличная поддержка альтернативного и альтернативного стилизованного текста!
*По умолчанию открытие изображений разрешено, но для теста было запрещено вручную. **Изображения разрешены по умолчанию, и запретить их отображение нельзя.Но и тут есть свои нюансы. Например, в Windows Phone вообще не отображается альтернативный текст, а вместо этого показывается сообщение с предложением загрузить изображения:
Получатель видит только предложения загрузить изображение альтернативный текст картинки не отображается.Альтернативный и альтернативный стилизованный тексты поддерживаются в BlackBerry Z10, но отображаются не всегда, например, в тех случаях, когда не помещаются в рамки максимального размера изображений. Если многие из ваших подписчиков пользуются BlackBerry, используйте краткий альтернативный текст!
Outlook.com для Android и iPhone по умолчанию блокирует изображения по той же схеме что и Outlook для ПК.
И, наконец, Yahoo! Для пользователей, которые читают имейл-сообщения в браузере Android, используется уникальная тактика блокировки изображений. Yahoo! блокирует все изображения, цвета фона, ссылки и так далее и отображает только текст из HTML-версии. Да-да, это не опечатка только текст из HTML, а не живой текст!
Никаких картинок только HTML-текст!Когда подписчик нажимает на кнопку Просмотреть HTML-сообщение полностью, то загружаются стилизованный альтернативный текст и остальные атрибуты CSS и HTML, но изображения по-прежнему не отображаются.
После нажатия кнопки Просмотреть HTML-сообщение полностью письмо выглядит интереснее, но картинок по-прежнему нетПомочь в борьбе со странностями в блокировке изображений в этом почтовом сервисе могут правильный баланс текста и картинок, а также альтернативный текст.
Дизайнеры должны быть готовы к тому, что большое количество почтовых сервисов блокируют изображения по умолчанию. К счастью, существует целый арсенал стратегий, которые помогут решить эту проблему.
Как мы уже говорили, использование альтернативного текста один из лучших способов обойти службы, которые запрещают изображения по умолчанию. Многие почтовые сервисы поддерживают его, и это отличный способ предоставить клиентам больше информации, когда картинки блокируются. Кроме того, альтернативный текст будет полезен для подписчиков с ослабленным зрением, которые пользуются программами чтения с экрана!
Так выглядит письмо, к изображениям в котором не добавили альтернативный текстРассылка оживает, стоит только прописать альтернативный текстЧтобы добавить альтернативный текст, нужно прописать атрибут к тегу изображения:
<img alt="insert alt text here" src="image.jpg" width="250" height="250" />
Лучше прописывать альтернативный текст для всех изображений в электронном письме. Но есть исключения. Например, пункты маркированного списка или изображения исключительно для визуального дизайна в подобных случаях атрибут ALT может оставаться пустым:
<img alt="" src="image.jpg" width="250" height="250" />
Не забывайте указывать высоту и ширину полей, в которых будет находиться альтернативный текст, когда изображения отключены. Еще его можно прокачать, добавив встроенный CSS для изменения шрифта, цвета, стиля и насыщенности:
<img style="font-size: 15px; color: #ffffff; font-style: italic; font-weight: bold; height: 250px; width: 250px;" alt="insert alt text here" src="image.jpg" width="250" height="250" />
Название этой техники стилизованный альтернативный текст. Он отлично подходит для того, чтобы придерживаться стиля бренда и сделать просмотр писем без изображений более приятным.
Со стилизованным альтернативным текстом письмо выглядит еще интереснееХотя тексты и дизайн вашей кампании могут иметь большое значение при взаимодействии подписчиков с письмами, обычно самая важная часть призыв к действию (Call to Action, он же CTA). CTA должны быть доступны для просмотра, даже если картинки отключены. Кнопки на основе изображений не обрабатываются они блокируются. Пользователи не выполняют действия, а конверсия не повышается. Да, есть вариант с текстовыми ссылками, но не лучше ли немного повеселиться и попробовать сохранить стиль бренда, используя неубиваемые кнопки?
Неубиваемые кнопки состоят из текстового слоя в сочетании с цветом фона, стилизованного под кнопку с изображением. Создавать их можно самыми разными способами (например, бесплатный инструмент Campaign Monitor), но мы предпочитаем использовать простой HTML и встроенные стили, которые хорошо подходят для большинства почтовых служб.
<table border="0" cellspacing="0" cellpadding="0" width="80%">
<tr>
<td bgcolor="#0b534a" style="padding: 12px 18px 12px 18px; -webkit-border-radius:3px; border-radius:3px" align="center"><a href="http://personeltest.ru/aways/litmus.com" target="_blank" style="font-size: 16px; font-family: Helvetica, Arial, sans-serif; font-weight: normal; color: #ffffff; text-decoration: none;">Visit Litmus</a></td>
</tr>
</table>
Вот пример одной из кампаний по электронной почте, в которой использовался этот метод.
Кнопка выжила даже несмотря на то, что отображение изображений запрещеноТак выглядит то же самое письмо, когда просмотр изображений разрешенНекоторые ниши (розничная торговля, туризм) предпочитают использовать электронные письма, основой которых являются изображения. Это нужно, чтобы поддерживать узнаваемость бренда и создавать красивый дизайн, но мы не рекомендуем так делать. Как поясняет Campaign Monitor, в электронных письмах на основе изображений не учитываются размеры файлов для пользователей смартфонов, доступность или соотношение кода HTML и текста, которые важны для алгоритмов анти-спам фильтров. Все это не оставляет выхода, когда изображения отключены. Взгляните на это письмо:
Создается ощущение, что письмо пустое в режиме отключенных изображений оно практически не несет смыслаПри первом открытии письмо кажется абсолютно пустым, потому что в нем использован дизайн, основывающийся исключительно на изображениях. Кроме того, из-за повторяющегося альтернативного текста подписчик даже не сможет различить разделы имейла.
Мы рекомендуем отказаться от электронных писем, полностью основанных на изображениях, и вместо этого использовать правильный баланс между текстом и количеством картинок. Это гарантирует вашим письмам:
доступность;
отсутствие проблем со спамом из-за соотношения HTML кода и фактического текста;
разборчивость и легкость для взаимодействия, независимо от того, заблокированы у получателя изображения или нет.
Электронное письмо HelloTravel прекрасный пример имейла, в котором для борьбы с блокировкой изображений используется много фактического текста и неубиваемые кнопки:
Так выглядит письмо в режиме отключенных изображенийА вот оно же, но уже с картинкамиКонечно же, это крайняя мера, так как HelloTravel не использует никаких изображений, а пользуется арсеналом фактического текста, цвета фона и неубиваемых кнопок. Но зато внешний вид письма практически не изменяется, когда изображения отключены!
Использование цветного фона во всем электронном письме, а особенно за областью картинок, позволяет соблюдать структуру и сохранить дизайн, когда картинки отключены. Например, в этом письме от ExactTarget используется оранжевый цвет фона за верхним баннером. Это выглядит не так привлекательно, но в версии с отключенными изображениями сохраняется та же структура, что и в полной версии.
Письмо с цветным фоном, но отображение картинок запрещеноПисьмо с цветным фоном, отображение картинок включеноХотя есть несколько способов кодирования цвета фона, рекомендуется использовать атрибут HTML bgcolor (Background Color) с 6-значным HEX-кодом.
Если вы действительно амбициозны, то можете по-настоящему поработать над оптимизацией писем в режиме отключенных картинок, используя мозаику или пиксельную графику. Они создаются с помощью нарезки изображений и цветов фона. PizzaExpress прекрасный пример бренда, который использует этот метод:
Отображение картинок в режиме блокировки изображенийТо же самое письмо, когда изображения доступныТщательное составление макета и использование множества вложенных таблиц даже позволили частично воссоздать повара в полосатой футболке, бросающего пиццу. Ну и что, что он немного стилизован и напоминает робота! И хотя этот тип оптимизации электронных писем под режим отключенных изображений не сможет заменить собой оригинальную картинку, он даст подписчикам отличное представление о контексте письма и о том, что они увидят, если изображение загрузится.
Этот метод работает лучше всего, когда на некоторых изображениях нет отображаемого альтернативного текста, что влияет на доступность письма. Поэтому важно взвесить все плюсы и минусы этой техники конкретно для вашей аудитории.
Так как множество почтовых служб отключают изображения по умолчанию, а некоторые подписчики делают это самостоятельно, избежать блокировки картинок невозможно. Решение о том, как именно будут противостоять этому ваши электронные письма, остается за вами. К счастью, можно получить конкурентное преимущество в почтовых рассылках, используя такие техники как альтернативный текст и цвет фона. Более того, все эти приемы можно использовать даже при создании писем в шаблонизаторе, без знания HTML-верстки. Благодаря этому ваши письма будут оставаться читабельными и эффективными при любых обстоятельствах.
Call To Action (CTA) это призыв к действию, с помощью которого можно перевести пользователя на сайт, получить отзыв, побудить к покупке и т.д. Рассказываем, как правильно сформулировать CTA и где лучше его разместить.
Рекомендации по созданию эффективного CTAПризыв должен быть коротким и понятным, как правило, не более четырех слов.
Иногда достаточно одного слова: анонс конференции призыв к регистрацииИногда призыв может быть длиннее, например, когда нужно подчеркнуть уникальность предложения.
В призыве указана вся информация, которая побудит читателя нажать на кнопкуГлаголы больше мотивируют на выполнение нужного действия. Используйте:
инфинитив для нейтрального призыва (подать заявку);
повелительное наклонение для активного призыва (подайте заявку);
первое лицо чтобы читатель ассоциировал призыв с собой (подаю заявку).
Текст призыва должен соответствовать теме рассылки, чтобы пользователи охотнее совершали целевое действие.
Призыв к использованию бонуса максимально соотносится с целью письма информированием подписчика о подарке.Когда CTA оторван от основного текста, читатели могут подумать, что в письме не будет актуальной информации они закрывают его, и в худшем случае отправляют спам.
Более подходящей была бы кнопка Образ недели, Хочу взглянуть или ВдохновляйтесьCTA, который эффективен в одной сфере бизнеса, может совсем не работать в другой. Например, для ниши B2B подходят деловые CTA, например, Заказать презентацию, а вот для рассылки игрового проекта такая подача не подойдет: сравните Получи 7 дней игрового времени и Оформить подписку.
Оригинальный CTA: вопросительная форма, сленг, отсутствие как такового призыва. Но такая кнопка может не подойти, например, для интернет-магазина детских товаров.При разработке кнопки учитывайте интересы разных сегментов вашей базы:
для новых пользователей актуальны CTA, побуждающие продолжить знакомство с компанией, например, Узнать больше, Посмотреть тарифы;
для теплых подписчиков подойдут призывы к закрытию сделки, например, Купить сейчас, Заказать проект;
для клиентов, которые уже воспользовались услугами, используйте кнопки Поделитесь отзывом, Покупайте со скидкой 20 %, Используйте бонус.
С помощью разных кнопок можно охватить больше групп подписчиков.
Вы демонстрируете заботу о клиенте и экономите его времяОтдайте предпочтение кнопке, а не гиперссылке или кликабельному изображению.
2. Выбирайте контрастные цвета, чтобы призыв не сливался с фоном.
Используйте корпоративные цвета для повышения узнаваемости бренда3. Используйте дополнительные эффекты (стрелки, анимация и др.), чтобы кнопку сразу заметили.
Анимации не должно быть много: одного элемента достаточноЕще один способ сделать CTA заметным добавить стрелочкиКоличество и расположение кнопок зависят от объема письма:
короткое достаточно одного призыва на первом экране;
длинное продублируйте CTA в конце сообщения;
подборка сопровождайте кнопкой каждый товар.
Когда в письме неоправданно много кнопок, читатель может не понять, какое действие нужно совершить.
Слишком много разноплановых призывов к действию: читатель не поймет, что от него нужноКнопки вступают в конфликт между собой, так как не имеют принципиального отличия и находятся слишком близкоПочту просматривают с разных гаджетов: убедитесь, что кнопка корректно отображается в мобильной версии. Большая кнопка рекомендация, но не панацея. Главное, чтобы она гармонично вписывалась в рассылку, а не занимала половину экрана.
Слишком маленькая кнопка тоже минус. Если пользователям будет сложно на нее нажать, они закроют письмоОб эффективности кнопки можно судить по базовым метрикам:
CTOR (Click-To-Open Rate) процент открывших рассылку пользователей, которые перешли по ссылке. Низкий CTOR может означать, что призыв остался незамеченным меняйте цвет на более контрастный, добавьте анимацию, сделайте кнопку больше.
CR (Conversion Rate) процент пользователей, которые получили рассылку и совершили целевое действие. Низкий CR может указывать на то, что предложение не заинтересовало подписчиков поработайте над формулировкой, адаптируйте тему письма и CTA под интересы аудитории.
Чтобы улучшить CTA:
Определите исходные статистические показатели. Например, CTOR рассылки равен 13,1 %.
Сформулируйте гипотезы относительно текста, цвета, размера или расположения кнопки. Например, если добавить анимацию, кликабельность вырастет до 4 %, а если заменить призыв Купить на Покупай со скидкой 20%, еще на 0,5 %.
Запустите сплит-тестирование. Чтобы понять, какое именно изменение повлияло на результат, проверяйте каждую гипотезу отдельно. Например, сначала добавить анимацию, а потом изменить призыв.
Проанализируйте результаты и внедряйте удачные варианты.
Делайте призыв коротким и понятным.
Используйте глаголы, чтобы он звучал убедительно.
Учитывайте интересы и потребности каждого сегмента базы.
Выбирайте контрастное оформление кнопки, если уместно добавьте анимацию.
Идеальный вариант: 1 рассылка = 1 CTA так пользователь поймет, какое действие нужно выполнить.
Убедитесь, что кнопка корректно отображается на разных устройствах.
Повышайте эффективность рассылки с помощью сплит-тестирования вариантов кнопки. Все необходимое для проведения A/B-тестов вы найдете в сервисе DashaMail.