- Модуль: im
- Путь к файлу: ~/bitrix/modules/im/lib/V2/Controller/Import.php
- Класс: BitrixImV2ControllerImport
- Вызов: Import::createGroupAction
public function createGroupAction(int $ownerId, CurrentUser $user, array $fields = [], string $externalId = ''): ?array
{
if (!ImportService::isAdmin((int)$user->getId()))
{
$this->addError(new ImportError(ImportError::ACCESS_ERROR));
return null;
}
$isOpen = ($fields['isOpen'] ?? 'N') === 'Y';
$type = $isOpen ? IM_MESSAGE_OPEN : IM_MESSAGE_CHAT;
$chatParams = [
'TITLE' => $fields['title'] ?? null,
'DESCRIPTION' => $fields['description'] ?? null,
'TYPE' => $type,
'AVATAR_ID' => $this->saveAvatar($fields['avatar'] ?? null),
'ENTITY_ID' => $externalId,
'AUTHOR_ID' => $ownerId,
'USERS' => false,
];
$initResult = ImportService::create($chatParams);
if (!$initResult->isSuccess())
{
$this->addErrors($initResult->getErrors());
return null;
}
return $this->convertKeysToCamelCase($initResult->getResult());
}