Eclipse SmartHome 0.8.0

Release Date
Deliverables
  • REST API for CRUD operations on entities
  • SSE mechanism for server push functionality
  • AngularJS-based reference admin interface "Paper UI"
  • MDL-based reference user interface "Basic UI"
  • Console commands for all new features
  • new modular rule engine framework
  • new framework to easily provide localisations for the main entities such as Things.
  • UPnP infrastructure for discovery, issueing commands and GENA subscriptions
  • mDNS infrastructure for device discovery
  • Maven archetype for binding test fragments
  • Transformation services for JSON path, scale, javascript and regex
  • new infrastructure to provide multiple iconsets incl. svg support
  • new binding for Belkin WeMo devices
  • new binding for LIFX light bulbs
  • new binding for Sonos speakers
  • new binding for FrontierSilicon Internet radios
  • new binding for digitalSTROM systems
  • new binding for NTP servers
  • OSGi EnOcean Base Driver
Compatibility

Extensions implemented against 0.7.0 should be binary compatible. Nonetheless, as APIs have been heavily extended meanwhile, it is highly recommended that developers check their extensions and add new functionality to them in order to make them good citizens.

Internationalization

A generic mechanism has been introduced, which allows to provide texts in different languages. The REST API fully supports this, so it passes through the requested locale to downstream APIs.

Within the project, texts are only provided in english, though, so it is up to the solutions to add additional languages.

Target Environments

The target environment is any system that has

- a JVM compliant with 1.7 or above

- an OSGi Framework 4.2 or above

- at least 128MB Java heap size

 

It has been tested with Oracle JDK 1.7 and 1.8 and with the OSGi framework implementations Eclipse Equinox, Apache Felix and ProSyst mBS.

Themes

REST API + SSE

Extensive REST API with CRUD operations for system administration and configuration, including server push through server sent events (SSE).

Rule Engine

A new modular rule engine framework, that allows the assembly of rules from modules and through templates. Javascript can be used within modules and all functionality is exposed through the REST API to allow graphical rule editors to be built on top.

Bindings

Adding new bindings is a recurring theme of this project. There is usually no planning possible as they are sort of randomly contributed by the community. In this release we have major contributions for Sonos, WeMo, digitalSTROM and smaller ones for NTP and FrontierSilicon Internet radios.

User Interfaces

This covers new modern user interfaces for administration as well as operation. The names are "Paper UI" and "Basic UI" and they use common ui web frameworks for responsive applications from mobile devices to PCs.