Блог Горошко Андрея Bitrix24 Получить настройки рабочего времени пользователя timeman.settings

Получить настройки рабочего времени пользователя timeman.settings

Оптимизация производительности и безопасности — залог успешного проекта на 1С-Битрикс. Данный материал посвящен практическому применению «Получить настройки рабочего времени пользователя timeman.settings». Мы подготовили подробный разбор принципов работы и развернутые примеры интеграции.

Получить настройки рабочего времени пользователя timeman.settings

> Scope: timeman
>
> Кто может выполнять метод: любой пользователь

Метод timeman.settings получает настройки рабочего времени пользователя.

Параметры метода

Название
тип
Описание
USER_ID
integer
Идентификатор пользователя.

По умолчанию — идентификатор текущего пользователя

Примеры кода

  • cURL (Webhook)
    curl -X POST \
    -H "Content-Type: application/json" \
    -H "Accept: application/json" \
    -d '{"USER_ID":503}' \
    https://**put_your_bitrix24_address**/rest/**put_your_user_id_here**/**put_your_webhook_here**/timeman.settings
  • cURL (OAuth)
    curl -X POST \
    -H "Content-Type: application/json" \
    -H "Accept: application/json" \
    -d '{"USER_ID":503,"auth":"**put_access_token_here**"}' \
    https://**put_your_bitrix24_address**/rest/timeman.settings
  • JS
    try
    {
    	const response = await $b24.callMethod(
    		'timeman.settings',
    		{
    			'USER_ID' : 503
    		}
    	);
    	
    	const result = response.getData().result;
    	console.info(result);
    }
    catch( error )
    {
    	console.error(error);
    }
  • PHP
    try {
        $response = $b24Service
            ->core
            ->call(
                'timeman.settings',
                [
                    'USER_ID' => 503
                ]
            );
    
        $result = $response
            ->getResponseData()
            ->getResult();
    
        if ($result->error()) {
            error_log($result->error());
        } else {
            echo 'Info: ' . print_r($result->data(), true);
        }
    
    } catch (Throwable $e) {
        error_log($e->getMessage());
        echo 'Error fetching timeman settings: ' . $e->getMessage();
    }
  • BX24.js
    BX24.callMethod(
        'timeman.settings',
        {
            'USER_ID' : 503
        },
        function(result) {
            if (result.error()) {
                console.error(result.error());
            } else {
                console.info(result.data());
            }
        }
    );
  • PHP CRest
    require_once('crest.php');

    $result = CRest::call(
        'timeman.settings',
        [
            'USER_ID' => 503
        ]
    );

    echo '<PRE>';
    print_r($result);
    echo '</PRE>';

Обработка ответа

HTTP-статус: 200

{
    "result": {
        "UF_TIMEMAN": true,
        "UF_TM_FREE": false,
        "UF_TM_MAX_START": "09:15:00",
        "UF_TM_MIN_FINISH": "17:45:00",
        "UF_TM_MIN_DURATION": "08:00:00",
        "UF_TM_ALLOWED_DELTA": "00:15:00",
        "ADMIN": true
    },
    "time": {
        "start": 1742994169.701416,
        "finish": 1742994169.7355511,
        "duration": 0.03413510322570801,
        "processing": 0.0076749324798583984,
        "date_start": "2025-03-26T16:02:49+03:00",
        "date_finish": "2025-03-26T16:02:49+03:00",
        "operating_reset_at": 1742994769,
        "operating": 0
    }
}

Возвращаемые данные

Название
тип
Описание
result
object
Корневой элемент ответа.

Содержит объект c описанием настроек рабочего времени пользователя

UF_TIMEMAN
boolean
Включен ли учет рабочего времени для пользователя.

Имеет значение true если включен

UF_TM_FREE
boolean
Включен ли для пользователя свободный график работы.

Имеет значение true если включен.

Пользователю со свободным графиком не нужно подтверждать у руководителя изменения рабочего времени и указывать причины изменений

UF_TM_MAX_START
string
Максимальное время начала рабочего дня в формате HH:MM:SS.

Начало рабочего дня позже установленного времени считается нарушением

UF_TM_MIN_FINISH
string
Минимальное время завершения рабочего дня в формате HH:MM:SS.

Завершение рабочего дня раньше установленного времени считается нарушением

UF_TM_MIN_DURATION
string
Минимальная длительность рабочего дня в формате HH:MM:SS.

Рабочий день, длительность которого меньше установленной, считается нарушением

UF_TM_ALLOWED_DELTA
string
Допустимый промежуток изменения рабочего времени в формате HH:MM:SS.

Изменение рабочего дня на период меньше установленного не требует подтверждения руководителя

ADMIN
boolean
Может ли пользователь управлять рабочими днями других сотрудников. Возвращается только для текущего пользователя.

Имеет значение true если права есть

time
time
Информация о времени выполнения запроса

Обработка ошибок

HTTP-статус: 400

{
    "error":"",
    "error_description":"User not found"
}

Возможные коды ошибок

КодОписаниеЗначение
пустая строкаUser not foundПользователь с указанным USER_ID не найден
  • [](./index)
  • [](./timeman-open)
  • [](./timeman-pause)
  • [](./timeman-close)
  • [](./timeman-status)

💡 Экспертное мнение и рекомендации

Практические рекомендации:

  • При написании кастомных компонентов для «Получить настройки рабочего времени пользователя timeman.settings» всегда разделяйте бизнес-логику и представление (шаблон).
  • Используйте отладку SQL-запросов через конструкцию $wpdb->last_query или стандартный трекер Битрикса, чтобы контролировать нагрузку.

Похожая задача в бизнесе?

Помогу автоматизировать процессы и внедрить ИИ

Меня зовут Андрей Горошко. Я Full-stack разработчик и эксперт по 1С-Битрикс. Настраиваю CRM Битрикс24, разрабатываю защищенные API и создаю умных ИИ-агентов для автоматизации рутины.

Related Post

Тариф Битрикс24 «Базовый»: возможности для микробизнеса и отдела продажТариф Битрикс24 «Базовый»: возможности для микробизнеса и отдела продаж

Выбор редакции, расчет точной сметы и покупка официальных лицензий 1С-Битрикс и Битрикс24 — это ключевой этап планирования любого цифрового проекта. Информация по теме «Тариф Битрикс24 «Базовый»: возможности для микробизнеса и

Поставить звонок на удержание со стороны приложения CallCardSetHoldПоставить звонок на удержание со стороны приложения CallCardSetHold

Эффективная интеграция и кастомизация функционала в Битрикс24 часто требует работы на уровне API. Сегодня мы подробно рассмотрим «Поставить звонок на удержание со стороны приложения CallCardSetHold». Вы узнаете экспертные методики работы

Получить описание для пользовательских полей crm.userfield.fieldsПолучить описание для пользовательских полей crm.userfield.fields

Каждый PHP-разработчик, работающий с экосистемой Bitrix Framework, должен глубоко понимать работу её ключевых компонентов. В этой статье мы проведем подробный аудит темы «Получить описание для пользовательских полей crm.userfield.fields», проанализируем лучшие