Ленты Новостей¶
Список лент¶
ответ
{
"list" : [
{
"id" : номер ленты
,"name" : название ленты
,"issued" : "дата-время последнего использования в рассылках" -- Ys
-- если лента привязана к подписчику
,"member" : "получатель"
}
...........
]
}
Прочитать ленту¶
ответ
{
"obj" : {
"id" : номер ленты
,"name" : название ленты
,"issued" : "дата-время последнего использования в рассылках" -- Ys
,"source" : [ -- информация об RSS/Atom каналах входящих в ленту
{
"url" : "адрес канала"
,"dt.fetched" : "YYYY-MM-DD hh:mm:ss" -- дата последнего чтения канала
,"dt.updated" : "YYYY-MM-DD hh:mm:ss" -- дата последнего пополнения новостей из канала
,"error" : {
"count": количество ошибок работы с каналом
,"dt" : "YYYY-MM-DD hh:mm:ss" - дата последней ошибки
,"str" : описание последней ошибки
}
}
...
]
-- если лента привязана к подписчику
,"member" : "адрес получателя"
,"decor" : "идентификатор" -- идентификатор информационного письма или черновика выпуска который
-- будет использоваться при выпуске накопившихся новостей
-- расписание выпусков
,"schedule" : {
-- часы по которым высылать письма
"hour" : [ час, час, ... ]
-- номера дней недели по которым высылать письма
-- от 1 (Пн) до 7 (Вс)
,"weekday" : [ номер, номер, ... ]
}
}
}
Создать/изменить ленту¶
Создает ленту (при отсутствии id) или изменяет некоторые её параметры.
{
"action" : "lenta.set"
,"obj" : {
"name" : "название ленты"
,"member" : "адрес получателя" -- только при создании. изменить нельзя
-- для лент привязанных к получателю
,"decor" : "идентификатор информационного письма или черновика выпуска"
-- расписание выпусков
-- если параметр полностью отсутствует, то с 8 по 18 с понедельника по пятницу
,"schedule" : {
-- часы по которым высылать письма. если не указано, то с 8 по 18
"hour" : [ час, час, ... ]
-- номера дней недели по которым высылать письма, если не указано, то с Пн по Пт
-- от 1 (Пн) до 7 (Вс)
,"weekday" : [ номер, номер, ... ]
}
}
-- необязательные
,"id" : номер ленты
,"return_fresh_obj" : "нужно вернуть данные объекта -- да, нет ( 1 | 0 )"
}
ответ
{
<общие поля>
,"id" : номер ленты
,obj { ... } -- объект в формате lenta.get если "return_fresh_obj" : 1
}
Удаление ленты¶
ответ
Добавление источника в ленту¶
{
"action" : "lenta.source.add"
,"lenta.id" : номер ленты
,"url" : "адрес источника добавляемого в ленту"
}
ответ
Удаление источника из ленты¶
{
"action" : "lenta.source.delete"
,"lenta.id" : номер ленты
,"url" : "адрес источника удаляемого из ленты"
}
ответ
Обновление источника¶
Указанный источник опрашивается вне расписания в поиске свежих новостей.
Если с момента прошлой проверки (плановой и этим вызовом) прошло меньше 15 минут, то опрос произведён не будет и количество свежих новостей будет возвращено как -1.
ответ
Тестовый выпуск ленты¶
Вызов отправляет тестовое письмо с указанным количеством последних новостей ленты на указанный адрес (а не на адрес для которого создана лента).
В отличии от реального выпуска, отосланные новости не отмечаются как использованные и потом будут в итоге использованы при реальной отсылке.
Если количество последних новостей указано, то отметка их использования в предыдущих выпусках игнорируется.
Вызов предназначен только для тестирования шаблона оформления указанной ленты, чему помогает возможность явно указать нужное количество новостей, а не ждать пока свежие новости появятся в ленте.
Если в итоге новостей нет, то письмо не отправляется
Для тестирования выпуска рассылки с лентой есть альтернативные вариант - тестовый выпуск через issue.send
{
"action" : "lenta.send"
."id" : номер ленты
,"email" : адрес для отсылки тестового письма
,"n" : количество последних новостей для теста
-- если не указано, то используются все ещё не отосланные новости (их может не быть)
,"decor" : "черновик" -- если лента привязана к подписчику, то можно не указывать - будет взят черновик указанный в ленте
-- если лента не привязана к подписчику, то черновик указать необходимо
}
ответ