Майбутнє веб браузерів та екосистема пристроїв користувача

Мені завжди було дивно бачити, як різні пристрої однієї і тієї ж людини взаємодіють між собою. По суті ми все ще знаходимося на тому ж рівні, коли пересилали один одному файли по Bluetooth. Радує, що ця проблема почала якось вирішуватися останнім часом, наприклад, можливо ви пам'ятаєте презентацію WebOs від Palm (HP) і функцію Touch To Share, там був момент, коли один пристрій стосувався іншого і веб сторінка ніби перетікала між ними, в цьому відеоролику більш наочно.

В останній презентації Apple, де вони представили нову iOS 8, була показана технологія Continuity, що дозволяє додаткам бачити інші пристрої користувача і обмінюватися з ними інформацією. Ви писали щось у поштовому клієнті на телефоні, втомилися - можете продовжити з того ж місця без збереження в чернетки.

Все це дуже здорово, але практично ніяк не полегшує життя звичайним веб розробникам. Чи є якесь рішення?

Зараз практично всі браузери дозволяють синхронізуватися між пристроями через свої сервіси. Для Chrome це користувач в Google, для Safari - iCloud, Firefox використовує Firefox Sync, ну а в Яндекс.Браузері це обліковий запис Яндекса. Синхронізація це дуже зручно, на всіх пристроях одні і ті ж паролі, вкладки, закладки, іноді навіть Куки. Деякі йдуть ще далі, в Chrome можна вибрати як пристрій для друку - ваш мобільний пристрій. А в Яндекс.Браузері є функція швидкого дзвінка, яка дозволяє «швидко дзвонити за знайденими в інтернеті номерами».

Як бачите, браузери у всю використовують можливості роботи з пристроями користувача, як з єдиною екосистемою. Але мені, як веб розробнику, теж хочеться доторкнутися до цього. Тоді я подумав, а що якби в браузері було якесь JavaScript API, за допомогою якого я міг би дізнаватися про пристрої користувача і виконувати якісь дії (само собою тільки з дозволу власника).

Основні напрямки, які відкриваються завдяки цьому:

  1. Знання, про те якими пристроями користується користувач, може допомогти сайтам поліпшити їх User Experience (пропозиція встановити додаток для вашого типу пристрою)
  2. Розширення можливостей одного пристрою іншим (на ноутбуках немає акселерометра або GPS)
  3. Спрощення сценаріїв, при яких користувачеві потрібно було взаємодіяти між пристроями (аналоги того ж швидкого дзвінка від Яндекс.Браузера)

По суті потрібно тільки кілька методів:

  1. getDevices () - отримати інформацію про пристрої користувача
  2. connect (device, mode) - встановити зв'язок з конкретним пристроєм (запросити потрібні права доступу)
  3. send (device, data) - базовий метод для відправки будь-яких даних на пристрій
  4. receive (device, callback) - базовий метод для отримання даних з іншого пристрою
  5. push (device, message, data) - можливо ще відправка якогось push повідомлення з даними.

Придумувати реальні сценарії можна до нескінченності, ось що спало на думку мені.

Сценарій з магазином

Припустимо, ви заповнюєте картку для товару на Avito або EBay. У якийсь момент вам потрібно викласти фотографії товару, добре, якщо ви зробили це заздалегідь, але якщо ні, то можна звичайно спробувати сфотографувати те що потрібно на камеру ноутбука. Але уявіть, якщо сайт, поруч з кнопкою завантаження файлу, пропонує так само скористатися і камерою вашого смартфона? Ви просто натискаєте кнопку, дістаєте телефон, робите фотографії, і вони автоматично з'являються на веб-сайті. Просто і зручно.

Сценарій з квитками

Я завжди трохи побоююся залишати номер свого мобільного на сайтах, навіть якщо це авіаперевізник, здається мені було б сильно простіше, якщо перевізник міг відправити мені електронний квиток не питаючи у мене реальний номер телефону:

І купа інших можливостей, наприклад: управління веб іграми та відео сервісами через мобільний пристрій, розширення можливостей екрану (в картах в режимі панорами виводити панораму на одному пристрої, а карту на іншому) тощо.

Якщо розвивати ідею далі, то можна дати доступ не тільки до екосистеми пристроїв, але і додатків. Відкрити адресу з комп'ютера через Foursquare або навігатор, а може бути в Booking.com? Чому б і ні.

Я був би радий почути від вас приклади того, як подібна функціональність була б корисна особисто вам. Можливо, якщо розробники браузерів побачать, що це потрібно багатьом, то ми побачимо реалізацію вже в найближчому майбутньому.

Тільки зареєстровані користувачі можуть брати участь в опитуванні. Увійдіть, будь ласка.

Вам цікава подібна можливість?

47.83% Так, я б використовував її у своїх проектах 110

54.35% Так, як користувачеві мені це подобається 125

23.04% Ні 53

Проголосували 230 користувачів. Утрималися 83 користувачі.