As described in the Get started section of this website (read it before this one if you haven't done it already), a Domapic system is conformed by microservices at charge of simple automation tasks, such as switching a light, or emitting an event when the weather changes. These pieces are called "accessories".
"Abilities" are the tasks that an "accessory" is able to perform, for example, a wheather sensor could inform about current humidity and about current temperature. Each "ability" of an "accessory" implements its own REST API with its own related state, action and/or event api resources.
Accessories are still called "modules" in current domapic-service version.
All accessories communicate directly only with the "brain" of the system, called "Controller". It receives all accessories events and is able to send actions to all of them. It also includes a web interface which allow users to have control over all accessories in a Domapic network in a single point.
"Automatisms" are automatic tasks programmed in the Controller, usualy triggered by an event of any of the accessories. (When a window is opened, then switch the heating off)
Controller Automatisms feature is not released yet. Check the roadmap for further details.
Plugins receive events from the "Controller" when anything happens in the system, and are able to emit actions to it through a REST API. So, the "Controller" funcionalities can be extended using "plugins", which are able, for example, to inform to third party apps about what is happening in the system to act in consequence, or to perform actions in the system depending of what is happening in third party apps.