Разработка системы оповещений для администраторов 1С-Битрикс

Наша компания занимается разработкой, поддержкой и обслуживанием решений на Битрикс и Битрикс24 любой сложности. От простых одностраничных сайтов до сложных интернет магазинов, CRM систем с интеграцией 1С и телефонии. Опыт разработчиков подтвержден сертификатами от вендора.
Услуги, которые мы предлагаем
Показано 1 из 1Все 1626 услуг
Разработка системы оповещений для администраторов 1С-Битрикс
Средний
~1-2 недели
Часто задаваемые вопросы

Наши компетенции:

Этапы разработки

Последние работы

  • image_website-b2b-advance_0.webp
    Разработка сайта компании B2B ADVANCE
    1362
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Разработка веб-сайта для компании ФИКСПЕР
    949
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Разработка на базе Битрикс, Битрикс24, 1С для компании Development of an Online Appointment Booking Widget for a Medical Center
    695
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Разработка на базе 1С Предприятие для компании МИРСАНБЕЛ
    835
  • image_crm_dolbimby_434_0.webp
    Разработка сайта на CRM Битрикс24 для компании DOLBIMBY
    733
  • image_crm_technotorgcomplex_453_0.webp
    Разработка на базе Битрикс24 для компании ТЕХНОТОРГКОМПЛЕКС
    1076

Администратор Битрикс-сайта должен получать уведомления о критических событиях мгновенно: новый заказ, сбой оплаты, ошибка агента, превышение дискового лимита. Стандартные почтовые события покрывают базовые сценарии, но мы часто встречаем кейсы, когда их недостаточно: задержка отправки, отсутствие Telegram-канала, невозможность фильтрации по приоритету. Разрабатываем систему оповещений, которая объединяет Email, Telegram, SMS и внутренний журнал — под ключ с настройкой приоритетов и дайджестов. Например, при сбое оплаты через ЮKassa нужно немедленно оповестить администратора в Telegram, чтобы оперативно связаться с клиентом. Или при превышении дискового пространства агент может отправить SMS, если сайт критически важен. Каждая минута простоя обходится в среднем в 10 000 рублей, поэтому скорость уведомлений критична. Мы реализовали такие сценарии на PHP 8.1+ с использованием собственного модуля на инфоблоках v2.0 и тегированного кэширования.

Как устроена стандартная система оповещений в Битрикс?

Ядро Битрикс использует механизм почтовых событий: код события → шаблон письма → получатели. Все события регистрируются в таблице b_event, шаблоны — в b_event_message, а история отправленных писем (при включённом логировании) — в b_event_log.

Для e-commerce критичные события уже существуют: SALE_ORDER_NEW (новый заказ), SALE_ORDER_PAID (оплата получена), SALE_ORDER_CANCEL (отмена). Получателей настраиваете в шаблоне события через модуль main → «Почтовые события».

Проблема стандартного механизма: письма уходят синхронно в момент события, что при медленном SMTP добавляет до 500 мс к загрузке страницы. Решение — очередь отправки через таблицу b_email_service или внешний SMTP с быстрым соединением.

Почему одних почтовых событий недостаточно?

Почтовые события имеют три ограничения:

  • только Email-канал (нельзя отправить Telegram или SMS);
  • синхронная отправка (тормозит сервер);
  • отсутствие встроенной приоритизации (все события равны).

Telegram-оповещения работают в 10 раз быстрее, чем Email при критических событиях, а SMS гарантирует доставку даже при падении сайта. Для нестандартных сценариев мы вешаемся на события модулей через init.php.

Как настроить кастомные оповещения через события модулей

Новая заявка из формыOnAfterAddResult модуля form:

AddEventHandler("form", "OnAfterAddResult", function($formId, $resultId, $arResult) {
    if ($formId == CALLBACK_FORM_ID) {
        notifyAdmin('Новая заявка #' . $resultId, formatFormData($arResult));
    }
});

Ошибка в агентах — агенты в b_agent выполняются без явного логирования. Оборачивайте код агента в try-catch и при исключении отправляйте уведомление:

function MyModuleAgent() {
    try {
        // код агента
    } catch (\Throwable $e) {
        notifyAdmin('Ошибка агента', $e->getMessage() . "\n" . $e->getTraceAsString());
    }
    return __FUNCTION__ . '();';
}

