23  /  108

Конструктор, примеры

Просмотров: 2385 (Статистика ведётся с 06.02.2017)
Александр Суворов
Сложность урока:
4 уровень - сложно, требуется сосредоточится, внимание деталям и точному следованию инструкции.
1
2
3
4
5

Объект Вложение является конструктором, вы можете «собрать» его так, как вам требуется, используя доступные блоки. Порядок добавления блоков имеет значение.


Пример «Баг-трекер»

JavaScript:

BX24.callMethod('imbot.message.add', {
    DIALOG_ID: 'chat20921',
    MESSAGE: 'Message from bot',
    ATTACH: [
       {USER: {
            NAME: "Уведомления Mantis",
            AVATAR: "http://files.shelenkov.com/bitrix/images/mantis2.jpg",
            LINK: "http://shelenkov.com/",
        }},
        {LINK: {
            NAME: "Открыть Mantis из внешней сети",
            LINK: "http://shelenkov.com/",
        }},
        {DELIMITER: {
            SIZE: 200,
            COLOR: "#c6c6c6"
        }},
        {GRID: [
            {
                NAME: "Проект",
                VALUE: "BUGS",
                DISPLAY: "LINE",
                WIDTH: 100
            },
            {
                NAME: "Категория",
                VALUE: "im",
                DISPLAY: "LINE",
                WIDTH: 100
            },
            {
                NAME: "Сводка",
                VALUE: "Требуется реализовать возможность добавлять структурированные сущности в сообщения и уведомления мессенджера.",
                DISPLAY: "BLOCK"
            },
        ]},
        {DELIMITER: {
            SIZE: 200,
            COLOR: "#c6c6c6"
        }},
        {GRID: [
            {
                NAME: "Новое обращение",
                VALUE: "",
                DISPLAY: "ROW",
                WIDTH: 100
            },
            {
                NAME: "Назначено",
                VALUE: "Шеленков Евгений",
                DISPLAY: "ROW",
                WIDTH: 100
            },
            {
                NAME: "Дедлайн",
                VALUE: "04.11.2015 17:50:43",
                DISPLAY: "ROW",
                WIDTH: 100
            },
        ]},
   ]
}, function(result){
    if(result.error())
    {
        console.error(result.error().ex);
    }
    else
    {
        console.log(result.data());
    }
});

PHP:

restCommand('imbot.message.add', Array(
   "DIALOG_ID" => $_REQUEST['data']['PARAMS']['DIALOG_ID'],
   "MESSAGE" => "У вас новое уведомление",
   "ATTACH" => Array(
      Array("USER" => Array(
         "NAME" => "Уведомления Mantis",
         "AVATAR" => "http://files.shelenkov.com/bitrix/images/mantis2.jpg",
         "LINK" => "http://shelenkov.com/",
      )),
      Array("LINK" => Array(
         "NAME" => "Открыть Mantis из внешней сети",
         "LINK" => "http://shelenkov.com/",
      )),
      Array("DELIMITER" => Array(
         'SIZE' => 200,
         'COLOR' => "#c6c6c6"
      )),
      Array("GRID" => Array(
         Array(
            "NAME" => "Проект",
            "VALUE" => "BUGS",
            "DISPLAY" => "LINE",
            "WIDTH" => 100
         ),
         Array(
            "NAME" => "Категория",
            "VALUE" => "im",
            "DISPLAY" => "LINE",
            "WIDTH" => 100
         ),
         Array(
            "NAME" => "Сводка",
            "VALUE" => "Требуется реализовать возможность добавлять структурированные сущности в сообщения и уведомления мессенджера.",
            "DISPLAY" => "BLOCK"
         ),
      )),
      Array("DELIMITER" => Array(
         'SIZE' => 200,
         'COLOR' => "#c6c6c6"
      )),
      Array("GRID" => Array(
         Array(
            "NAME" => "Новое обращение",
            "VALUE" => "",
            "DISPLAY" => "ROW",
            "WIDTH" => 100
         ),
         Array(
            "NAME" => "Назначено",
            "VALUE" => "Шеленков Евгений",
            "DISPLAY" => "ROW",
            "WIDTH" => 100
         ),
         Array(
            "NAME" => "Дедлайн",
            "VALUE" => "04.11.2015 17:50:43",
            "DISPLAY" => "ROW",
            "WIDTH" => 100
         ),
      )),
   )
), $_REQUEST["auth"]);


Пример «Информационный листок»

JavaScript:

BX24.callMethod('imbot.message.add', {
        DIALOG_ID: 'chat20921',
    MESSAGE: 'У вас новое уведомление',
    ATTACH: {
		ID: 1,
		COLOR: "#29619b",
		BLOCKS: [
			{MESSAGE: "Коллеги, обновление [b]im 16.0.0[/b] проверено и готово к выгрузке.[BR] Необходимо поставить тег.[BR] В обновление больше не подкладываем."},
			{IMAGE: {LINK: "http://files.shelenkov.com/bitrix/images/win.jpg"}}
		]
	}
}, function(result){
    if(result.error())
    {
        console.error(result.error().ex);
    }
    else
    {
        console.log(result.data());
    }
});

PHP:

restCommand('imbot.message.add', Array(
   "DIALOG_ID" => $_REQUEST['data']['PARAMS']['DIALOG_ID'],
   "MESSAGE" => "У вас новое уведомление",
   "ATTACH" => Array(
      Array("MESSAGE" => "Коллеги, обновление [b]im 16.0.0[/b] проверено и готово к выгрузке.[BR] Необходимо поставить тег.[BR] В обновление больше не подкладываем."),
      Array("IMAGE" => Array(
         "LINK" => "http://files.shelenkov.com/bitrix/images/win.jpg",
      )),
   )
), $_REQUEST["auth"]);


1
Курсы разработаны в компании «1С-Битрикс»