Как работают push-уведомления в мобильном приложении TrueConf
Что из себя представляет push-уведомление
Push-уведомление (также просто "пуш", push) — в общем случае это уведомление, которое приходит на ваше устройство от сервиса рассылки данных . После установки приложения на мобильную ОС пуши используются для передачи каких-либо сведений по событию в сервере, в том числе когда приложение не используется (свёрнуто либо выгружено из оперативной памяти устройства).
В механизме доставки мобильных push-уведомлений в случае конкретного приложения могут использоваться разные сервисы в зависимости от магазина приложений из которого оно скачано. В случае приложения Труконф поддержаны сервисы:
FCM (Firebase Cloud Messaging) для магазина приложений Google Play Store на ОС Android;
HMS Core (Huawei Mobile Services) для магазина приложений Huawei AppGallery на ОС Android;
RuStore для магазина приложений RuStore на ОС Android;
APNs (Apple Push Notification Service) для магазина приложений Apple App Store на ОС iOS.
Если на устройстве установлено несколько магазинов приложений, будет использован сервис push-уведомлений того, из которого было установлено приложение Труконф.
Если приложение устанавливается из Rustore, то для корректной работы push-уведомлений потребуется настройка работы самого Rustore на устройстве, подробнее в статье про решение проблем с пушами.
Пример push-уведомления от приложения Труконф:

Механизм работы push-уведомления
В мобильном приложении Труконф вы получите push-уведомление при входящем сообщении и упоминании в чате, при условии что у вас не отключены уведомления в настройках.
Общий принцип работы пушей Труконф следующий:
Устройство регистрируется в сервисе push-уведомлений в зависимости от магазина приложений, из которого было скачано мобильное приложение TrueConf.
В случае скачивания и установки мобильного приложения TrueConf с официальной страницы загрузки, используемые сервисы push-уведомлений будут зависеть от выбранной версии APK-файла. На данный момент поддерживаются версии с сервисами Google Play, Huawei и RuStore.
Сервис push-уведомлений выдает уникальный токен устройства, этот ID нужен для доставки уведомлений.
После отправки сообщения клиентом-инициатором, TrueConf Server обращается к серверу уведомлений TrueConf
reg.trueconf.com.Сервер уведомлений TrueConf обращается к сервису push-уведомлений и передает такие данные (содержимое может настроить администратор в панели управления ВКС-сервером):
имя отправителя;
текст уведомления ;
название группового чата/канала;
название конференции или входящего звонка;
превью вложенного изображения (если размер менее 1 Кб);
тип вложения (файл/текстовое сообщение/геопозиция).
Информация в push-уведомлении передается по защищенному HTTPS подключению с использованием TLS-сертификата.
Сервис push-уведомлений проверяет токен и пересылает уведомление на устройство клиента-получателя.
Даже если приложение закрыто, ОС покажет всплывающее сообщение.

В зависимости от сервиса push уведомлений для их получения на стороне мобильной ОС используется разный TCP порт, подробнее в нашей статье про порты.
Уведомления без пуш-сервисов (In-App Notifications)
Помимо системных push-уведомлений, существуют и другие способы оповещения, которые поддержаны клиентским приложением Труконф — In-App Notifications (уведомления внутри приложения).
Основные отличия от сервисных (системных) пушей:
работают напрямую между сервером видеосвязи (TrueConf Server или TrueConf Enterprise) и не зависят от внешних сервисов;
работает только если приложение активно (используется в данные момент).
Данный тип уведомлений работает мгновенно, без задержек, и не зависит от внешних сервисов, но работает только если приложение активно (используется в данные момент).
Рассмотрим пример в котором отсутствует интернет-соединение между сервисом рассылок и сервером уведомлений TrueConf. Тогда в зависимости от состояния приложения:
если мобильное приложение TrueConf свёрнуто либо выгружено из оперативной памяти устройства — push-уведомления не поступят на устройство клиента-получателя;
если мобильное приложение TrueConf открыто, отобразится встроенное в приложение уведомление (In-App Notification).