• Модуль: imbot
  • Путь к файлу: ~/bitrix/modules/imbot/lib/bot/partner24.php
  • Класс: BitrixImBotBotPartner24
  • Вызов: Partner24::onChatStart
static function onChatStart($dialogId, $joinFields)
{
	if (!MainLoader::includeModule('im'))
	{
		return false;
	}

	$messageFields = $joinFields;
	$messageFields['DIALOG_ID'] = $dialogId;

	if ($messageFields['CHAT_TYPE'] != IM_MESSAGE_PRIVATE)
	{
		$groupLimited = self::getMessage('GROUP_LIMITED');
		if ($groupLimited)
		{
			self::sendMessage([
				'DIALOG_ID' => $messageFields['DIALOG_ID'],
				'MESSAGE' => $groupLimited,
				'SYSTEM' => 'N',
				'URL_PREVIEW' => 'N'
			]);
		}

		$chat = new CIMChat(self::getBotId());
		$chat->deleteUser(mb_substr($dialogId, 4), self::getBotId());

		return true;
	}

	if (self::isActiveSupport())
	{
		if (self::isUserIntegrator($messageFields['USER_ID']))
		{
			$message = self::getMessage('WELCOME_INTEGRATOR');
		}
		else if (self::isActiveSupportForUser($messageFields['USER_ID']))
		{
			$message = self::getMessage('WELCOME');
		}
		else
		{
			$message = self::getMessage('WELCOME_LIMITED');
		}
	}
	else
	{
		$messageCode = Support24::isActivePaidSupport()? 'MESSAGE_END_PAID': 'MESSAGE_END_FREE';
		$message = self::getMessage($messageCode);
	}

	if (empty($message))
	{
		return true;
	}

	self::sendMessage([
		'DIALOG_ID' => $messageFields['USER_ID'],
		'MESSAGE' => $message,
		'SYSTEM' => 'N',
		'URL_PREVIEW' => 'N'
	]);

	return true;
}