Many vendors offer home-automation solutions. There are almost as many home automation protocols as manufacturers (or alliances of manufacturers). The consequence is a strong issue about interoperability: how to make a device from vendor A (eg. a switch) talking with a device from vendor B (eg. a lamp)?
xAAL aims to address interoperability issues of home automation systems.
Existing solutions for interoperability issues play around the idea of gateways: a box (a small computer) is equipped with two or more modules, each module talking a given home-automation protocol ; then a piece of software over those modules make it possible to forward messages between protocol A and protocol B.
xAAL proposes to reorganize and formalize architectures of those boxes, which are in fact all composed of the same functionalities. Functionalities are cut into well defined functional entities, communicating to each other via a messages bus over IP. Each functional entity may have multiple instances and be deployed in different ways over physical entities.
- Native Equipment: devices communicating using the xAAL protocol natively
- Gateways: translate messages between a manufacturer protocol and the xAAL protocol
- Schemas Repository: contain schemas describing devices
- Database of Metadatas: actual configuration of devices
- Cache: stores notifications of sensors about state changes
- Automaton of Scenarios: advanced home automation services
- User Interfaces: generate web pages or provides REST API for mobile applications or external servers