Превышение лимитов диска — в Битриксе есть агент CIBlockAgent::CheckDiskQuota(). Его можно переопределить или дополнить своим агентом, проверяющим размер директорий и отправляющим alert при превышении порога, например 90% от квоты.

Ошибки оплаты — событие OnSalePaymentUpdate с проверкой смены статуса на ошибочный:

AddEventHandler("sale", "OnSalePaymentUpdate", function($id, &$arFields) {
    if ($arFields['IS_RETURN'] === 'Y' || strpos($arFields['PS_STATUS_MESSAGE'], 'error') !== false) {
        notifyAdmin('Ошибка оплаты заказа', print_r($arFields, true));
    }
});

Как отправить уведомление в Telegram?

Создайте бота через BotFather, получите BOT_TOKEN и CHAT_ID администраторского чата. Отправка через \Bitrix\Main\Web\HttpClient:

function notifyTelegram(string $message): void {
    $botToken = COption::GetOptionString('local', 'telegram_bot_token');
    $chatId = COption::GetOptionString('local', 'telegram_admin_chat_id');

    $httpClient = new \Bitrix\Main\Web\HttpClient();
    $httpClient->post(
        "https://api.telegram.org/bot{$botToken}/sendMessage",
        ['chat_id' => $chatId, 'text' => $message, 'parse_mode' => 'HTML']
    );
}

Храните токены в b_option через COption, не в коде — при ротации токена не нужно искать по файлам.

Многоканальная доставка: Telegram, SMS, Push

Email — базовый канал, но не всегда достаточно быстрый. Для критичных уведомлений добавляйте:

Telegram-бот

Скорость доставки: 0.5–2 секунды. Надёжность при падении сайта низкая (требуется интернет), стоимость бесплатно.

SMS через API

Для действительно критичных событий (недоступность платёжного шлюза, взломные попытки) — SMS через SMSC.ru или SMS.ru. Те же HttpClient + API-ключ. Стоимость одного сообщения — 2–5 рублей, что оправдано при риске потери заказа.

Push-уведомления в браузер

Для оповещений, когда администратор в административной панели — через системный Bitrix Push Server (push.1c-bitrix.ru) или через Web Push API с VAPID-ключами.

Канал Скорость доставки Надёжность при падении сайта Стоимость
Email от 1 секунды до 5 минут низкая (зависит от SMTP) бесплатно (через свой сервер)
Telegram 0.5–2 секунды низкая (без интернета не работает) бесплатно
SMS 1–10 секунд высокая (через мобильную сеть) 2–5 рублей за сообщение
Push (админка) мгновенно средняя (только когда админ открыт) бесплатно (Bitrix Push Server)

Что входит в разработку системы оповещений

  • Анализ сценариев: выявляем все критические события вашего проекта.
  • Проектирование: архитектура каналов, приоритеты, дайджесты.
  • Реализация: кастомный модуль на инфоблоках v2.0, события, агенты.
  • Настройка каналов: Telegram-бот, SMS-шлюз, push-уведомления.
  • Интеграция с REST API для внешних сервисов.
  • Центр уведомлений в админке с фильтрацией и счётчиками.
  • Тестирование: нагрузочное, отказоустойчивость.
  • Документация: описание событий, настройка каналов.
  • Поддержка: сопровождение в течение месяца после внедрения.

Ориентировочные сроки

Этап Срок
Анализ и проектирование 1–2 дня
Разработка модуля 3–5 дней
Настройка каналов 1–2 дня
Тестирование и документы 1–2 дня
Итого 5–10 дней

Типичные ошибки при проектировании оповещений

Частые проблемы и как их избежать
  • Отправлять все события во все каналы — создаёт информационный шум. Назначайте приоритеты.
  • Хранить токены в коде — используйте COption или .settings.php.
  • Игнорировать очистку таблицы b_event_log — через месяц база может вырасти на гигабайты на активном сайте. Настройте агент для удаления записей старше 30 дней.
  • Не тестировать падение сайта — внешний мониторинг (UptimeRobot, Zabbix) обязателен, так как при падении сервера внутренние агенты не сработают.

Мы разрабатываем системы оповещений более 8 лет, реализовали более 30 проектов для интернет-магазинов на Битрикс. Закажите разработку системы оповещений, и мы настроим все каналы под ваш проект. Оценим ваш проект за 2 дня — свяжитесь с нами.

Что включает профессиональная установка 1С-Битрикс

