# Implementation of xAAL in C Here are some piece of code in C to implement xAAL devices. Each folder contains a README.TXT and a Makefile. So, feel free to read those files and type make. ## Quick start 1) Compile libxaal 2) Test demo 3) Enjoy! 4) Be indulgent regarding bugs... ## Details - libxaal: An xAAL stack in C. The library is mandatory for following stuff. - demo: Several dummy xAAL devices (lamp shutter thermometer dumper, etc.) Runnable on a text console on your PC, without the need of real devices. A good starting point for discovering the marvels of xAAL. - baseservices: Special xAAL devices (cache, metadata DB, automaton). Optional, but useful on a real home-automation facility. - xaaws: A generic user interface (using html websockets rest javascript) - netprobe: Monitor the xAAL multicast bus, collect some statistics about bandwidth usage, etc. - babbler: Text to speech for xAAL. Listen to the xAAL bus and tell notifications and events. Funny but rapidly boring. Also, a good example about using the metadata DB. - xaal-stt: Speech to text for xAAL. Listen of sentences of the user (such as "Majordom, switch on the lamp of the kitchen."), try to guess what he/she wants, and sends xAAL commands. Funny but also rapidly boring. Also, a good example about using the metadata DB. - generic-sender: A simple generic xAAL device to ease integration with other systems (e.g. video motion sensor, bluetooth proximity, etc). The device listen for some data on a unix pipe and forwards it on the xAAL bus as notifications. - generic-feedback-renderer: This device listen for "inform" xAAL request with a text, and render it to the user (e.g. by placing a call with a tts, by pushing a pop-up on a DLNA TV, etc.). More-or-less the counterpart of the generic-sender. - sound-measure: An example of a sensor that does not stupidly forward measures continuously periodically. Yes, one can do smarter things! - tts: Text to speech for xAAL. Wait for "say" requests and forwards the message to pico2wave+aplay - xaafloor: Fall Detector using a SensFloor device. - libxaal_aux: An auxiliary library with helpers to feed optional xAAL stuff. - libxaal_jc: An auxiliary library with json2cbor and cbor2json transcoders. Note that transcoding rules are specific to the xAAL context. ## Copyright - Christophe Lohr - IMT Atlantique - 2019 - Libraries are provided according to the termes of the GNU Lesser General Public License v3.0 and following - Applications are provided according to the terms of the GNU General Public License v3.0 and following - Dual-licenses are accepted, contact us.