Je travaille sur une application Web. Comment puis-je envoyer des notifications push aux utilisateurs iOS lorsqu'il y a du nouveau contenu?
Je travaille sur une application Web. Comment puis-je envoyer des notifications push aux utilisateurs iOS lorsqu'il y a du nouveau contenu?
Réponses:
Pour être plus précis, pour qu'une application Web envoie des notifications push à un appareil mobile, tel que l'iPhone, l'appareil mobile doit être enregistré pour recevoir des notifications push pour une application particulière. L'inscription à la notification push se fait via une application native et ne peut être effectuée que via une application native. Une fois que l'application native est enregistrée pour la notification push, elle peut envoyer le jeton d'autorisation au serveur, qui peut être utilisé conjointement avec le certificat utilisé pour provisionner le client natif, pour envoyer les notifications push à l'appareil mobile.
Comme spécifié dans une autre réponse, une option consiste à «envelopper» votre application Web dans une application native. Cela signifie que vous créeriez une application native qui présente essentiellement une UIWebView (pour iPhone dev) à l'utilisateur montrant votre application Web. Bien que cela fonctionne à peu près de la même manière que le navigateur natif, vous pourrez ajouter la possibilité de vous inscrire aux notifications push à l'aide des contrôles natifs.
Il vous serait utile de consulter le document de notification push d'Apple car il fournit de très bonnes informations sur le fonctionnement de la messagerie push sur l'iPhone.
Voir ces liens fournis par Peter Hosey:
Non, seules les applications iOS natives prennent en charge les notifications push.
MISE À JOUR: Les
sites Web Mac OS X 10.9 et Safari 7 peuvent désormais également envoyer des notifications push, mais cela ne s'applique toujours pas à iOS. Lisez le Guide de programmation des notifications pour les sites Web . Consultez également la session 614 de la WWDC 2013 .
Bien qu'ils ne soient pas encore pris en charge sur iOS (à partir d'iOS 10), les sites Web peuvent envoyer des notifications push à Firefox et Chrome (bureau / Android) avec l' API Push .
L'API Push est utilisée avec les anciennes notifications Web pour afficher le message. L'avantage est que l'API Push permet à la notification d'être envoyée même lorsque l'utilisateur ne surfe pas sur votre site Web, car ils sont construits sur les Service Workers (scripts qui sont enregistrés par le navigateur et peuvent être exécutés en arrière-plan ultérieurement, même après votre utilisateur a quitté votre site Web).
Le processus d'envoi d'une notification implique les éléments suivants:
L'API Push est actuellement prise en charge sur les ordinateurs de bureau et Android par Chrome , Firefox et Opera .
Vous pouvez également envoyer des notifications push à Apple / Safari bureau l'aide d'APN. L'approche est similaire, mais avec de nombreuses complications (certificats de développeur Apple, packages push, connexion TCP de bas niveau aux APN).
Si vous souhaitez implémenter les notifications push par vous-même, commencez par ces tutoriels:
Si vous recherchez une solution de remplacement , je suggérerais Pushpad , un service que j'ai créé.
Mise à jour (septembre 2017): Apple a commencé à développer les techniciens de service pour WebKit ( état ). Étant donné que les techniciens de service sont une technologie fondamentale pour le Web Push, il s'agit d'un grand pas en avant.
Google Chrome prend désormais en charge la norme W3C pour les notifications push.
Vous pouvez utiliser pushover si vous ne souhaitez pas créer votre propre application native: https://pushover.net/
VRAIMENT .. Ceci est tout nouveau pour vous .. Sur la dernière version d'OS X (Mavericks), vous POUVEZ envoyer des notifications push d'une page Web vers le bureau. Mais selon la documentation, PAS les iPhones:
Note: This document pertains to OS X only. Notifications for websites do not appear on iOS.
Actuellement, Apple prévoit d'autoriser 2 types de notifications push: les notifications push du site Web OS X et les notifications locales.
L'obstacle évident ici est que cela ne fonctionnera pas sur les PC et ne vous permettra pas non plus de faire des notifications push Android.
De plus, vous pouvez en fait, avec des versions aussi anciennes que Snow Leapord, envoyer des notifications push depuis un site Web tant que ce site Web est ouvert et actif. Le nouveau système d'exploitation Mavericks autorisera les notifications push même si le site n'est pas ouvert, en supposant que vous ayez déjà donné l'autorisation audit site d'envoyer des notifications push.
De la bouche d'Apple:
Dans OS X v10.9 et versions ultérieures, vous pouvez envoyer des notifications push de site Web OS X à partir de votre serveur Web directement aux utilisateurs d'OS X à l'aide du service de notification push Apple (APN). À ne pas confondre avec les notifications locales, les notifications push peuvent atteindre vos utilisateurs, que votre site Web ou leur navigateur Web soit ouvert ...
Pour intégrer les notifications push dans votre site Web, vous présentez d'abord une interface qui permet à l'utilisateur d'accepter de recevoir des notifications. Si l'utilisateur y consent, Safari contacte votre site Web pour lui demander ses informations d'identification sous la forme d'un fichier appelé package push. Le package push contient également des ressources de notification utilisées dans OS X et des données utilisées pour communiquer avec un service Web que vous configurez. Si le package push est valide, vous recevez un identifiant unique pour l'utilisateur sur l'appareil appelé jeton d'appareil. L'utilisateur reçoit la notification lorsque vous envoyez la combinaison de ce jeton d'appareil et de votre message, ou charge utile, aux APN.
Dès réception de la notification, l'utilisateur peut cliquer dessus pour ouvrir une page Web de votre choix dans le navigateur par défaut de l'utilisateur.
Remarque: si vous avez besoin d'un rappel sur les APN, lisez le chapitre «Service de notification push Apple» dans le Guide de programmation des notifications locales et push. Bien que le document soit spécifique aux notifications push iOS et OS X, les paradigmes du service de notification push s'appliquent toujours.
Non, il n'y a aucun moyen pour une application Web de recevoir une notification push. Ce que vous pouvez faire, c'est envelopper votre application Web dans une application native dotée de notifications push.
Le W3C a lancé en 2010 un groupe de travail pour mettre en œuvre les notifications:
http://www.w3.org/2010/web-notifications/
Ce groupe de travail développe des API qui exposent ces mécanismes aux applications Web afin que les développeurs Web créant, par exemple, des clients de messagerie Web et des clients de messagerie instantanée puissent intégrer plus étroitement le comportement de leur application Web aux fonctionnalités de notification des systèmes d'exploitation de leurs utilisateurs finaux.
Enfin, le résultat est comme une mauvaise blague car cela ne fonctionne que si le site Web spécifique est ouvert: http://alxgbsn.co.uk/notify.js/
Je pense qu'ils ont manqué de mettre en œuvre la possibilité d'ajouter des URL push afin que le navigateur puisse demander des notifications pendant son exécution en arrière-plan - et surtout - si tous les onglets ont été fermés.
Vous pouvez utiliser les Websockets HTML5 pour introduire vos propres messages push. De Wikipedia :
"Du côté client, WebSocket devait être implémenté dans Firefox 4, Google Chrome 4, Opera 11 et Safari 5, ainsi que la version mobile de Safari sous iOS 4.2. Le navigateur BlackBerry dans OS7 prend également en charge WebSockets."
Pour ce faire, vous avez besoin de votre propre serveur fournisseur pour transmettre les messages aux clients.
Si vous souhaitez utiliser APN (Apple Push Notification) ou C2DM (Cloud to Device Message), vous devez disposer d'une application native qui doit être téléchargée via la boutique en ligne.
Pushbullet est une excellente alternative pour cela.
Cependant, l'utilisateur doit avoir un compte Pushbullet et l'application installée (iOS, Android) ou le plugin installé (Chrome, Opera, Firefox et Windows).
Vous pouvez utiliser l' API en créant une application Pushbullet et connecter l'utilisateur de votre application à l'utilisateur Pushbullet à l'aide de oAuth2.
Utiliser une bibliothèque rendrait les choses beaucoup plus faciles, pour PHP, je pourrais recommander ivkos / Pushbullet-for-PHP .
Consultez les notifications Xtify Web Push. http://getreactor.xtify.com/ Cet outil vous permet de pousser du contenu sur une page Web et de cibler les visiteurs ainsi que de déclencher des messages en fonction des événements DOM du navigateur. Il est spécialement conçu pour le mobile.