Перейти к основному содержимому

Лента новостей

Лента новостей — это набор сообщений из одного или нескольких источников, которые можно добавить в email-рассылку. Используя ленту, можно «подписать» пользователя на интересующую его информацию: обновления, актуальные события или важные новости.

Вот как лента новостей может выглядеть в письме:

Lenta example

Важно

Перед использованием ленты новостей , чтобы проверить настройки аккаунта.

Ленту новостей можно добавить в рассылку двумя способами:

  • заранее создать ленту и наполнить источниками через API-консоль, после чего добавить в письмо командой подстановки;
  • добавить ленту сразу в письмо, указав в ней ссылку на источник новостей.

Актуальные новости лента будет получать из источников, которые к ней подключены, например, из RSS-каналов. Вы можете подключить к ленте свой RSS или любое количество общедоступных каналов с информацией, которую хотите использовать в рассылке.

Источники новостей можно комбинировать по-разному и составлять из них ленты под конкретные задачи:

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

Рассмотрим на примере, когда необходимо регулярно рассылать подписчикам новости о биржевых котировках. В качестве источников в лентах новостей используются RSS-каналы с данными Московской, Санкт-Петербургской, Лондонской, Токийской, Гонконгской и Нью-Йоркской бирж. Но пользователи хотят получать только ту информацию, которая их интересует.

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

Rss channel

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

  • общая рассылка:
    • еженедельный дайджест со всех источников;
  • индивидуальные рассылки для тех, кто хочет получать только конкретные новости:
    • об обновлениях с российских бирж;
    • с азиатских бирж;
    • только с Лондонской биржи.

Как добавить в письмо ленту новостей

1. Создайте ленту

Чтобы создать ленту новостей, перейдите в API-консоль и выполните запрос:

{
"action": "lenta.set",
"obj": {
"name": "название ленты"
}
}

В эту ленту новостей будут включены все доступные источники. Её будем использовать для рассылки еженедельного дайджеста.

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

Чтобы увидеть список всех созданных лент новостей и их id, перейдите в API-консоль и выполните запрос:

{
"action": "lenta.list"
}

2. Добавьте в ленту источники новостей

В качестве источников новостей в ленте используются ссылки на RSS-каналы.

Структура описания источников новостей

Лента новостей использует теги из подключённых RSS-каналов для описания получаемой информации. Если необходимых тегов в источниках нет — лента не сможет собрать с них информацию и окажется пустой.

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

"title" : "название источника",
"descr" : "описание источника",
"link" : "ссылка на обычную версию источника",
"logo" : "ссылка на логотип источника",
"author" : "информация об авторе",
"copyright" : "информация об авторских правах"

Каждая новость в подключённом источнике также должна содержать необходимые параметры:

"title" : "название источника",
"content" : "содержимое новости" //тег <description> или <yandex:full-text>, должен быть обязательно,
"link" : "ссылка на обычную версию новости",
"dt" : "YYYY-MM-DD hh:mm:ss" //дата публикации новости (тег <pubDate> или <dc:creator>, должен быть обязательно),
"id" : "идентификатор новости" //тег <guid>, должен быть обязательно,
"author" : "информация об авторе новости",
"category" : {
"домен" : {
"категория" : "метка"
,....
}
,...
},

"enclosure" : [ //приложения к новости на основании тегов <enclosure> и <media:thumbnail>
{
"url" : "ссылка"
,"type" : "mime-type"
,"length" : "длина"
}
,....
],
"ymd" : "YYYY-MM-DD",
"hm" : "hh:mm»

Чтобы добавить источник в ленту новостей, перейдите в API-консоль и выполните запрос:

{
"action": "lenta.source.add",
"lenta.id": id ленты,
"url": "адрес источника новостей"
}

Add source

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

У всех источников из нашего примера есть свой RSS-канал: каждый из них нужно подключить к лентам новой командой. Для пользователей, которые хотят получать информацию обо всех изменениях на биржах, нужно создать ленту с еженедельным дайджестом и добавить в неё все доступные источники. Для пользователей, которых интересуют обновления на конкретных биржах, нужно создать индивидуальные ленты и добавить в них только те источники, которые нужны в конкретном случае.

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