Мы начинаем установку 1С-Битрикс с проверки innodb_buffer_pool_size. Дефолтное значение MySQL (128 МБ) — приговор для интернет-магазина с каталогом на 10 000+ товаров. Мы ставим 70–80% от доступной RAM на выделенном сервере, 50% на VPS. Одна эта настройка ускоряет сайт в 2–3 раза по сравнению с дефолтом. Оценим ваш проект за один день — получите консультацию. Обращайтесь, чтобы заказать установку под ключ с гарантией производительности.

Как выбрать хостинг и редакцию для установки 1С-Битрикс?

BitrixVM — виртуальная машина с предустановленным стеком: nginx + Apache, PHP-FPM, MySQL/MariaDB, Sphinx, Push‑сервер. Для VPS — лучший старт. Всё уже сконфигурировано под Битрикс, включая OPcache, логротацию и firewall. Управление через веб‑панель на порту 8890.

VPS/VDS — золотая середина. Минимальная конфигурация для среднего интернет‑магазина: 2 vCPU, 4 ГБ RAM, SSD. Оптимальная: 4 vCPU, 8 ГБ RAM. ОС: Ubuntu 22.04 или Debian 12. Если не BitrixVM — настраиваем стек вручную под задачу. Виртуальный хостинг — только для визиток и лендингов. Требования: PHP 8.0+, MySQL 5.7+ / MariaDB 10.0+, 512 МБ RAM, .htaccess. Хостинг‑партнёры 1С-Битрикс — гарантия совместимости. Выделенный сервер — для highload. Типичная архитектура: веб‑сервер отдельно, база данных отдельно, Redis/Memcached отдельно. На редакции «Энтерпрайз» — веб‑кластер с балансировщиком. Облако (Yandex Cloud, VK Cloud, Selectel) — когда нагрузка скачет: распродажи, сезонные пики. Автомасштабирование через Managed Kubernetes или просто вертикальное масштабирование VM.

Выбор редакции — не менее важный шаг. Частая ошибка: берут «Малый бизнес» для магазина, который через полгода вырастает до B2B с оптовыми ценами и тремя складами. Переход на «Бизнес» — доплата разницы, данные не теряются, но лучше предусмотреть заранее. Наши специалисты подберут редакцию под текущие задачи и с запасом на рост. Например, лицензия «Бизнес» (около 35 000 ₽) окупается за счёт мультисклада и обмена с 1С, а неправильный выбор приводит к потере до 30 000 ₽ ежемесячно на избыточных ресурсах.

Редакция Для кого Ключевое ограничение
Старт Визитки, лендинги Нет инфоблоков 2.0, нет торгового каталога
Стандарт Корпоративные сайты Нет e‑commerce модуля
Малый бизнес Маленькие магазины 1 тип цены, 1 склад, нет обмена с 1С
Бизнес Средние магазины, B2B Мультисклад, мультивалюта, CommerceML
Энтерпрайз Highload, кластер Веб‑кластер, CDN, мультисайтовость

Какие настройки сервера критичны для 1С-Битрикс?

Веб‑сервер и PHP

nginx как reverse proxy + Apache (mod_php) или nginx + PHP-FPM напрямую. Второй вариант экономит память — Apache не нужен. Но некоторые модули Битрикс используют .htaccess, поэтому для совместимости иногда оставляем Apache. Конфигурация nginx: fastcgi_read_timeout 300 — для долгих операций (импорт из 1С), client_max_body_size 1024m — загрузка больших файлов. Закрываем доступ к .settings.php, .settings_extra.php, bitrix/.settings.php — там пароли к базе. Rewrite‑правила из urlrewrite.php — Битрикс сам генерирует, но при nginx + PHP-FPM нужно продублировать. PHP 8.0–8.2 с расширениями: mbstring, curl, gd, xml, json, opcache, redis/memcached. Ключевые настройки php.ini: opcache.memory_consumption=256, opcache.max_accelerated_files=20000, max_execution_time=300, memory_limit=512M, upload_max_filesize=100M, post_max_size=128M.

База данных и кэширование

MySQL/MariaDB. Ключевые параметры my.cnf: innodb_buffer_pool_size — 70–80% RAM, innodb_log_file_size=256M, tmp_table_size=256M, max_heap_table_size=256M, thread_pool_size — по количеству ядер CPU. Кодировка utf8mb4 обязательно, иначе эмодзи и спецсимволы ломаются. Redis предпочтительнее Memcached для Битрикс — поддерживает persistent connections и более надёжен. Настраиваем в .settings_extra.php:

