Push-уведомления API Gmail - PubSub для PHP / JS PWA? - PullRequest
0 голосов
/ 07 марта 2019

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

Архитектура в настоящее время представляет собой PHP Backend, который включает аутентификацию для пользователя, а также служебную учетную запись, позволяющую всем пользователям «работать» с одной из своих почтовых ящиков.

Затем есть слой JS для манипулирования DOM и т. Д.

Теперь я немного озадачен тем, как лучше всего отобразить эти сообщения PubSub в режиме Push.

У меня уже есть клиенты, которые создают именованную подписку для себя в уже существующей теме, если она еще не существует, и вызывают для нее watch () 1 / день, а также получают сообщения. Но извлечение сообщений будет происходить только при перезагрузке, как и текущее поведение. Я хочу, чтобы он отправлял push-сообщения, и пользователь потенциально может получить уведомление.

К твоему сведению, в этом приложении есть и работник службы, я подумал, может быть, как-нибудь это использовать? Это первый раз, когда я сталкиваюсь с чем-то подобным, поэтому я немного не знаю, как лучше поступить, поэтому любая помощь будет принята с благодарностью!

1 Ответ

0 голосов
/ 08 марта 2019

Google Cloud Pub / Sub не очень подходит для отправки на конечные пользовательские устройства. Вероятно, вам лучше использовать Firebase Cloud Messaging, который имеет специальную поддержку для веб-браузера push api .

Я предлагаю двухэтапную архитектуру: сначала добавьте Pub / Sub в ваше серверное приложение, а затем отправьте его клиентам через FCM:

+-----+ Pub/Sub +-----------+
|Gmail+-------->+PHP web app|
+-----+         +-----------+
                      |FCM
                   +--+--+
                   |  |  |
                   v  v  v
                +--+--+--+--+
                |Browser/PWA|
                +-----------+
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...