{"id":13888,"url":"\/distributions\/13888\/click?bit=1&hash=b9ef1acfaff33313e209ff706cdc085257b1aa0628eda8cd82c15ab939b88cb6","title":"\u0414\u0435\u043b\u0430\u0442\u044c \u043f\u0440\u0435\u0434\u0441\u043a\u0430\u0437\u0430\u043d\u0438\u044f \u0434\u043b\u044f \u0431\u0438\u0437\u043d\u0435\u0441\u0430 \u0431\u0435\u0437 \u0442\u0430\u0440\u043e","buttonText":"\u041d\u0430\u0443\u0447\u0438\u0442\u044c\u0441\u044f","imageUuid":"5a8d05f2-0e2c-5a89-8e96-98d923aa05a2","isPaidAndBannersEnabled":false}

Как создать MVP для SaaS-сервиса без знания кода на платформе Appmaster.io. Часть 4. Как отправлять push-уведомления

Технология Push-уведомлений - эффективный способ доставки уведомлений пользователям вашего мобильного приложения. Эти уведомления инициируются на стороне сервера и появляются непосредственно в строке уведомлений на мобильном устройстве пользователя, не требуя от него никаких действий. В этом руководстве мы рассмотрим, как реализовать push-уведомления в мобильных приложениях, созданных на платформе AppMaster

.

При отправке и получении push-уведомлений на мобильных устройствах обычно используются несколько параметров, чтобы убедиться, что уведомления правильно доставляются на предназначенные устройства. Некоторые из ключевых параметров включают:

Device Token (Идентификатор устройства): Уникальный идентификатор, создаваемый операционной системой мобильного устройства, используемый для маршрутизации push-уведомлений на правильное устройство.

Application Bundle ID (Идентификатор приложения): Уникальный идентификатор, назначаемый мобильному приложению и используемый для того, чтобы гарантировать доставку push-уведомлений на правильное приложение на устройстве.

Notification Payload (Содержимое уведомления): Содержимое самого push-уведомления, которое может включать текст, изображения, звуки или другие типы медиа.

Notification Priority (Приоритет уведомления): Индикация срочности или важности уведомления, которая может влиять на то, как операционная система обрабатывает уведомление и будет ли оно отображено немедленно или поставлено в очередь для доставки позже.

Device Operating System Version (Версия операционной системы устройства): Версия мобильной операционной системы, которую использует устройство, которая может влиять на поведение push-уведомлений и на доступные возможности для приложения.

Network Connection Type (Тип сетевого подключения): Тип сетевого подключения, которое устройство использует в данный момент, такой как Wi-Fi или мобильная связь, который может влиять на скорость и надежность доставки push-уведомлений.

Device Battery Level (Уровень заряда батареи устройства): Текущий уровень заряда устройства, который может использоваться операционной системой для оптимизации использования энергии и обеспечения эффективной доставки уведомлений.

Учитывая эти и другие параметры, разработчики могут гарантировать, что их push-уведомления будут доставлены правильно и эффективно на мобильные устройства, помогая обеспечить лучший опыт использования для пользователей их приложения.

Send Push Блок

В приложении Appmaster, для отправки push-уведомлений разработчики могут использовать блоки "Send Push" для операционных систем устройства (iOS или Android).

Получение Push Token и Bundle ID:

Для того чтобы отправлять push-уведомления на мобильные устройства, необходимо знать их уникальные идентификаторы - Push Token и Bundle ID.

Push Token представляет собой уникальный идентификатор устройства, который генерируется операционной системой мобильного устройства и используется для маршрутизации push-уведомлений на правильное устройство. Для получения Push Token, необходимо запросить его из операционной системы устройства в момент первой установки приложения или после сброса настроек уведомлений. Обычно это делается с помощью специального API, предоставляемого операционной системой.

Bundle ID, с другой стороны, является уникальным идентификатором мобильного приложения, который используется для гарантии доставки push-уведомлений на правильное приложение на устройстве. Он назначается при создании приложения и указывается в соответствующем поле в манифесте приложения. Обычно это значение можно найти в настройках проекта в среде разработки.

