Push-уведомления HTML5 — примеры других способов push-уведомлений

На Google IO 2015 было много разговоров о push-уведомлениях для Chrome с HTML5 и сервис-воркерами.

Это первые дни, и примеры тонкие на земле. Я ищу примеры на стороне сервера того, как реализовать отправку с платформ, отличных от Google Cloud Messaging — например, Azure Mobile Services или AWS.


person user888734    schedule 08.06.2015    source источник


Ответы (2)


На данный момент push в Chrome привязан к GCM, активно разрабатывается новый стандарт работал над, что заставит все службы push использовать один и тот же API. Когда это произойдет, я надеюсь, что Chrome и GCM реализуют это, и тогда вы сможете реализовать единый API. Firefox уже использует раннюю версию этого стандарта в ночных сборках. На данный момент просто не забывайте, что в Chrome и Firefox все может различаться.

Что касается примеров на стороне сервера: у меня нет кода для Azure, но если вы посмотрите этот simple-push -demo есть команда curl, которая в основном взаимодействует с Restful API GCM для инициирования push-сообщения.

Пример:

curl --header "Authorization: key=<YOUR_PUBLIC_API_KEY>"
     --header "Content-Type: application/json"
     https://android.googleapis.com/gcm/send
     -d "{\"registration_ids\":[\"<YOUR_REGISTRATION_ID>\"]}"

Вы можете использовать это, чтобы получить представление о том, как работает API, и реализовать его на любом языке серверной части, который вам нужен (по сути, это почтовый запрос со специальным заголовком).

документация по GCM API находится здесь.

Вы можете просмотреть исходный код простой демонстрации push на Github.

Бэкенд-код для отправки push-сообщения с сервера в демоверсии (написано на Python для AppEngine) здесь на Github.

Наконец, если вам нужен полный учебник, ознакомьтесь с этой статьей на html5рокс.

person Matt Gaunt    schedule 09.06.2015

Это руководство ( https://azure.microsoft.com/en-us/documentation/articles/mobile-services-javascript-backend-android-get-started-push/ ) использует GCM, но общий метод поддерживается во всех платформах, iOS и Windows, чтобы вы не были привязаны к GCM (например, это руководство: https://azure.microsoft.com/en-us/documentation/articles/mobile-services-javascript-backend-windows).-universal-dotnet-get-started-push/ )

person RickSaling    schedule 08.06.2015