Компания Google открыла под лицензией Apache новый программный фреймворк Interactive Spaces (Интерактивные пространства), назначение которого в предоставлении разработчикам средств для организации работы систем интерактивного взаимодействия объектов в физическом пространстве. В качестве примера области использования фреймворка продемонстрирована система визуализации перемещения людей в комнате, в которой через систему камер наблюдения отслеживается перемещение каждого человека и в зависимости от того, в какой части комнаты находится объект, комната реагирует определённым образом.
Работа фреймворка базируется на предоставлении высокоуровневой архитектуры для организации взаимодействия между источниками событий (например, камера) и компонентами реагирующими на события, позволяя создавать процессы, «отзывающиеся» на события. Для создания различных обработчиков действий, выполняемых в едином интерактивном пространстве, подготовлена специальная коллекция библиотек. Для создания нового действия на заданное событие требуется подготовить небольшой файл конфигурации (несколько строк), на основе которого будет сгенерирован соответствующий программный интерфейс. В состав фреймворка также входит набор runtime-компонентов для централизованного развёртывания, запуска и остановки обработчиков действий, выполняемых на нескольких компьютерах.
Теоретически, фреймворк можно будет использовать для создания инсталляций интерактивного искусства или разработки игр с элементами физического взаимодействия. Код фреймворка реализован на языке Java, но из коробки доступны модули для использования функций фреймвора в нативных приложениях на языке C++, а также в программах на языках JavaScript и Python. В будущем планируется добавить поддержку системы программирования графики Processing, что упростит создание сложных визуализаций, с которыми могли бы взаимодействовать люди в физическом пространстве.