Документация для разработчиков
Темная тема

ActionDto

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

  • Переход по ссылке

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

    Поле Тип Описание Дополнительно
    type const Должно иметь значение redirectОбязательное.
    uri string URI ссылкиНапример https://ya.ru или /crm/deal/details/1/

    Пример

    {
    	"type": "redirect",
    	"uri": "/crm/deal/details/1/"
    }
  • Rest событие

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

    • id - идентификатор события,
    • entityTypeId - идентификатор типа сущности, к которой привязано дело,
    • entityId - идентификатор элемента этой сущности,
    • activityId - идентификатор дела,
    • userId - идентификатор пользователя, вызвавшего действие.

    Поле Тип Описание Дополнительно
    type const Должно иметь значение restEventОбязательное.
    id string Идентификатор события. Можно указать любое удобное вам значение.Обязательное
    actionParams array Массив произвольного формата, данные из которого будут переданы в обработчик события
    animationType string URI ссылкиАнимация, которая будет показана в момент обработки события

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

    Чтобы дать пользователю понимание, что сейчас происходит какая-то обработка, можно использовать параметр animationType. Если animationType имеет значение loader, то запись таймлайна будет заблокирована и поверх нее будет показан лоадер до тех пор, пока эта запись не будет обновлена через [link=]crm.activity.configurable.update[/link].

    Если действие вызвано на кнопке в нижней части таймлайна и animationType имеет значение disable, то соответствующая кнопка будет заблокирована до тех пор, пока эта запись не будет обновлена через crm.activity.configurable.update.

    Пример

    {
    	"type": "restEvent",
    	"id": "resetButtonClick",
    	"actionParams": {
    		"myId": 123,
    		"someImportant": "qwerty"
    	},
    	"animationType": "disable"
    }

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

    В обработчик будут переданы параметры id=resetButtonClick, entityTypeId, entityId, activityId, userId, а также явно определенные разработчиком параметры myId=123 и someImportant=qwerty.

    C момента нажатия на кнопку и до тех пор, пока запись таймлайна не будет обновлена через crm.activity.configurable.update, кнопка будет заблокирована.

  • Открытие слайдера приложения

    Действие не поддерживается в мобильном приложении.

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

    • entityTypeId - идентификатор типа сущности, к которой привязано дело,
    • entityId - идентификатор элемента этой сущности,
    • activityId - идентификатор дела.

    Поле Тип Описание Дополнительно
    type const Должно иметь значение openRestAppОбязательное.
    actionParams array Массив произвольного формата, данные из которого будут переданы в слайдер приложения
    sliderParams ActionSliderParamsDto Параметры открытия слайдера

    Пример

    {
    	"type": "openRestApp",
    	"actionParams": {
    		"myId": 123,
    		"someImportant": "qwerty"
    	},
    	"sliderParams": {
    		"labelText": "это приложение",
    		"labelColor": "#c3b3ff",
    		"labelBgColor": "violet",
    		"title": "Это заголовок слайдера приложения",
    		"width": 700
    	}
    }

    ActionSliderParamsDto

    Параметры открытия слайдера приложения

    Поле Тип Описание Дополнительно
    width int Ширина слайдера, pxНе может быть использовано одновременно с leftBoundary
    leftBoundary int Слайдер во всю ширину окна браузера с отступом слева, pxНе может быть использовано одновременно с width
    labelBgColor string Код цвета фона кнопки закрытия слайдераМожет принимать только значения aqua, green, orange, brown, pink, blue, grey, violet
    labelColor string Код цвета кнопки закрытия слайдераВ формате #112233
    labelText string Текст кнопки закрытия слайдера
    title string Текст заголовка окна браузера при открытии слайдера



© «Битрикс», 2001-2024, «1С-Битрикс», 2024