Разработчики из сообщества Mozilla представили инициативу Web of Things, в рамках которой предпринята попытка адаптации идей, заложенных в Web, для построения децентрализованной сети устройств, относящихся к категории интернета вещей (Internet of Things, IoT). В частности, предлагается использовать URL для адресации подобных устройств и обеспечить возможность доступа к ним из Web. В настоящее время проектом уже подготовлена спецификация Web Thing API, которая передана на рассмотрение консорциуму W3C, и реализация шлюза для объединения и подключения к Web of Things имеющихся устройств.

Отмечается, что многие новые устройства, ориентированные на подключение к глобальной сети, имеют плачевный уровень безопасности, например, для них не поставляются обновления прошивки с устранением уязвимостей и наблюдаются большие проблемы с соблюдением приватности (например, собираются и передаются в облако персональные данные). IoT-устройства обычно формируются на базе различных проприетарных стеков, что создаёт проблемы с совместимостью устройств между собой, мешает организации централизованного управления и не позволяет унифицировать взаимодействие с устройствами (например, производители предлагают свои наборы ПО для управления, несовместимые с продуктами других производителей, а также привязывают решения к своим облачным системам).

В рамках проекта Web of Things осуществлена попытка создания слоя, который позволил бы объединить уже имеющиеся устройства, а также универсального Web API для организации взаимодействия. Предлагается три варианта реализации поддержки Web of Things API: прямая интеграция, при которой WoT API реализуется на стороне IoT-устройства; работа через шлюз, транслирующий в WoT API сторонние протоколы (например, может применяться для имеющихся проприетарных устройств или ограниченных по ресурсам устройств на которых невозможно запустить HTTP-сервер) и работа через облако.

Для оценки и тестирования предложен прототип шлюза, который написан на JavaScript с использованием серверной платформы Node.js и доступен в виде готовых сборок для установки на платы Raspberry Pi. Для трансляции имеющихся протоколов и возможностей устройств IoT применяются подключаемые адаптеры, которые уже подготовлены для манипуляции с GPIO через Web API, а также для организации управления при помощи ZigBee и ZWave.

Шлюз поддерживает такие функции, как определение устройств в локальной сети, выбор web-адреса для соединения с устройствами в домашней сети из интернета (доступ осуществляется с использованием TLS-шифрования), создание учётных записей для доступа к web-интерфейсу шлюза, подключение к шлюзу устройств, поддерживающих проприетарные протоколы ZigBee и Z-Wave, удалённое включение и выключение устройств из web-приложения.

Из ещё не реализованных компонентов отмечаются Things Cloud и Things Framework. Things Cloud представляет собой коллекцию облачных сервисов, упрощающих решение задач по управлению большим числом географически разнесённых IoT-устройств. Things Framework предоставляет набор заменяемых компонентов для создания IoT-устройств, которые могут напрямую взаимодействовать с с Web of Things, без применения шлюзов, транслирующих обращение через штатные протоколы IoT.