- Модуль: voximplant
- Путь к файлу: ~/bitrix/modules/voximplant/classes/general/vi_rest.php
- Класс: CVoxImplantRestService
- Вызов: CVoxImplantRestService::getAuthorization
static function getAuthorization($params, $n, $server)
{
$allowedAuthTypes = [BitrixRestSessionAuthAuth::AUTH_TYPE => true];
if (Loader::includeModule('im') && class_exists('BitrixImCallAuth'))
{
$allowedAuthTypes[BitrixImCallAuth::AUTH_TYPE] = true;
}
if (!isset($allowedAuthTypes[$server->getAuthType()]))
{
throw new BitrixRestRestException("This method is only available for internal usage.", "WRONG_AUTH_TYPE", CRestServer::STATUS_FORBIDDEN);
}
$userId = static::getCurrentUserId();
$viUser = new CVoxImplantUser();
$result = $viUser->getAuthorizationInfo($userId, true);
if (!$result->isSuccess())
{
$errors = $result->getErrors();
throw new BitrixRestRestException($errors[0]->getMessage(), $errors[0]->getCode());
}
$data = $result->getData();
return [
'SERVER' => $data['server'],
'LOGIN' => $data['login']
];
}