Push-сервер — это то, что делает Битрикс24 «живым»: мгновенные сообщения в чате, уведомления и звонки без обновления страницы. В коробке он не работает сам по себе — его нужно поднять и настроить. Разберём, как это устроено и как чинить, если пуши молчат.
Что такое push-сервер и зачем он нужен
Push-сервер (Push & Pull) — отдельная серверная служба на Node.js, которая держит постоянное соединение с браузерами и приложениями пользователей и мгновенно доставляет им события. Без него портал вынужден «спрашивать» сервер по таймеру, и всё приходит с задержкой.
От push-сервера зависят:
- Чат и мессенджер — сообщения появляются моментально;
- Уведомления — о задачах, сделках, упоминаниях;
- Звонки и видеозвонки — сигнализация в реальном времени;
- Живые счётчики — обновление без перезагрузки страницы.
Как устроен обмен сообщениями
Схема работы такая: портал (PHP) отправляет событие в push-сервер, а push-сервер по постоянному соединению доставляет его подключённым клиентам. Транспорт — WebSocket (с откатом на другие механизмы, если WebSocket недоступен).
Ключевые компоненты связки:
- Node.js-служба push-and-pull;
- nginx — проксирует WebSocket-соединения к службе;
- модуль «Push and Pull» в портале — включается и настраивается в административной части;
- ключ безопасности для подписи сообщений между порталом и сервером.
Именно поэтому push нельзя «включить одной галочкой» — нужна согласованная настройка на уровне сервера и портала.
Настройка push-сервера в BitrixVM
Самый простой путь — использовать BitrixVM, где push настраивается из консольного меню. В меню окружения есть пункт управления push-сервером (обычно Configure push/RTC service или аналогичный), который поднимает Node.js-службу и прописывает связку с nginx и порталом.
Общий порядок:
- в меню BitrixVM выбрать настройку push-сервера для нужного сайта;
- окружение установит Node.js-службу и настроит проксирование в nginx;
- в портале активируется модуль Push and Pull;
- проверить статус службы и отправить тестовое уведомление.
Мобильные push-уведомления
Отдельная тема — пуши в мобильное приложение Битрикс24. Здесь в цепочку добавляются сервисы Apple (APNs) и Google (FCM), через которые уведомление доставляется на телефон, даже когда приложение закрыто.
Что важно понимать про мобильные пуши в коробке:
- они идут через облачный шлюз push-уведомлений вендора к APNs/FCM;
- для этого порталу нужен доступ в интернет к сервисам уведомлений;
- пользователь должен разрешить уведомления в приложении и в настройках телефона;
- во внутренней сети без выхода наружу мобильные пуши работать не будут.
То есть локальный push-сервер отвечает за веб-клиент и десктоп, а доставка на смартфоны требует связи с внешними сервисами.
Диагностика: почему пуши не приходят
Когда уведомления молчат, проверяйте по цепочке от службы до клиента:
| Симптом | Вероятная причина |
|---|---|
| Сообщения только после обновления | Push-служба не запущена или не проксируется |
| Push не подключается на HTTPS | WebSocket идёт по ws вместо wss |
| Ошибка авторизации push | Не совпадает ключ безопасности |
| Нет пушей на телефон | Нет доступа к APNs/FCM или запрет в приложении |
Полезные шаги: проверить, что Node.js-служба запущена, посмотреть логи push-сервера и nginx, отправить тестовое уведомление из административной части и открыть консоль браузера — там видно, устанавливается ли WebSocket-соединение.
Нагрузка и стабильность
Push-сервер держит постоянные соединения со всеми онлайн-пользователями, поэтому на крупных порталах он ощутимо потребляет ресурсы. Что учитывать:
- число одновременных соединений растёт с числом активных сотрудников;
- службе нужна память и корректные лимиты открытых файлов в системе;
- стоит следить за тем, чтобы служба автоматически перезапускалась при сбое;
- обновления окружения могут затрагивать настройку push — проверяйте после апдейтов.
Для очень больших внедрений push выносят на отдельные мощности, но большинству компаний хватает штатной конфигурации BitrixVM.
Итог
Push-сервер — обязательная часть живого Битрикс24: без него нет мгновенного чата, уведомлений и звонков. В коробке он поднимается как Node.js-служба, проще всего — через BitrixVM, с корректным проксированием WebSocket и согласованным SSL. Мобильные пуши дополнительно требуют доступа к сервисам APNs/FCM.
Если push в вашем портале не работает или тормозит на нагрузке, мы настроим службу, проверим связку с nginx и SSL и наладим доставку уведомлений на веб и мобильные устройства.
Частые вопросы
Что такое push-сервер в Битрикс24?
Это отдельная служба на Node.js, которая по постоянному соединению мгновенно доставляет пользователям события — сообщения чата, уведомления и сигнализацию звонков без обновления страницы.
Почему сообщения приходят только после обновления страницы?
Почти всегда причина в неработающем или недоступном push-сервере. Соединение не устанавливается, и портал получает события только при перезагрузке.
Как настроить push в коробке проще всего?
Через консольное меню BitrixVM — там есть пункт настройки push-сервера, который поднимает Node.js-службу и прописывает проксирование в nginx автоматически.
Почему push не работает на HTTPS?
Скорее всего WebSocket пытается соединиться по незащищённому ws вместо wss. При работе портала по HTTPS соединения push тоже должны идти по защищённому протоколу.
Работают ли мобильные пуши без интернета?
Нет. Мобильные уведомления идут через сервисы Apple APNs и Google FCM, поэтому порталу нужен доступ в интернет. В закрытом контуре пуши на телефон не придут.
Как проверить, работает ли push?
Отправьте тестовое уведомление из административной части, проверьте, что Node.js-служба запущена, и посмотрите в консоли браузера, устанавливается ли WebSocket-соединение.
Нагружает ли push-сервер систему?
Да, он держит постоянные соединения со всеми онлайн-пользователями и потребляет память. На крупных порталах за его ресурсами и автоперезапуском нужно следить.
Поможем с настройкой и поддержкой Битрикс24
Поможем с настройкой, доработкой и поддержкой Битрикс24.