Персонализированные push notifications



Реп: (0)
Есть приложение в апп сторе, в которое планируется ввести подписки для пользователей. С подписками все ясно и проблем с их интеграцией нет.
Так же планируется внедрить push notifications. С этим пока разбираюсь. Делаю принципиальный выбор между собственным сервером и сервисом от firebase. В связи с этим первый вопрос: что уважаемое сообщество порекомендует?

В части push notifications так же возник второй вопрос: есть ли возможность делать персональные рассылки для конкретного подписчика?

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



Реп: (406)
* AlexeyPolunin,
Пуш, как и контроль подписок, стоит иметь свои.
Там сервер, по сути, это 2-3 десятка строк
AlexeyPolunin @ 26.12.22, 18:17 *
В части push notifications так же возник второй вопрос: есть ли возможность делать персональные рассылки для конкретного подписчика?

никаких рассылок нет вовсе.
любое уведомление отправляется конкретному токену (его девайс получает в момент, когда юзер разрешает получение уведомлений)
дальше решать вам. или бежать по всей базе своих сохраненных токенов и отсылать один текст или брать один/несколько токенов и отсылать что-то только им

обратите внимание на важный момент. вы должны контролировать ошибки отправки уведомлений. если юзер запретил получение сообщений, или вовсе его удали, а вы будете продолжать отправку уведомлений, то после 3-5-10 таких попыток получите бан. Сначал на сутки, потом больше.

еще - внимательно посмотрите на предельную скорость отправки уведомлений.

AlexeyPolunin @ 26.12.22, 18:17 *
И чтобы дважды не вставать, последний вопрос: есть ли механизм идентификации подписчика в приложении без его дополнительной регистрации в приложении, например, через логин по аккаунту гугла, эппла и/или фейсбука?

подписчика - нет. юзера - да. Авторизация через appleId стандартная встроенная. Через остальное - обычно, веб решени от самих систем

Сообщение отредактировал t.r.o.n. - 26.12.22, 18:36



Реп: (0)
* t.r.o.n.,
Спасибо за отклик! Вы просто кладезь информации!

С сервером ясно. Но у меня одна небольшая проблема, у меня виртуальный хостинг и, боюсь, будут сложности с сертификатами для пушей.

А вот насчет остального не все понял.
В моем приложении подписчик должен получать индивидуальную информацию, например, индивидуальный план тренировок.
Я хочу сделать так:
1. Отправляю конкретному подписчику пуш, что индивидуальный план тренировок готов и он его может посмотреть в приложении
2. Пользователь заходит в приложение и видит этот план.

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

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



Реп: (406)
AlexeyPolunin @ 26.12.22, 19:36 *
будут сложности с сертификатами для пушей.

нет. достаточно чтобы он поддерживал http/2 для запросов
достаточно самого простенького
AlexeyPolunin @ 26.12.22, 19:36 *
Но как узнать какой токен принадлежит конкретному подписчику?

очень просто.
Юзер любым способом авторизован. так?
На девайсе вы спокойно получаете push токен себе на сервер, который "связывает" юзера (его авторизацию) с токеном девайса, который его использует.
AlexeyPolunin @ 26.12.22, 19:36 *
Так же хотелось бы уйти от процедуры авторизации пользователя в приложении.

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


Можно использовать не явную. к примеру, тот самый push токен и будет неки userId для идентификации. Ведь он у вас есть.
Но тут сразу 2 проблемы.
1 - юзер мог не разрешить примем push, значит токена нет.
2 - он могу удалить приложение и снова его поставить. push токен может изменится
3 - у него может быть несколько устройств

И еще. У вас, как понял, есть подписка. Значит вам нужно как-то увзать юзера с подпиской. Без идентификации это не возможно.

Стоит использовать вариант стимулирующей авторизации.
Типа - если вы не авторизованы, то ваши "победы" не будут сохранятся и подобная "лапша на уши"

Сообщение отредактировал t.r.o.n. - 26.12.22, 19:50



Реп: (0)
* t.r.o.n.,
Спасибо! Уже многое прояснилось. Буду пробовать.

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

Сообщение отредактировал AlexeyPolunin - 26.12.22, 20:02



Реп: (406)
AlexeyPolunin @ 26.12.22, 20:00 *
Скорее всего буду дублировать пуши, собственно через пуш и с помощью системы внутренних сообщений в приложении

там в ios13+ это оень просто делается через механизм Service Extension
посмотрите его


Полная версия   Текстовая версия

Помощь   Правила

Сейчас: 28.03.24, 21:38