Перейти к содержанию

Отложенные выпуски рассылок

Список отложенных выпусков

{

  "action" : "issue.later.list",

 ,"from" : "YYYY-MM-DD" -- от даты (не обязательно)

 ,"upto" : "YYYY-MM-DD" -- до даты (не обязательно)

 ,"group" : [ -- фильтр по группам (не обязательно)

               код-группы-1

              ,код-группы-2

               ...

             ]

 ,"channel" :  "email|sms|viber|push|vk|tg|vknotify|pushapp|max"  -- фильтр по каналу выпуска (не обязательно).

 ,"draft" : номер черновика" -- фильтр по черновику (необязательно)
                             -- параметр отсутствует - не фильтровать
                             -- параметр присутствует, но пустой - все выпуски не по черновикам

}

ответ

{

  <общие поля>

 ,"list" :  [

              {

                 "id" : номер выпуска

                ,"create.date" : "YYYY-MM-DD hh:mm:ss" -- дата постановки задания

                ,"track.id" : "номер трекера выпуска" 

                ,"status" : "статус задания" -- hold  - отложено на хранение
                                             -- later - отложено для выпуска
                                             -- now   - выпуск начал выходить
                                             -- error - ошибка выпуска

                -- если статус "отложено из-за ошибки" 

                ,"status.reason" : код ошибки

                -- если статус "отложено для выпуска" 

                ,"later.time" : "YYYY-MM-DD hh:mm" -- запланированная дата выпуска

-- базовые параметры выпуска

                ,"name" : название выпуска

                ,"label" : [ ... ] -- метки выпуска

                ,"group" : код группы для которой отложен выпуск

                ,"letter" : {
                              "draft.id" : код черновика используемого для выпуска

                             ,"subject" : "тема выпуска" -- для sms совпадает с именем отправителя
                             ,"from.email" : адрес отправителя
                             ,"from.name" : имя отправителя
                            }

                 ,"channel" : "канал выпуска" 

                 ,"users.slice" : ...
                 ,"tz_best" : ...
                 ,"tz_limit" : ...
                 ,"tz_observance" : ...

                 ,"reltype" : ...
                 ,"relref" : ...

                ,"thumbnail" : [ список ссылок, аналогично issue.later.get ]
              },

             ...

            ]

}

Прочитать отложенный выпуск

{
 "action" : "issue.later.get",

 "id" : номер выпуска,
}

ответ

{

  <общие поля>

 ,"obj" : {
                 "id" : номер выпуска

                ,"create.date" : "YYYY-MM-DD hh:mm:ss" -- дата постановки задания

                ,"track.id" : "номер трекера выпуска" 

                ,"status" : "статус задания" -- hold  - отложено на хранение
                                             -- later - отложено для выпуска
                                             -- now   - выпуск начал выходить
                                             -- error - ошибка выпуска

                -- если статус "отложено из-за ошибки" 
                ,"status.reason" : код ошибки

                ,"track.id" : номер - номер асинхронного запроса выданный выпуску при issue.send

                <......... параметры issue.send использованные при задании выпуска .......>

-- все эти параметры совпадают c issue.send, и значения obj можно использовать для создания нового выпуска
-- необходимо будет добавить action
-- уточнить значения sendwhen и later.time
-- и настоятельно рекомендуется удалить "лишнее" : id, create.date, status, status.reason, format, name, issue.date,
-- но для просто смены даты выпуска или отсылки немедленно используйте специализированный вызов issue.later.send
-- для изменения прочих параметров выпуска есть вызов issue.later.set

-- при выпуске по черновику перед вызовом issue.send необходимо проверить параметры
-- subject, from.name и from.email черновика, так как они необязательны в черновике,
-- но обязательны при выпуске

           -- ссылки на изображения черновика
           -- только для html черновиков
           -- в настоящий момент поддерживаются картинки 800x600
           -- надо учитывать что ссылка может вести на отсутствующее изображение
           -- например, из-за сбоя при её формировании

           ,"thumbnail" : [
                          {
                           "url" : "ссылка на изображение" 
                          ,"width" : ширина в пикселах,
                          ,"height" : высота в пикселах
                          },

                         ...............

                         ]
         }
}

Изменение даты выхода отложенного выпуска

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

Исключение - Экспресс-выпуск и Транзакционные письма. Выпуски по этим группам могут быть запланированы на одну и ту же дату в любом количестве.

{

 "action" : "issue.later.send",

 "id" : номер выпуска,

-- или

 "issue.date" : "YYYY-MM-DD hh:mm" -- Новая дата выпуска. Дата должна быть в будущем
                                   -- Если параметр отсутствует, то выпуск выйдет сразу

-- или

 "issue.date"  : "now" -- выпустить сейчас

-- или

 "issue.date"  : "hold" -- отложить на хранение. Выпуск не выйдет, пока не будет задана новая дата выпуска

}

ответ

{

  <общие поля>

}

Изменение отложенного выпуска

Атомарно заменяет отложенный выпуск полностью.

Для просто изменения даты выхода есть issue.later.send

Параметр sendwhen должен быть later, delay или save.

{
 "action" : "issue.later.set" 

,"id" : номер отложенного выпуска

.... параметры как issue.send ....
}

ответ

{
 -- как issue.send, кроме track.id который не меняется
}

Удаление отложенного выпуска

Трекер выпуска остаётся и помечается как "Действие отменено".

{

 "action" : "issue.later.delete",

 "id" : номер отложенного выпуска

}

ответ

{

  <общие поля>

}