|
|
Mozilla veut des notifications en push pour les applications HTML5
Guillaume Champeau -
publié le Lundi 06 Février 2012 à 11h56 -
posté dans High-Tech
![]() La Fondation Mozilla, qui édite le navigateur Firefox et travaille sur son système d'exploitation mobile Boot To Gecko, veut offrir aux développeurs d'applications web la possibilité d'envoyer des notifications comme le font les applications propriétaires sur les systèmes fermés comme iOS ou Android.
Si l'on focalise beaucoup sur la concurrence que se livrent les systèmes d'exploitation iOS, Android ou Windows Phone, on en oublie trop vite que la véritable bataille se joue à une plus large échelle entre deux visions de l'avenir de l'informatique. La première vise à imposer des catalogues centralisés d'applications propriétaires qui ne fonctionnent que sur une plateforme, et ne sont distribuées que sur une place de marché, qu'elle soit imposée (l'App Store d'Apple) ou fortement suggérée (l'Android Market de Google). La seconde vision vise à imposer une informatique ouverte, basée sur des applications en ligne réalisées dans des langages standards, qui peuvent être exécutées sur toutes les plateformes, sans centralisation de leur distribution (voir à ce sujet la décision du Financial Times de passer intégralement en HTML5). C'est avec cette bataille à l'esprit que la fondation Mozilla tente d'apporter aux applications HTML5 la même richesse de possibilités que les applications natives. L'éditeur de Firefox soutient par exemple le moteur WebGL pour ajouter la 3D au HTML5, ou supporte les manettes de jeux vidéo pour jouer depuis le navigateur. Mais il reste un domaine où pour le moment les systèmes d'exploitation propriétaires restent inimitables par l'environnement HTML5 : les notifications. Que ce soit sur iOS ou Android, les téléphones mobiles et tablettes peuvent afficher des alertes lorsque des applications le demandent, ou notifier l'utilisateur lorsqu'il reçoit par exemple un message. Ces alertes et notifications font désormais partie intégrante de l'environnement mobile, et créent une véritable plus-value pour les applications qui exploitent les fonctionnalités propriétaires des systèmes d'exploitation. Mais Mozilla veut aussi priver les systèmes fermés de cet avantage concurrentiel. Jeff Balogh, développeur chez Mozilla, a présenté sur son blog le système de notifications sur lequel travaille la fondation. L'idée est de passer par une API qui servirait d'interface entre le service web et l'utilisateur à qui envoyer une notification. Une API pour faire interface entre l'utilisateur et le service Avec ce système, documenté sur le wiki de Mozilla, chaque service web connaîtrait une URL spécifique à l'utilisateur, vers laquelle envoyer ses notifications de façon sécurisée. L'utilisteur viendrait alors interroger cette même URL privée pour connaître les dernières notifications, qui pourraient dès lors être affichées sur n'importe quel support : navigateur Firefox mobile, bureau du futur système Boot to Gecko, ou même applications Android ou iOS. Peu importe, puisqu'il s'agit d'pplications web compatibles avec tous les systèmes. Les notifications pourront être composées d'un titre, une description, une URL d'action (une page à visiter pour plus d'informations), et même d'une icône à afficher pour symboliser le message. Reste à voir qui héberge l'API qui fait le pont entre les services web et l'utilisateur. Mozilla proposera très certainement son propre service d'hébergement des données de notification, comme il le fait par exemple pour la synchronisation des données de Firefox. Mais l'API, qui sera bien évidemment libre et open-source, pourra être installée sur n'importe quel serveur. L'utilisateur pourra donc choisir à qui il fait confiance pour la réception de ses notifications, ou héberger lui-même sa propre API avec sa propre URL s'il ne fait confiance à aucun tiers. Pour le moment le projet n'en est qu'au stade de prototype. Mozilla n'a pas communiqué de date de lancement. Le wiki dédié à l'interface de Boot to Gecko montre déjà un exemple de système de notification sur la page d'accueil du système mobile :
à lire aussi
Prix indiqués avec livraison
22
Commentaires à propos de «Mozilla veut des notifications en push pour les applications HTML5»
![]() En fait l'utilisateur ne consulte pas lui-même l'URL. C'est son système d'exploitation (par exemple Boot To Gecko) ou son navigateur (Firefox) qui le fait et traduit ce qui s'y trouve sous forme applicative.
![]() Guillaume, le 06/02/2012 - 12:41 Vi, mais je ne suis pas sûr que ça soit du "vrai" push, à moins qu'ils veuillent utiliser des WebSockets, mais si j'ai bien compris ton explication, ça ne semble pas être le cas. Comme l'a dit TuXiC69, le push est initié par le serveur. Là, il s'agirait du client qui irait régulièrement vérifier si le serveur lui propose des notifications. Alors que du vrai push, ce serait le serveur qui notifierait directement le client (sans que celui-ci ait besoin de faire de requête). Je ne sais pas exactement comment fonctionnent les applications natives sur les smartphones, mais je ne suis pas sûr que ce soit du vrai push non plus. ![]()
Android, un système "fermé comme iOS" alors qu'il s'agit d'un logiciel libre ? Gné ? ![]() Juste un commentaire inutile en passant : la capture d'écran du futur Boot to gecko montre que le système est moche à la limite du supportable.
Une marque de fabrique ? ![]() @Milord : exactement ce que je voulais dire. Je rajoute un petit lien https://fr.wikipedia...iki/Server_push
Pour les applications natives, aucune idée de comment c'est fait actuellement. Mais sur de la 3G ça me semble quand même intéressant d'avoir un vrai push, histoire de limiter le nombre de connexions nécessaires. Et si ce n'est pas du vrai push alors ça me semble peu intéressant, ça se fait déjà très bien avec un peu d'Ajax ![]() TuXiC69, le 06/02/2012 - 13:42 Ben c'est intéressant dans le sens où l'application cliente (le navigateur, à priori), serait capable de créer des notifications natives. Ca, tu ne peux pas le faire en ajax. Mais sur le push en lui même, oui, ça n'a pas vraiment d'intérêt. [message édité par milord le 06/02/2012 à 13:52
]
![]() @Milord @TuXi69: et encore, le lien sur Wiki mentionne:
"Plusieurs méthodes permettent d'aboutir à un push serveur, la plus commune étant d'empêcher le serveur de clore la transaction. La connexion client-serveur reste ainsi ouverte, ce qui permet de mettre à jour instantanément les données chez les clients liés et évite de créer des queues parfois coûteuses du côté serveur." Donc ca impose de garder la com ouverte, donc c'est aussi inadapté pour un appareil mobile si on ne veut pas bouffer son forfait et sa batterie. De mon point de vue, le vrai push en HTTP n'est pas possible: le vrai push doit être implémenté en bas niveau dans le système, à la manière de la Push Registry en J2ME: le système est en attente de notification, en sommeil, il ne consomme rien et il se réveille sur une notif bas niveau (comme les SMS par exemple). Le reste n'est que de la bricole. Même les apps soit-disant "push" comme gmail ou les clients Imaps font du polling de temps en temps à la place du push (qd le réseau s'active, qd l'utilisateur sort de la veille etc...). ![]()
zig et puce
(Banni) le 06/02/2012 à 14:19
Tiens, justement je me disais... On n'a pas assez d'OS pour mobile... Pourquoi Firefox et Opera ne pourraient pas en sortir un ou deux de plus ? Je propose que Numerama sorte également son OS pour téléphone mobile ![]() zig, le 06/02/2012 - 14:19 C'est vrai, c'est un peu une perte de temps: au final, un OS mobile pour avoir du succès doit avant tout avoir un catalogue d'applications assez étoffé. ![]() MrPatator, le 06/02/2012 - 14:03 Je ne sais pas. Par exemple, un échange à base de XML (ou JSON), sur du HTTP, ça demande des ressources : parsing des données (que ça soit XML ou JSON, ou autre), bande passante (tous les headers HTTP, à chaque requête, ça doit bouffer un peu, mine de rien). J'avais cherché s'il y avait des tests qui mettaient face à face les websockets et les appels ajax classiques, sur des questions de performance (utilisation du processeur, de la batterie, de la bande passante etc.), mais je n'avais pas trouvé. Si quelqu'un a une source... [message édité par milord le 06/02/2012 à 14:59
]
![]() le push impliquerai les fournisseur à relayer le push ou à ouvrir l'upload
mais comme leur beurre c'est la BP , y a peu de risque qu'ils le fassent volontairement. Guillaume, le 06/02/2012 - 12:41 Applications "propriétaires" et systèmes "fermés". Oui super mais ces qualificatifs n'ont strictement rien avoir avec le sujet. D'ailleurs si je prends au hasard Ubuntu qui est un système "libre et ouvert", j'ai actuellement pas non plus de notification depuis les applis web d'un navigateur. Dois-je en conclure que certaines distributions sont privatrices de liberté ? Non tout ceci n'est qu'une histoire de proposer un protocole qui devra être soumis au W3C et aux différents concepteurs d'OS pour être ensuite accepté et implémenté. Guillaume, le 06/02/2012 - 12:41 Mais ça y est vous retombez encore dans vos psychoses totalitaires à deux balles. Pourquoi il n'y aurait que deux visions de l'informatique ? Pourquoi devrait-on obligatoirement choisir un camp ? Et pourquoi ne pas imaginer de cohabitation ? C'est d'ailleurs ce que fait tout le monde (ou presque). Sur mon ordinateur ou smartphone, j'utilise des applications mais aussi le web. Je choisis juste en fonction de ce que je trouve de mieux. Je me fais pas comme vous un intégriste à oeillère... Guillaume, le 06/02/2012 - 12:41 "Imposée" ? Sauf que le client dispose ! Qui oblige à avoir un iPhone ? Personne ! Qui oblige à télécharger plein d'applications ? Personne non plus ! Non il a été proposé au client un modèle, et le client l'a trouvé très bien. On peut même parler de plébiscite... Cela ne vous plaît pas ? Aucune importance puisque vous n'êtes pas le centre du monde et avez toute liberté d'aller ailleurs. D'autant que vous présentez les choses de façon fallacieuse: vous faites croire à l'obligation de passer par l'AppStore alors qu'Apple produit et intègre un excellent navigateur HTML5 à iOS (et donne même des exemples sur son site développeur pour faire des applications avec !). Bref, le choix existe autant pour les programmeurs que les clients. Mais si tout ce petit monde préfère en rester aux applis c'est peut-être parce que ses dernières ont des avantages que le web n'a pas (performances, facilité à la monétisation, look & feel, ...). Attention aussi à ne pas confondre l'informatique mobile, de l'informatique sur les ordinateurs. Les usages et l'ergonomie diffèrent, on ne peut donc pas généraliser... Guillaume, le 06/02/2012 - 12:41 "Imposer" ? Ah ben tiens il semble que dans le camp d'en face on considère comme normal ce qu'on critique chez l'opposant... Guillaume, le 06/02/2012 - 12:41 Rien à voir avec une question d'éthique et de censure, mais juste une histoire de gros sous. Pas question de reverser un centime à Apple (même si c'est ce dernier qui a créé un marché des tablettes qui n'existait pas auparavant), et au moins le FT a toute liberté de revendre les données personnelles de ses abonnés. Je trouve donc très amusant que Numérama vienne défendre les intérêts économiques des majors de l'édition et s'indigner qu'on ne puisse pas bafouer les droits des utilisateurs à sa guise. Bref Numérama est prête à renier à 100% ses principes dès que le mot "Apple" se glisse dans le sujet. Guillaume, le 06/02/2012 - 12:41 Tiens après ce quart d'heure de lutte contre la démagogie, parlons technique. Un détail qui a son importance: pour lancer une notification, une application qu'elle soit web ou native doit tourner tout le temps. Or par exemple iOS interdit qu'un navigateur s'amuse à faire tourner du Javascript en arrière-plan et/ou pour une longue durée. àa paraît logique le JS est ruineux du point de vue CPU. Et j'ose pas imaginer si on cumule les onglets d'appli web ouvertes ! Bref sur iOS ça ne marchera pas à cause des gardes-fous qu'a mis en place à Apple. Sur Android c'est pas comme ça et Mozilla pourra sortir n'importe quoi. Et l'utilisateur qui n'y comprend pas grand chose se retrouvera avec une autonomie ridicule. Tout ça parce qu'il faut singer les applications pour préserver le business de Mozilla. Et le "BootToGecko" ça va intéresser qui ? [message édité par Le Vendangeur Masqué le 06/02/2012 à 15:42
]
NeoBurner, le 06/02/2012 - 14:45 Le pire, c'est qu'on dirait qu'ils vont même pas le modifier. ![]() Le, le 06/02/2012 - 15:41 A ma connaissance, le javascript n'est pas exécuté quand le navigateur d'android est en arrière-plan. Edit : Je viens de vérifier, et visiblement, il n'est effectivement pas exécuté... [message édité par milord le 06/02/2012 à 16:07
]
![]() ça m'a l'air bien tordu pour faire la même chose qu'une lecture ajax, un flux RSS ou au pire la réception d'un SMS ou d'un email.
![]() Je suis a 100% pour une concurrence déployé au maximum et qui en plus pousserait les dévellopeurs a faire de l'HTML5 mais aujoud'hui avec un WebOs résolument tourné vers le Web qui passera OpenSource bientôt ce serait peut-être l'ocasin pour Mozilla de partir sur une base intéressante.
Malgré la concurrence Webkit / Gecko ![]() Chouette! Un nouveau moyen de fidéliser nos consommateurs et de leur faire mieux connaître nos produits au travers d'une expérience riche et engageante.
![]() TuXiC69, le 06/02/2012 - 12:23 Ton raison n'est pas bancale, c'est juste que techniquement on peut gruger. Lorsque le client se connecte sur l'URL le serveur peut très bien ne pas répondre... on envoyer une réponse HTTP "partial content" pour maintenir la connexion ouverte et n'envoyer des notif que quand il y en a effectivement une. Quid de la consommation? Une entrée de plus dans la pile TCP mais sinon ça ne consomme vraiment rien ![]() tel que j'ai compris l'article il y a bien du "vrai" push mais pas que.
une api est livré aux sites web pour faire du push vers le client, mais ne sachant pas sur quel périphérique/media, une url unique au client est fournie, celle ci pointe sur un serveur (de mozilla ou pas) qui s'occupe de centraliser toutes les notifications, ensuite libre a vous de faire un client, pour téléphone, une extension Firefox, ou tout autre client de votre choix, qui viendra s'appuyer sur ce serveur de centralisation. Donc c'est un système push/pull. Tous les champs doivent être remplis. Tous les champs doivent être remplis. Tous les champs doivent être remplis. |
A LA UNE
LES + COMMENTÉS
19 offres à partir de 62 €
4 offres à partir de 567 €
Télécharger
pro evolution soccer,
total video converter,
linux,
redtube video downloader,
navigateur web tor,
windows 7 gratuit,
voissa anonymo,
navigateur web pdf,
Accès rapide :
Communication |
Encoder ou convertir |
Personnalisation |
Diagnostic |
eMule (et mods eMule) |
Photo numérique |
Outils Réseau |
|
Pour moi avec du push c'est le serveur qui initie l'envoi des notifs au client, et pas le client qui vient les chercher. Corrigez moi si je me suis planté.