Отправка уведомлений со стороны клиентских приложений

Материал из SmartPlayer
на этой странице были произведены изменения, не отмеченные для перевода.

Описание ситуации

Команда разработки SmartPlayer доработала модель отправки уведомлений по статусам из клиентских приложений в личный кабинет. Теперь оповещения в центре уведомлений приходят не просто в одном статусе и потоком, а разделены по логике и отправляются в определённых ситуациях.

Логика работы

Текущая реализация напрямую работает с разделом «Уведомления» в личном кабинете SmartPlayer.

Пример отображения раздела «Уведомления»

Все получаемые оповещения о ситуациях, проблемах или ошибках сортируются во вкладке «Уведомления» и разделяются по логике и цветовой индикации в соответствии с типом ошибки.
Ниже в статье будет приведён список ошибок, приходящих в центр уведомлений для различных типов устройств (клиентских приложений).

Доработка серверной части

Со стороны сервера была произведена только доработка в двух направлениях:

  1. Серверное приложение производит опрос клиентского приложения через определённые промежутки времени.
  2. При большом количестве оповещений, поступающих на серверное приложение со стороны устройства (клиентского приложения), будет выставлен тайм-аут на отправку и получение информации об ошибках. Это ограничение позволяет облегчить нагрузку на серверное приложение и не позволит «сломать» его.

Разделение ошибок на Android устройствах

На устройствах под управлением Android OS логика отправки уведомления об ошибках следующая:

  • ошибка (error) — обозначается красным цветом:
    • ошибка разрешений;
    • ошибка AVI;
    • проблема с проигрыванием PDF;
    • проблема со проигрыванием стрим-потока;
    • ошибки обновления.
  • предупреждение (warning) — обозначается белым цветом:
    • тайм-зона устройства обновлена;
    • отсутствует AVI (приложение собрано без поддержки AVI);
    • проблема с проигрыванием рекламного контента;
  • информация (info) — обозначается синим цветом:
    • апдейт установлен.
Пример отображения оповещений разных типов

Если пользователя интересует более подробная информация, он может открыть развёрнутое описание ошибки, нажав на кнопку «Подробнее».

Пример отображения кнопки «Подробнее» и отображения ошибки
Ранее логика работы была проще и все уведомления со стороны устройства попадали в категорию ошибки (error) и представляли собой красное уведомление.

Разделение ошибок на Windows/Linux/Raspberry устройствах

На устройствах под управлением Windows/Linux/Raspberry OS логика отправки уведомления об ошибках следующая:

  • ошибка (error) — обозначается красным цветом:
    • ошибка тайм-зоны;
    • ошибка обновления;
  • предупреждение (warning) — обозначается белым цветом:
    • неточная тайм-зона;
  • информация (info) — обозначается синим цветом:
    • обновление завершилось успешно.

Дополнительная информация

Если данная статья не помогает использовать функционал по назначению или после её прочтения остаются вопросы, их можно задать в разделе "Обсуждения" вверху страницы.

Пример отображения вкладки "Обсуждения" на wiki-странице

Найти дополнительную информацию можно на странице Как взаимодействовать пользователю с разделом "Обсуждения"