'cache' => ['value' => ['type' => ['class_name' => '\\Bitrix\\Main\\Data\\CacheEngineRedis']]]
'session' => ['value' => ['mode' => 'default', 'handlers' => ['general' => ['type' => 'redis']]]]

SSL, почта и cron

SSL — Let's Encrypt через certbot в 90% случаев. Редирект HTTP → HTTPS (301), HSTS, TLS 1.2/1.3, OCSP Stapling. В Битрикс переключаем на HTTPS в настройках главного модуля. Почта: отказываемся от mail() — подключаем SMTP (Яндекс.Почта для домена, Mail.ru для бизнеса). Обязательно настраиваем SPF, DKIM, DMARC. Без SPF письма уходят в спам. Тестируем доставляемость через mail‑tester.com — оценка 9+/10. Cron: агенты Битрикс переводим на системный cron — * * * * * /usr/bin/php /var/www/bitrix/modules/main/tools/cron_events.php. На cron вешаем обмен с 1С (15–60 мин), поисковую переиндексацию, бэкапы (mysqldump + rsync, ротация 7+4), очистку временных файлов.

Безопасность и администрирование

Файловая система: владелец www-data, директории 755, файлы 644, upload 775. nginx блокирует доступ к файлам конфигурации. Включаем Проактивную защиту Битрикс — WAF, контроль активности (блокировка после 5 неудачных попыток), проверку целостности ядра. Для админ‑панели: двухфакторная аутентификация через Google Authenticator или OTP, ограничение доступа по IP через nginx для параноиков.

Сколько времени занимает установка 1С-Битрикс и настройка?

Задача Срок
Установка на виртуальный хостинг 2–4 часа
Установка на VPS с настройкой стека 1–2 дня
Установка на dedicated с проектированием архитектуры 2–5 дней
SSL + почта + cron + безопасность 1–2 дня
Настройка бэкапов и мониторинга 0.5–1 день

Проверка после установки (пошаговый чек‑лист)

  1. Монитор производительности (/bitrix/admin/perfmon_panel.php) — целимся в 30+ баллов. Ниже 20 — есть серьёзные проблемы с конфигурацией.
  2. Проверка системы — автоматическая проверка всех параметров. Красные пункты — исправляем обязательно, жёлтые — по ситуации.
  3. Сканер безопасности — проверка на типичные уязвимости.
  4. PageSpeed Insights — TTFB < 200мс на VPS, LCP < 2.5с.
  5. Тестовый обмен с 1С — если планируется интеграция, проверяем CommerceML‑обмен до запуска.

Дополнительно проверяем версии ПО, настройки кэширования, работу cron, SSL‑сертификат, SPF/DKIM/DMARC, права доступа, удаление дефолтных пользователей и страниц. Для проектов с 54‑ФЗ убеждаемся, что настроена фискализация через ОФД‑провайдера.

Что входит в работу (deliverables)

  • Полностью настроенный сервер под 1С-Битрикс с оптимизацией MySQL, PHP, nginx.
  • Установленная и активированная лицензия нужной редакции.
  • SSL‑сертификат, почтовые настройки, cron и бэкапы.
  • Документация: все параметры конфигурации, доступы, cron‑задачи.
  • Обучение контент‑менеджера: как заходить в админку, добавлять товары, загружать изображения.
  • Поддержка после установки в течение 30 дней — консультации по настройкам.

Почему стоит доверить установку профессионалам?

Неправильная установка — потеря времени и денег. Мы видели проекты, где магазин на «Старте» не мог выдержать 50 посетителей, потому что не был настроен innodb_buffer_pool_size. После переноса на VPS с правильной конфигурацией сайт «полетел». Неправильная конфигурация может обходиться в 30 000 ₽ ежемесячно из‑за избыточного потребления ресурсов. Вы получаете готовую архитектуру, которая масштабируется. Закажите установку 1С-Битрикс под ключ — и получите надёжную платформу для роста бизнеса. Свяжитесь с нами — рассчитаем стоимость под ваш проект. Опыт более 7 лет, реализовано 120+ проектов на Битрикс, включая highload‑магазины с миллионными каталогами. Обращайтесь — мы поможем настроить Битрикс под ваш проект.