• Модуль: imbot
  • Путь к файлу: ~/bitrix/modules/imbot/lib/bot/partner24.php
  • Класс: BitrixImBotBotPartner24
  • Вызов: Partner24::activate
static function activate(int $userId, string $supportCode, string $supportName = null)
{
	if (!MainLoader::includeModule('im'))
	{
		return false;
	}
	if (self::getBotId())
	{
		return self::change($userId, $supportCode, $supportName);
	}

	$botId = self::register(['CODE' => $supportCode, 'NAME' => $supportName]);
	if (!$botId)
	{
		return false;
	}

	Option::set('imbot', self::OPTION_BOT_ACTIVE, true);
	Option::set('imbot', self::OPTION_BOT_WAIT_ACTIVATION, false);

	self::sendMessage([
		'DIALOG_ID' => self::USER_LEVEL_ADMIN,
		'MESSAGE' => Support24::getMessage('PARTNER_REQUEST_ACTIVATED'),
		'SYSTEM' => 'N',
		'URL_PREVIEW' => 'N'
	]);

	self::clientMessageAdd([
		'BOT_ID' => self::getBotId(),
		'USER_ID' => $userId,
		'DIALOG_ID' => $userId,
		'ATTACH' => [['MESSAGE' => self::getMessage('PARTNER_INFO_ACTIVATE')]],
	]);

	Support24::sendRequestFinalizeSession([
		'MESSAGE' => self::getMessage('SUPPORT_INFO_DEACTIVATE')
	]);

	return true;
}