Система периодически проверяет обновления во всех источниках настроенных лент. Ещё используемые в рассылке источники проверяются в момент выпуска, но не чаще одного раза в 15 минут.

Старые новости удаляются из базы через 15 дней после их получения.

3. Добавьте ленту в письма

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

Одну ленту новостей можно использовать в письме неоднократно. Например: сформировать «меню» из заголовков новостей, а в другом месте письма вывести полный текст новости. В одном выпуске можно использовать сразу несколько разных лент.

Чтобы добавить новостную ленту в рассылку, используйте функции lenta_get или news_get. Они могут работать как с уже созданной лентой, так и напрямую с каналом новостей:

  • функция lenta_get структурирует новости, описывая их содержание и источники, получая информацию из RSS-канала. Чтобы показать новости в письме, нужно использовать команду шаблонизатора [% FOREACH %] — это позволит оформить внешний вид новостей в ленте самым гибким образом.
  • Функция news_get не структурирует новости, а просто выводит текст из поля content всех подключённых источников. Это может быть удобно, если вы используйте свой RSS-канал, структуру которого уже оформили нужным вам образом.

Разместите функцию [% lenta_get(id ленты) %] в том месте письма, где будет находиться лента. Этой командой лента подключается к письму, а при отправке команда преобразуется в ленту новостей.

Используйте в команде id той ленты, которую хотите добавить в письмо.

Lenta get api

Чтобы отобразить новости подключённой ленты в нужном вам виде, добавьте следом одну из команд шаблонизатора PROScript.

Для подключения нескольких лент в одном письме каждую из них нужно вызвать отдельной командой подстановки в том месте, где вы хотите выводить её новости.

Важно

Предпросмотр шаблона письма с подключенной лентой новостей работает в предыдущем интерфейсе.

4. Протестируйте рассылку (опционально)

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

{
"action": "lenta.send",
"id": "id ленты",
"email": "адрес",
"decor": "id шаблона", //можно не указывать, если лента привязана к подписчику; если лента не привязана к подписчику, то id шаблона необходимо указать
"n": "кол-во новостей для теста"
}

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

Запросы для удаления лент, удаления источников новостей из лент и другие команды можно посмотреть в Sendsay API.

Как добавить в письмо ленту новостей с указанием URL источника

Важно

Добавить ленту новостей с указанием URL источника нельзя для выпусков транзакционных писем.

Другой способ добавления ленты новостей в письмо — использовать команду подстановки с указанием прямого источника новостей. Создавать ленту через API-консоль предварительно не нужно. Вместо id заранее созданной ленты в команде указывается URL-адрес источника.

Добавленная таким образом лента формируется «на лету», а система не фиксирует метку времени последнего использования. В такой ленте будут выводиться все новости, которые есть в источнике.

Чтобы добавить в рассылку ленту новостей с указанием URL источника:

1. Добавьте ленту в письмо

Добавить в рассылку ленту с указанием источника можно, используя одну из функций шаблонизатора: lenta_get или news_get. Они отличаются тем, в каком виде получают контент из подключённых источников. Это влияет на возможность настройки отображения новостей в письме.

Функция lenta_get структурирует новости, описывая их содержание и источники, получая информацию из RSS-канала.

Чтобы добавить в письмо ленту со ссылкой на источник, используйте команду [% lenta_get(URL) %]. Разместите команду в том месте, где хотите выводить ленту.

На месте URL в команде укажите ссылку на RSS-канал источника новостей.

Lenta get link

Чтобы отобразить новости подключённой ленты в нужном вам виде, добавьте следом одну из команд шаблонизатора PROScript.

Для подключения нескольких лент в одном письме каждую из них нужно вызвать отдельной командой подстановки в том месте, где вы хотите выводить её новости.

2. Протестируйте рассылку (опционально)

Чтобы отправить тестовую копию письма, нажмите стандартную кнопку в редакторе выпуска.

Lenta url test

Как отправить тестовую копию письма

Созданные и наполненные ленты новостей можно добавить в автоматическую рассылку, чтобы пользователи регулярно получали информацию по установленному расписанию.

Как создать автоматическую рассылку по расписанию