• Модуль: salescenter
  • Путь к файлу: ~/bitrix/modules/salescenter/lib/integration/immanager.php
  • Класс: BitrixSalesCenterIntegrationImManager
  • Вызов: ImManager::installApplication
static function installApplication()
{
	if(!static::getInstance()->isEnabled())
	{
		return;
	}
	$application = BitrixImModelAppTable::getList([
		'filter' => [
			'=MODULE_ID' => Driver::MODULE_ID,
			'=CODE' => static::IM_APP_CODE,
		]
	])->fetch();

	if(!$application)
	{
		$iconId = static::getInstance()->saveApplicationIcon();
		// no icon - no application
		if($iconId > 0)
		{
			$applicationId = BitrixImApp::register([
				'MODULE_ID' => Driver::MODULE_ID,
				'BOT_ID' => 0,
				'CODE' => static::IM_APP_CODE,
				'REGISTERED' => 'Y',
				'ICON_ID' => $iconId,
				'JS' => 'BX.MessengerCommon.openStore()',
				'CONTEXT' => 'lines',
				'CLASS' => static::class,
				'METHOD_LANG_GET' => 'getAppLangInfo',
			]);
			if($applicationId > 0)
			{
				static::getInstance()->setApplicationId($applicationId);
			}
		}
	}
	else
	{
		static::getInstance()->setApplicationId($application['ID']);
	}
}