Vous connaissez bien l’anxiété. Vous envoyez un SMS. Vous voyez la bulle bleue. Ensuite, tu attends. Les trois points dansants apparaissent sur votre visage. Cela signifie que quelqu’un est en train de taper. Ou alors ils ne le font pas. Parfois, ils restent là même lorsque l’autre personne s’arrête. Mais le mécanisme derrière ce petit repère visuel est en réalité assez robuste. Il s’appuie sur un protocole spécifique qui maintient votre appareil en contact permanent avec l’infrastructure Apple.

L’astuce ne fonctionne que si vous utilisez iMessage. Si vous envoyez un SMS à quelqu’un sur un téléphone Android, ces points n’apparaissent jamais. Vous regardez simplement une bulle verte. iMessage est intégré à l’application Messages sur les iPhones, iPads et iPods. Cela ressemble à un SMS standard. Cela fonctionne davantage comme une messagerie instantanée. Lorsque vous envoyez un message à un autre utilisateur Apple, votre téléphone identifie son identifiant Apple. Il achemine ensuite les données via les serveurs d’Apple au lieu du réseau de l’opérateur de téléphonie mobile.

Cette distinction est importante pour la vitesse et les mises à jour de statut. Les SMS standard transitent par les tours des opérateurs de téléphonie mobile. Ils sont maladroits. Ils manquent de métadonnées riches. iMessage utilise le service Apple Push Notification (APN) pour déplacer les données. Ce système est basé sur le protocole extensible de messagerie et de présence (XMPP). XMPP permet aux serveurs de communiquer entre eux. Il permet aux utilisateurs de différents serveurs d’échanger des notifications. Google Talk a utilisé ce même protocole. L’ancien service iChat d’Apple l’utilisait également.

Votre iPhone n’attend pas que vous ouvriez l’application pour vérifier les messages. Il maintient une connexion constante de bas niveau avec les serveurs APN. Tant que vous disposez d’une connexion réseau, votre appareil écoute. Il vérifie les nouveaux textes. Il vérifie les invitations FaceTime. Il vérifie les alertes d’autres applications.

L’indicateur de saisie fonctionne grâce à ce lien continu. L’iPhone du destinataire communique également avec les APN. Lorsqu’ils appuient sur les touches, cette activité est détectée. Le serveur associe l’action à votre identifiant Apple. Il renvoie ensuite un signal à votre appareil. Les points apparaissent. Vous savez qu’ils tapent.

Ce processus échoue si la connexion est interrompue. Pas de Wi-Fi. Aucune donnée cellulaire. Vous êtes hors ligne. L’iPhone passe en mode SMS standard. Les riches fonctionnalités disparaissent. Vous perdez les confirmations de lecture. Vous perdez les indicateurs de frappe. Il vous reste à deviner. La même chose se produit si vous envoyez un message à quelqu’un utilisant un système d’exploitation différent. Le changement de protocole vous laisse dans l’ignorance de leur intention.