• Модуль: im
  • Путь к файлу: ~/bitrix/modules/im/lib/V2/Import/ImportSendingService.php
  • Класс: BitrixImV2ImportImportSendingService
  • Вызов: ImportSendingService::getMenu
private function getMenu(array $message): Result
{
	$result = new Result();
	$menu = null;
	if (isset($message['menu']))
	{
		if ($message['menu'] === 'N')
		{
			return $result->setResult('N');
		}
		$menu = [];
		if (!isset($message['menu']['ITEMS']))
		{
			$menu['ITEMS'] = $message['menu'];
		}
		else
		{
			$menu = $message['menu'];
		}
		$menu['BOT_ID'] = $message['botId'];
		$menu = BitrixImBotContextMenu::getByJson($menu);
		if (!isset($menu))
		{
			return $result->addError(new ImportError('MENU_ERROR', 'Incorrect menu params'));
		}
		if (!$menu->isAllowSize())
		{
			return $result->addError(new ImportError('MENU_OVERSIZE', 'You have exceeded the maximum allowable size of menu'));
		}
	}

	return $result->setResult($menu);
}