Service de Notification Push Apple (APNs)

Qu’est-ce que le Service de Notification Push Apple ?

Le Service de Notification Push Apple (APNs) est un service de livraison fourni par Apple à son écosystème iOS, qui transporte des messages depuis des serveurs distants jusqu’à des appareils tels que les iPhones, iPads et Macs. Le rôle du serveur d’application dans tout cela est d’agir comme un intermédiaire entre le serveur d’application et les appareils, facilitant ainsi la transmission d’informations en temps réel. Lorsque l’équipe de développement souhaite envoyer une notification push sur l’appareil de l’utilisateur, elle utilise un APN pour envoyer ce message directement au système d’exploitation de l’appareil. Ensuite, l’utilisateur reçoit la notification.

En outre, les APNs sont responsables de fournir aux utilisateurs des informations pertinentes sur les applications où ils les installent et de leur faciliter la tâche pour rester à jour.

Graphique explicatif du fonctionnement des notifications push, depuis le moment où un utilisateur autorise une notification à partir d'une application, en passant par le cycle complet du serveur de l'application et des APN, jusqu'à la transmission de la notification à l'appareil de l'utilisateur
Diagramme du processus de notification push avec cinq étapes clés

Types de Notifications

Les APNs offrent diverses formes de notification qui peuvent être livrées aux gadgets Apple. Ces notifications comprennent des badges, des sons et des alertes textuelles personnalisées. Les badges sont de petits symboles numériques qui apparaissent sur les icônes des applications, indiquant l’existence de nouveau contenu ou de messages non lus. Les notifications peuvent être accompagnées de sons pour attirer l’attention des utilisateurs et agir comme une alerte audible. Les alertes textuelles personnalisées permettent aux développeurs d’envoyer des messages dédiés, qui contiennent des informations sur l’utilisation de l’application directement aux utilisateurs.

Avec ces différents types de notifications, les développeurs peuvent concevoir des activités fascinantes et interactives pour les utilisateurs de leur application. Que ce soit un jeu informant le joueur d’un nouveau niveau ou une application de messagerie envoyant des messages en temps réel, les APNs restent le moyen central de joignabilité pour divers types de notifications.

Évolution des APNs

Les APNs ont été introduits pour la première fois par Apple le 9 juin 2008, lors de la WWDC (Worldwide Developer Conference). Initialement, l’acceptation des APNs a rencontré des problèmes de scalabilité en raison du nombre élevé de notifications push et des retards subséquents dans la livraison des notifications. Apple a ouvert l’accès aux APNs pour Mac OS X, ce qui a permis aux développeurs de transmettre des notifications push aux Macs et a offert une expérience unifiée aux utilisateurs à travers les appareils Apple.

Améliorations Techniques des APNs

Au fil des ans, les APNs ont subi diverses modifications techniques pour renforcer leurs capacités et leur efficacité. Une mise à niveau notable a été l’augmentation de la taille des charges utiles des notifications de 256 octets à 2 kilo-octets. Apple a également créé une interface d’envoi plus efficace qui a réduit la surcharge et augmenté l’efficacité générale des APNs. L’une des améliorations clés des APN a été le passage à l’API du fournisseur HTTP/2. Cela a introduit plusieurs avantages, tels qu’une livraison de notifications push plus rapide et plus efficace aux appareils grâce au multiplexage.

Exigences et Spécifications Réseau

Certains protocoles et normes doivent être en place pour établir la connexion entre les serveurs d’application et les APNs. Les APNs utilisent des ports TCP particuliers pour la communication, et donc, il est nécessaire que ceux-ci soient ouverts et accessibles.

  • Port 5223 : Ce port communique avec le service de retour d’information des APNs. Le service de retour permet aux serveurs d’application de récupérer des données concernant les appareils qui ont supprimé une application ou désactivé les notifications push.
  • Port 443 : Ce port est utilisé pour communiquer l’API du fournisseur des APNs. C’est le canal de communication des serveurs d’application vers les APNs par lequel les notifications push sont envoyées aux appareils des utilisateurs.
Numéro de portFonctionnalitéSolutions aux problèmes d’accès
5223Utilisé pour récupérer des informations sur les appareils qui ont désinstallé une application ou désactivé les notificationsUtiliser des méthodes alternatives telles que HTTP/2 ou des fournisseurs tiers de notifications push pour la prise en charge des APNs
443Port principal pour l’envoi de notifications push par les serveurs d’applications aux APNUtiliser des méthodes alternatives telles que HTTP/2 ou des fournisseurs tiers de notifications push pour la prise en charge des APNs

Parfois, ces ports peuvent être bloqués par des restrictions de pare-feu ou configurés de manière à ce que l’accès direct ne soit pas autorisé. Pour surmonter ces limitations, les développeurs peuvent adopter des solutions alternatives comme HTTP/2 ou des services de notification push tiers prenant en charge les APN.

Références

  1. Apple Push Notification Service” Aperçu des notifications – Apple Developer
  2. Apple Push Notification service – Wikipedia
  3. iOS Push Notifications Explained | Airship
  4. iOS remote push notifications in a nutshell | par Deyan Aleksandrov | Medium

Additional Resources