Организация Eclipse Foundation, возглавившая работу по созданию открытых технологий разработки приложений для Интернета вещей (IoT), заявила, что рабочая группа Eclipse по Интернету вещей (Eclipse IoT Working Group) выпустила новые версии четырех открытых IoT-проектов, работу над которыми начала более года назад.
В число этих проектов, размещенных на серверах Eclipse Foundation, входят Eclipse Kura 2.0, Eclipse Paho 1.2, Eclipse SmartHome 0.8 и Eclipse OM2M 1.0. Данные проекты должны помочь разработчикам оперативно создавать новые IoT-решения на основе открытого кода и открытых стандартов.
«Мы уверены, что Интернет вещей сможет эффективно работать только при условии, что будет опираться на открытые технологии, — заявил исполнительный директор Eclipse Foundation Майк Милинкович. — Наша цель в Eclipse заключается в поддержке не ангажированного никакими компаниями Open-Source-сообщества, способного создать эти технологии».
Eclipse IoT — это Open-Source-сообщество, занимающееся созданием ключевых технологий, необходимых программистам для разработки IoT-решений. В сообществе состоят более 200 участников, пишущих код в рамках 24 проектов. По словам представителей Eclipse, совокупный объем кода этих проектов составляет свыше 2 млн. строк, при этом их скачивали в общей сложности более 500 тыс. раз.
Более того, в состав Eclipse IoT Working Group входят 30 компаний, совместно работающих над ключевыми элементами ПО в виде открытых реализаций различных стандартов, сервисов и фреймворков, способствующих развитию открытого Интернета вещей.
Помимо обновления существующих IoT-проектов в Eclipse также инициировали еще один новый проект. Eclipse Kapua — это предложенный компанией Eurotech открытый проект по созданию модульной интеграционной платформы для IoT-устройств и интеллектуальных датчиков, направленный на организацию интерфейса между операционными и информационными технологиями, сообщил Милинкович.
Eclipse Kapua ориентирован на управление периферийными IoT-узлами, в том числе их подключением и конфигурированием, а также жизненным циклом исполняемых ими приложений. Он также обеспечивает консолидацию потоков данных, поступающих в режиме реального времени с сетевой периферии, с последующей их архивацией или перенаправлением в корпоративные ИТ-системы и приложения.
«В связи с тем, что организации продолжают внедрять IoT-решения, они все чаще прибегают к открытым технологиям Eclipse IoT для реализации этих решений, — рассказал Иэн Скерретт, вице-президент Eclipse Foundation по маркетингу. — К примеру, библиотеку Eclipse Paho разработчики выбирают по умолчанию в качестве реализации протокола MQTT (ранее известного под названием MQ Telemetry Transport), а Eclipse Kura существенно удешевляет и упрощает реализацию IoT-шлюзов. Нет никаких сомнений в том, что Open Source будет выступать в качестве движущей силы Интернета вещей, а рабочая группа Eclipse IoT уже стала важным источником открытых технологий для IoT».
Eclipse Paho обеспечивает открытую клиентскую реализацию протоколов обмена сообщениями MQTT и MQTT-SN. В новую версию Paho 1.2 вошли обновления существующих клиентских библиотек для Java, Python, JavaScript, C, .NET, Android и Embedded C/C++. Среди улучшений в новой версии также можно отметить автоматическое восстановление соединения и офлайн-буферизацию для клиентов, написанных на языках C и Java, а также под ОС Android; поддержку протокола WebSocket для клиентов, написанных на Java и Python; новый клиент Go Client, поставляемый в виде компонента под Windows, Mac OS X, Linux и FreeBSD. Версия Paho 1.2 уже доступна для скачивания.
Eclipse Kura представляет собой фреймворк для создания IoT-шлюзов. Недавний релиз, Kura 2.0, оснащен новым гибким пользовательским интерфейсом на базе Bootstrap, упрощающим управление шлюзами Kura с мобильных устройств. Также теперь предусмотрена поддержка множественных соединений с облаком, благодаря чему один и тот же шлюз можно подключать сразу к нескольким облачным платформам, в том числе Eurotech Everyware Cloud, Amazon AWS IoT, Microsoft Azure IoT и IBM IoT Foundation.
В Kura 2.0 также улучшили процесс ознакомления разработчиков с функционалом программы, добавив новые инструменты и примеры кода для облегчения процесса создания приложений в Kura, а также реализовали быстрый запуск приложений Kura, доступных в Eclipse Marketplace, путем простого перетаскивания мышью. В дополнение ко всему в Kura 2.0 организована более тесная интеграция с фреймворком Apache Camel с целью обеспечить простую и понятную маршрутизацию сообщений в рамках бизнес-логики приложений, созданных с помощью Eclipse Kura. Версия Kura 2.0 будет доступна позже в июне.
Eclipse SmartHome — это фреймворк для проектирования технических решений для умных домов с упором на среды с разнородным оборудованием. Его код предназначен для исполнения на встроенных устройствах, таких как Raspberry Pi, BeagleBone Black и Intel Edison.
Новая версия Eclipse SmartHome 0.8 оснащена новым REST API, включающим в себя поддержку Server-Sent events (SSE — события, посылаемые сервером). Этот API открывает функционал Eclipse SmartHome клиентам, тем самым обеспечивая простой обмен данными. Интерфейс SmartHome под названием «Paper UI» представляет собой панель управления, применяющую этот новый API. В новую версию также были добавлены дополнительные привязки для поддержки множества новых устройств, в том числе динамиков Sonos, лампочек LIFX, устройств автоматизации Belkin WeMo, систем digitalSTROM и др. В нее входит базовый драйвер OSGi EnOcean, предоставленный Orange Labs. Плюс ко всему, отмечает Скерретт, обновленная версия оснащена новым движком обработки правил с поддержкой шаблонов для начинающих, модулем JavaScript для автоматизации правил и графическим редактором правил, предоставленным компанией ProSyst.
Eclipse SmartHome 0.8 уже доступен для скачивания.
Напоследок остановимся на Eclipse OM2M — открытой реализации стандарта oneM2M. Последний направлен на организацию как можно более эффективного межмашинного взаимодействия (M2M). Eclipse OM2M предоставляет набор горизонтальных IoT-сервисов, способствующих разработке IoT-решений без привязки к лежащим в их основе сетям.
Как заявляют представители Eclipse, OM2M 1.0 имеет архитектуру модульной платформы на базе спецификации OSGi, благодаря чему ее легко расширять. В этой версии реализован облегченный REST API, к которому можно подключиться через множество сетевых привязок, в том числе протоколы HTTP и CoAP, а также добавлена поддержка различных форматов контента, например, XML и JSON. Она также предоставляет возможность гибкого хранения данных в абстрактной модели длительного хранения, с поддержкой встроенных и серверных баз данных, режима хранения в оперативной памяти и моделей доступа к данным SQL и NoSQL.
Реализация Eclipse OM2M также включает в себя ключевые компоненты oneM2M, а именно: выделенный объект Common Service Entity (CSE) для узлов инфраструктуры (Infrastructure node, IN), срединных узлов (Middle Node, MN) и узлов прикладных сервисов (Application Service Node, ASN). Также имеется поддержка второго ключевого компонента, Common Service Function (CSF), выполняющего функции регистрации, управления приложениями и сервисами, настройки препроцессора, управления данными и поддержки репозитория, подписки и уведомления, управления группами, обеспечения безопасности и т. д.
Eclipse OM2M версии 1.0 будет готова к использованию ближе к концу июня.