Skip to content
Snippets Groups Projects
Select Git revision
  • ad66fa9410a5b2a37d9124de5f6a37988aace740
  • main default protected
  • tags/misc
  • tags/version-0.5r2
  • tags/version-0.6
  • tags/version-0.4
  • tags/version-0.5r1
  • tags/libxaal_v01
  • tags/generic-feedback-renderer_complexAPI
  • tags/testing-libsodium
  • tags/testing-nettle
  • tags/testing_ajax
  • tags/testing_clearsilver
  • tags/testing_jansson
  • tags/testing_jsmn
  • tags/testing_json-c
16 results

README.TXT

Blame
  • user avatar
    clohr authored
    git-svn-id: https://redmine.imt-atlantique.fr/svn/xaal/code/C/branches/version-0.7@2265 b32b6428-25c9-4566-ad07-03861ab6144f
    696a30c6
    History
    README.TXT 2.63 KiB
    # Base xAAL Services
    A set of simple nodes providing base services on an xAAL bus
    Conforms to xAAL specification v0.7
    
    
    ## Devices
    Following  applications are proposed as proof of concept:
    
    - cache: A simple cache service.
      Dependencies: libsqlite3-dev
    
    - automalua: Automata with Lua scripts.
      A short introduction of the API:
      .Variables provided to Lua scripts (readed from config file):
        xAAL_Lua_baseaddr: An uuid, possibly of the first declared device.
        xAAL_Lua_groupId: UUID of the group to which belong the automaton
        xAAL_Lua_parameter: A string readed from the config file.
      .Functions provided to Lua scripts:
        xAAL_Lua_declare_device(): The Lua script must declare each device.
          The expected parameter is a table with following keys:
    	addr(string) devType(string) vendorId(string) productId(string)
    	version(string) url(string) info(string)
    	unsupportedAttributes(table of string)
    	unsupportedMethods(table of string)
    	unsupportedNotifications(table of string)
          Note: If there is no addr, the baseaddr is used for the first
          registred device, and baseaddr++ for the following ones.
          It retruns the address of the declared device.
        xAAL_Lua_filter_broadcast_by_source():
          First parameter is the address of the device that wants a filter.
          Second parameter is a table of source addresses.
        xAAL_Lua_filter_broadcast_by_devType():
          First parameter is the address of the device that wants a filter.
          Second parameter is a table of devType.
        xAAL_Lua_set_alarm():
          First parameter is the delay in seconds.
          Second parameter is the address of the device that wants an alarm.
          Third parameter is a string, a parameter bassed back at trigger
      .Function that must be declared in the Lua script, called by the middleware:
        xAAL_Lua_receive_callback():
          First parameter is the address of the device that receives the message.
          Next parameters (strings) are the source, devType, msgType and action
          of the message
          Last parameter is a table representing the body of the message.
        xAAL_Lua_alarm_callback():
          First parameter is the address of the device that set the alarm.
          Second parameter is the string provided while setting the alarm.
      TODO: use threads, use a restricted sandbox for lua scripts...
      Dependencies: liblua5.2-dev
    
    - metadatadb: A simple metadata database to store and retreive users tags
      about devices of its home-automation facility.
    
    
    ## Copyright
    - Christophe Lohr - IMT Atlantique - 2019
    - The demo applications are provided according to the terms of the
      GNU General Public License v3.0 and following
    - Dual-licenses are accepted, contact us.