{"id":14276,"url":"\/distributions\/14276\/click?bit=1&hash=721b78297d313f451e61a17537482715c74771bae8c8ce438ed30c5ac3bb4196","title":"\u0418\u043d\u0432\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0432 \u043b\u044e\u0431\u043e\u0439 \u0442\u043e\u0432\u0430\u0440 \u0438\u043b\u0438 \u0443\u0441\u043b\u0443\u0433\u0443 \u0431\u0435\u0437 \u0431\u0438\u0440\u0436\u0438","buttonText":"","imageUuid":""}

Делаем MVP для SaaS-сервиса без знания кода на платформе Appmaster.io. Часть 3. Регистрация мобильного пользователя

В предыдущей статье мы рассматривали процессы регистрации клиента в веб приложении. Теперь покажу как можно создать в Appmaster.io бизнес процесс регистрации мобильного пользователя в приложении, и при этом не запрашивать персональные данные.

Appmaster.io Now Code платформа, которая позволяет без знания кода разрабатывать нативные мобильные iOS/Android приложения. Существенным преимуществом в сравнении с другими платформами, является бесшовная интеграция с серверной частью (backend) и десктопным веб приложением (админ панель).

Регистрация мобильного пользователя.

Мы знаем, что не все пользователи любят регистрироваться и давать свои контактные данные такие как email и телефон, особенно при первой загрузке приложения. Так как пользователь может загружать приложение спонтанно, например сканируя QR код на товаре в магазине, и ему не удобно проходить весь путь регистрации сразу, или он еще не ознакомился с приложением, поэтому на всякий случай не готов делиться своими данными и боится спама на свои адреса и телефоны. С другой стороны для работы таких функций приложения, как определение геолокации, отправки пуш-уведомлений начисление бонусов за покупки, необходима авторизация пользователя.

Чтобы решить такую задачу средствами платформы Appmaster.io Создадим бизнес процесс автоматической регистрации мобильного пользователя.

При запуске приложения по триггеру onLaunch происходит загрузка домашнего экрана.

Триггер onLaunch в дизайнер студии Аппмастер

Бизнес процесс триггера onLaunch

Так выглядит домашний экран мобильного приложения в дизайнере

Для быстрой регистрации нового пользователя создаем кнопку Register fast и открываем окно бизнес-процесса - кнопка Workflow

Схема автоматической регистрации такова:

  1. Создаем для пользователя рандомный логин = email на своем домене
  2. Создаем пароль по умолчанию
  3. Регистрируем пользователя с логином и паролем
  4. Отправляем пользователю пуш уведомление с параметрами настройки email (на всякий случай)
  5. Отправляем уведомление с предложением изменить логин и пароль в профиле пользователя

Для реализации этой логики создаем бизнес процесс с названием "Create new mobile user" на бэкенде. Общая схема БП регистрации нового пользователя выглядит так:

Разберем процессы более подробно по шагам: На первом шаге применяем блок для рандомной генерации строки из 8 символов

На втором шаге блоком Concat string соединяем радомную строку с частью email по умолчанию, и получаем логин, привязанный к своему домену. В следующем блоке Concat string устанавливаем пароль по умолчанию. Блок To password шифрует пароль.

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

В завершение сохраняем созданную запись Mobile instance в базе данных, и выводим необходимые данные на выход БП

Создаем эндпойнт чтобы можно было вызвать бизнес процесс через api

Возвращаемся к бизнес процессам мобильных приложений. Сначала устанавливаем переменную с именем Device_token и переключаем в состояние persistent. В эту переменную мы будем записывать строку, которая была сгенерирована рандомным блоком в бизнес процессе "Create new mobile user"

Рассмотрим бизнес процесс кнопки Register fast.

Сценарий регистрации нового пользователя. Скачал приложение, нажал на кнопку. Запустил БП кнопки.

Сначала проверяем длину строки в глобальной переменной device_token как вы помните она должна состоять из 32 символов, как было установлено в рандомном блоке бизнес процесса "Create new mobile user". При первом обращении эта переменная пустая, в ней ничего не записано, поэтому ее значение не определено и =null, поэтому блок сравнения длины строки отдает значение fals и блок If Else отправляет запрос на сервер через энд пойнт, который запускает БП "Create new mobile user".

Далее БП "Create new mobile user" отдает токен авторизации пользователя, и передает сгенерированную строку device_token в ту самую глобальную переменную.

Затем запускаются блоки mobil instance чтобы получить данные мобильного устройства, такие как модель, производитель, операционная система и др. и блоки свойств кнопок, которые делают кнопку регистрации невидимой, а кнопку Сканирования активной.

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

В таком случае блок сравнения отдает значение true и триггер If Else отправляет запрос на сервер на энд пойнт аутентификации пользователя и запускает бизнес процесс "authorize_device_token" который проверяет наличие данного токена в системе, и авторизует пользователя.

Осталось описать бизнес процесс "authorize_device_token".

Цель данного процесса определить наличие уникального токена в базе данных, и авторизовать пользователя. На вход этого БП подается значение device_token далее блок Searche mobil instance проверяет наличие такого токена, и если результат поиска равен 1, то уникальный пользователь передается в блок expand user.

Далее забираем из блока expand user логин, пароль (в зашифрованном виде) передаем в блок регистрации и получаем токен авторизации.

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

Это был очередной обзор возможностей Ноу код платформы Appmaster.io в следующих постах я расскажу как создать бизнес процессы для изменения учетных данных пользователей. Буду рад ответить на ваши вопросы.

0
Комментарии
-3 комментариев
Раскрывать всегда