Получение Push Token и Bundle ID - это первоначальный шаг для настройки отправки push-уведомлений на мобильные устройства. После этого необходимо настроить отправку уведомлений с учетом других параметров, таких как содержимое уведомления, приоритет, тип сетевого подключения и уровень заряда батареи устройства.

Перед отправкой push-уведомлений с помощью блоков Send Push в Appmaster разработчикам необходимо указать, как минимум, два параметра: Push Token и IOS (Android) Bundle ID. Необходимо начать с подготовительного процесса и понимания того, как получить эти параметры.

В Appmaster каждая база данных проекта поставляется с моделью Mobile Instance, которая ассоциирована с моделью User и имеет необходимые поля: push_token и bundle_id. Эти поля используются для хранения необходимых параметров для отправки push-уведомлений. Поэтому в Appmaster получение Push Token и Bundle ID происходит автоматически при создании экземпляра Mobile Instance и связывании его с пользователем приложения. Это упрощает настройку отправки push-уведомлений в приложении и позволяет разработчикам сосредоточиться на настройке других параметров уведомлений, таких как содержимое уведомления, приоритет и т.д.

Для получения полностью заполненной модели Mobile Instance разработчики могут создать отдельный бизнес-процесс в Appmaster, который специфичен для мобильного приложения. Первым шагом является использование блока Get Push Token для получения push token.

Следующим шагом является получение информации о устройстве. В зависимости от операционной системы устройства потребуются разные блоки. Поэтому разработчики должны использовать блок Platform Switch, чтобы определить операционную систему.

В бизнес-процессе для получения модели Mobile Instance в Appmaster, следует использовать блок Platform Switch, чтобы определить операционную систему устройства. В зависимости от результата, разработчики могут использовать блок IOS Device Info или Android Device Info, чтобы получить необходимую информацию об устройстве, такую как Bundle ID.

После того, как все необходимые данные собраны, разработчики могут создать полностью заполненную модель Mobile Instance и указать операционную систему устройства. Затем эту модель можно передать в качестве выходного параметра для бизнес-процесса.

Захват данных о мобильном устройстве пользователя может осуществляться разными способами, в зависимости от того, какие данные нужны для конкретной задачи. Некоторые из наиболее распространенных способов получения данных о мобильном устройстве включают в себя:

  • Получение Push Token: для отправки push-уведомлений на мобильное устройство необходимо получить уникальный Push Token, который генерируется операционной системой устройства.
  • Получение Bundle ID: это уникальный идентификатор, который присваивается мобильному приложению и используется для отправки push-уведомлений на конкретное приложение на устройстве.
  • Получение информации об операционной системе устройства: в зависимости от операционной системы устройства (iOS, Android), могут использоваться разные API для получения информации, такой как версия операционной системы, язык и страна, настройки времени и т.д.
  • Получение информации о конфигурации устройства: такая информация может включать в себя тип устройства, его модель, разрешение экрана, объем памяти и т.д.
  • Определение геолокации: для некоторых приложений важно определять местоположение пользователя. Это может быть полезно для предоставления контента, зависящего от местоположения, или для определения рынка, на котором будет использоваться приложение.

Далее необходимо создать бизнес-процесс для связывания сгенерированного Mobile Instance с конкретным пользователем и сохранения его в базе данных. Этот процесс включает в себя следующие шаги:

  • Получение текущего пользователя, используя блок Auth: Get current user.
  • Распаковка содержимого полученной модели Mobile Instance.
  • Пересборка модели и установка связи с пользователем с помощью блока Make Mobile Instance.
  • Использование блока DB: Create Mobile Instance для сохранения данных в базе данных.
В эндпоинте POST /Mobile Instance/ разработчики могут заменить стандартный бизнес-процесс на вновь созданный.
Последний шаг подготовки - определить, когда необходимо записывать данные об устройстве пользователя в базу данных. Логичным подходом будет выполнение этой операции во время процесса авторизации в приложении. Для этого можно добавить два новых блока, содержащих бизнес-процессы, в процедуру авторизации пользователя в мобильном приложении сразу после блока Set Auth Token. Первый блок получает и генерирует необходимую информацию, а второй блок устанавливает связь с пользователем и сохраняет данные в базе данных.

