Каждый PHP-разработчик, работающий с экосистемой Bitrix Framework, должен глубоко понимать работу её ключевых компонентов. В этой статье мы проведем подробный аудит темы «При добавлении секции календаря или ресурса OnCalendarSectionAdd», проанализируем лучшие практики и покажем, как правильно использовать добавлении секции в реальных задачах.
При добавлении секции календаря или ресурса OnCalendarSectionAdd
> Scope: calendar
>
> Кто может подписаться: любой пользователь
Событие вызывается при добавлении секции календаря или ресурса.
Технически ресурс — это секция календаря. Каждый ресурс помещается в специальный тип календарей, и для него создается отдельная секция. При добавлении, обновлении или удалении ресурсов вызываются события OnCalendarSection*.
События не будут отправляться в приложение, пока установка не завершена. Проверьте установку приложения
Что получает обработчик
Данные передаются в виде POST-запроса {.b24-info}
Пример: событие на создание объекта секции календаря с id = 202.
{
"event": "ONCALENDARSECTIONADD",
"event_handler_id": "6",
"data": {
"id": "202"
},
"ts":"1734608536",
"auth": {
"access_token": "s6p6eclrvim6da22ft9ch94ekreb52lv",
"expires_in": "3600",
"scope": "calendar",
"domain": "some-domain.bitrix24.com",
"server_endpoint": "https://oauth.bitrix24.tech/rest/",
"status": "F",
"client_endpoint": "https://some-domain.bitrix24.com/rest/",
"member_id": "a223c6b3710f85df22e9377d6c4f7553",
"refresh_token": "4s386p3q0tr8dy89xvmt96234v3dljg8",
"application_token": "51856fefc120afa4b628cc82d3935cce"
}
}Названиетип | Описание |
|---|---|
| event [ string][1] | Символьный код события. В данном случае — |
| event_handler_id [ integer][1] | Идентификатор обработчика события |
| data [ object][1] | Объект, содержащий информацию о добавленном объекте секции календаря. Содержит единственный ключ — |
| data.id [ string][1] | Идентификатор объекта секции календаря |
| ts [ timestamp][1] | Дата и время отправки события из очереди событий |
| auth [ object][1] | Объект, содержащий параметры авторизации и данные о портале, на котором произошло событие. Структура описана ниже |
Параметр auth {#auth}
- [](../../events/index)
- [](../../events/event-bind)
- [](./index)
- [](./on-calendar-section-update)
- [](./on-calendar-section-delete)
[1]: ../../data-types.md
💡 Экспертное мнение и рекомендации
Советы эксперта по интеграции:
- Всегда используйте кэширование при частых запросах к добавлении секции, чтобы разгрузить базу данных.
- Соблюдайте стандарты PSR при написании обработчиков для «При добавлении секции календаря или ресурса OnCalendarSectionAdd».
- Регулярно проводите аудит производительности системы с помощью встроенного монитора 1С-Битрикс.
Похожая задача в бизнесе?
Помогу автоматизировать процессы и внедрить ИИ
Меня зовут Андрей Горошко. Я Full-stack разработчик и эксперт по 1С-Битрикс. Настраиваю CRM Битрикс24, разрабатываю защищенные API и создаю умных ИИ-агентов для автоматизации рутины.
или на почту: gorandvas@yandex.ru