- Модуль: voximplant
- Путь к файлу: ~/bitrix/modules/voximplant/classes/general/vi_rest.php
- Класс: CVoxImplantRestService
- Вызов: CVoxImplantRestService::sipStatus
static function sipStatus($arParams)
{
$permissions = SecurityPermissions::createWithCurrentUser();
if (!$permissions->canPerform(SecurityPermissions::ENTITY_LINE, SecurityPermissions::ACTION_MODIFY))
{
throw new BitrixRestAccessException();
}
$arParams = array_change_key_case($arParams, CASE_UPPER);
$arParams['REG_ID'] ??= null;
$viSip = new CVoxImplantSip();
$result = $viSip->GetSipRegistrations($arParams['REG_ID']);
if (!$result)
{
throw new BitrixRestRestException($viSip->GetError()->msg, $viSip->GetError()->code, CRestServer::STATUS_WRONG_REQUEST);
}
$viSip->updateSipRegistrationStatus([
'sip_registration_id' => $result->reg_id,
'error_message' => $result->error_message,
'status_code' => $result->status_code,
'successful' => $result->status_result === 'success'
]);
return [
'REG_ID' => $result->reg_id,
'LAST_UPDATED' => $result->last_updated,
'ERROR_MESSAGE' => $result->error_message,
'STATUS_CODE' => $result->status_code,
'STATUS_RESULT' => $result->status_result,
];
}