Sending push notifications

После нахождения всех пользователей с устройствами Android мы можем выполнить операции для каждого пользователя, используя блок For Each loop. Внутри цикла мы можем использовать следующие блоки:

  • Получить последнюю Mobile Instance для текущего пользователя, используя блок DB: Select Mobile Instance. Мы можем отфильтровать по ID пользователя и отсортировать по полю date_created в порядке убывания, чтобы получить самую последнюю Mobile Instance.
  • Используйте блок Platform Switch, чтобы определить, является ли Mobile Instance для устройства Android.
  • Если Mobile Instance предназначена для устройства Android, мы можем использовать блок Send Push Android, чтобы отправить уведомление на устройство. Мы будем использовать значения параметров ввода title, subtitle и body, чтобы создать уведомление.
  • После отправки уведомления мы можем использовать блок Log Message, чтобы зарегистрировать сообщение о том, что уведомление было успешно отправлено.
  • Если Mobile Instance не предназначена для устройства Android, мы можем пропустить ее и перейти к следующему пользователю в цикле.

После завершения цикла мы отправим push-уведомления всем пользователям, у которых есть устройство Android и которые недавно использовали приложение.

Для отправки уведомления на конкретное устройство, для каждого пользователя, полученного из блока Expand User, необходимо получить доступ к их мобильным устройствам (Mobile Instances). Поскольку нас интересует отправка уведомления только на одно устройство, мы устанавливаем index = 0 в блоке Array Element и проверяем, содержит ли массив хотя бы один элемент (так как у пользователя может быть только устройство iOS). Затем мы проверяем элемент на допустимость и передаем допустимое значение индекса в блок If-Else, продолжая цикл только если значение верно.

Если информация об устройстве доступна, можно использовать блок Expand Mobile Instance, чтобы передать необходимые значения в блок Send Push (Android).

Важно отметить, что при разработке и тестировании приложения в приложении Appmaster Developer, режим разработчика должен быть установлен в True.

Также можно использовать параметр TTL (время жизни уведомления). Он определяет время в секундах, в течение которого уведомление будет отправлено. Если уведомление не может быть доставлено немедленно, например, если пользователь временно находится вне зоны действия, будут предприняты повторные попытки доставки в течение выделенного времени.

После отправки уведомлений всем подходящим пользователям, бизнес-процесс может считаться завершенным.

Дополнительные параметры

Немного подробнее о этих параметрах:

Push ID: уникальный идентификатор, который можно использовать для связи входящих уведомлений с соответствующими данными на стороне клиента. Push Class: категория уведомления, которая может использоваться для группировки разных типов уведомлений для обработки на стороне клиента. Например, в новостном приложении могут быть различные классы уведомлений для главных новостей, обновлений спорта и прогноза погоды. Data: это объект JSON, который можно использовать для отправки дополнительных данных вместе с уведомлением. Клиентское приложение может использовать эти данные для настройки обработки уведомления или предоставления дополнительного контекста пользователю. В целом, эти параметры обеспечивают дополнительную гибкость и возможности настройки при отправке push-уведомлений.

Когда пользователь получает push-уведомление и нажимает на него, это вызывает событие onPushNotificationTap в мобильном приложении. Это событие может быть обработано функцией в коде приложения, которая может извлечь данные, переданные в параметре Data, и использовать их для отображения дополнительной информации пользователю.

Например, если параметр Data содержит URL-адрес, функция может открыть его в веб-браузере или во встроенном в приложение веб-просмотрщике. Альтернативно, если параметр Data содержит сообщение, функция может отобразить сообщение в диалоговом окне или как всплывающее уведомление.

В целом, триггеры push-уведомлений обеспечивают мощный способ взаимодействия с пользователями и привлечения их внимания к вашему приложению. Используя их, вы можете предоставить полезный опыт для своих пользователей.

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

0
Комментарии
Читать все 0 комментариев
null