• Модуль: intranet
  • Путь к файлу: ~/bitrix/modules/intranet/classes/general/rest.php
  • Класс: CIntranetRestService
  • Вызов: CIntranetRestService::OnRestServiceBuildDescription
static function OnRestServiceBuildDescription()
{
	$result = array(
		'department' => array(
			'department.fields' => array('CIntranetRestService', 'departmentFields'),
			'department.get' => array('CIntranetRestService', 'departmentGet'),
			'department.add' => array('CIntranetRestService', 'departmentAdd'),
			'department.update' => array('CIntranetRestService', 'departmentUpdate'),
			'department.delete' => array('CIntranetRestService', 'departmentDelete'),
		),
		'contact_center' => array(
			CRestUtil::PLACEMENTS => array(
				self::CONTACT_CENTER_PLACEMENT => array()
			),
		),
		CRestUtil::GLOBAL_SCOPE => [
			CRestUtil::PLACEMENTS => [
				self::PAGE_BACKGROUND_WORKER_PLACEMENT => [
					'max_count' => 1,
					'user_mode' => true,
					'options' => [
						'errorHandlerUrl' => 'string',
					],
					'registerCallback' => [
						'moduleId' => 'intranet',
						'callback' => [
							'CIntranetRestService',
							'onRegisterPlacementPageBackground',
						],
					],
				],
				self::LEFT_MENU => [],
			],
		],
	);

	$placementMap = BitrixIntranetBindingMenu::getRestMap();
	foreach ($placementMap as $scope => $placementList)
	{
		if (!empty($result[$scope][CRestUtil::PLACEMENTS]))
		{
			$result[$scope][CRestUtil::PLACEMENTS] = array_merge($placementList, $result[$scope][CRestUtil::PLACEMENTS]);
		}
		else
		{
			$result[$scope][CRestUtil::PLACEMENTS] = $placementList;
		}
	}

	return $result;
}