Ви добре знаєте це занепокоєння. Ви надсилаєте повідомлення. Бачите синій пляшечку. Потім чекаєте. Три танцюючі точки з’являються у FaceTime. Вони означають, що хтось друкує. Або не означають. Іноді вони залишаються навіть тоді, коли інша людина перестає друкувати. Але механізм, який стоїть за цією маленькою візуальною підказкою, насправді досить надійний. Він спирається на конкретний протокол, який постійно підтримує зв’язок пристрою з інфраструктурою Apple.

Цей трюк працює тільки якщо ви використовуєте iMessage. Якщо ви пишете комусь на телефоні Android, ці точки ніколи не з’являються. Ви просто дивитеся на зелену бульбашку. iMessage вбудовано у програму «Повідомлення» на iPhone, iPad та iPod. Воно виглядає як звичайне текстове листування. Але функціонує скоріше як месенджер. Коли ви надсилаєте повідомлення іншому користувачу Apple, телефон визначає його Apple ID. Потім він надсилає дані через сервери Apple, а не через мережу стільникового оператора.

Ця різниця має значення для швидкості та оновлень статусу. Звичайні SMS-повідомлення надсилаються через вежі мобільних операторів. Вони громіздкі. Вони містять багатих метаданих. iMessage використовує Apple Push Notification service (APNs) для передачі даних. Ця система заснована на протоколі розширеної передачі повідомлень та присутності (XMPP). XMPP дозволяє серверам спілкуватися один з одним. Він дозволяє користувачам на різних серверах обмінюватися повідомленнями. Google Talk використовував цей же протокол. Старий сервіс Apple iChat також використовував його.

Ваш iPhone не чекає, поки ви відкриєте програму, щоб перевірити наявність повідомлень. Він підтримує постійне з’єднання низького рівня із серверами APNs. Поки у вас є мережне підключення, пристрій знаходиться в режимі прослуховування. Воно перевіряє наявність нових текстів. Перевіряє запрошення у FaceTime. Перевіряє оповіщення від інших програм.

Індикатор набору тексту працює завдяки цьому безперервному зв’язку. iPhone одержувача також спілкується з APNs. Коли вони натискають кнопки, ця дія виявляється. Сервер пов’язує цю дію з Apple ID. Потім він відправляє сигнал назад на ваш пристрій. З’являються крапки. Ви знаєте, що вони друкують.

Цей процес дає збій, якщо з’єднання переривається. Немає Wi-Fi. Немає стільникових даних. Ви офлайн. iPhone переключається у режим стандартних SMS. Багаті функції зникають. Ви втрачаєте повідомлення про прочитання. Ви втрачаєте індикатори набору тексту. Вам залишається лише гадати. Те саме відбувається, якщо ви пишете комусь, використовуючи іншу операційну систему. Перемикання протоколу залишає вас у невіданні щодо їхніх намірів.