• Модуль: imopenlines
  • Путь к файлу: ~/bitrix/modules/imopenlines/lib/common.php
  • Класс: BitrixImOpenLinesCommon
  • Вызов: Common::getUserIdByCode
static function getUserIdByCode(string $userCode)
{
	if (mb_substr($userCode, 0, 5) === 'imol|')
	{
		$userCode = mb_substr($userCode, 5);
	}

	$entity = Chat::parseLinesChatEntityId($userCode);
	if (empty($entity['connectorUserId']))
	{
		return false;
	}

	$userData = UserTable::getList([
		'select' => ['ID', 'EXTERNAL_AUTH_ID'],
		'filter' => ['=ID' => $entity['connectorUserId']]
	])->fetch();
	if ($userData['EXTERNAL_AUTH_ID'] !== 'imconnector')
	{
		return false;
	}

	return $userData['ID'];
}