ReActOR: A middleware as a service to interact with objects remotely

ReActOR: A middleware as a service to interact with objects remotely In the recent past, we have observed great advances in the way that people are connected, from social networks to small smart devices At the same time, we are entering the era of smart cities and the internet of things, where sustainability and quality of life are key concerns. Despite these trends, we did not observe an equal level of adoption of technologies or services that leverage the automation of facilities. The main reasons for such low-level of adoption are: proprietary solutions tend to be very expensive; and the daunting effort that is required to integrate automation devices that rely on different communication protocols, within the same system. In this paper, we present the ReActOR middleware, which allows the seamlessly integration of affordable devices that enable control and sense objects that are useful and essential to our lives. The ReActOR middleware has several advantages: (i) it allows to abstract the interaction with objects; (ii) it allows to create and integrate heterogeneous automation networks, each relying on a specific communication protocol; (iii) it allows the interoperability between disparate automation devices; (iv) it allows to specify rules to get notified upon the occurrence of specific events; (v) it enforces user authentication; (vi) the support for new features is easily achieved either by extending, refining, or composing the provided ones; and (vii) extremely important, it is easy to add support for custom made devices – either actuators or sensors -, which may be achieved with little effort. We also give several detailed examples showing: (i) out of the box functionalities provided by the ReActOR middleware; (ii) how to add support for custom made devices; and (iii) how to interact with objects remotely, either by actuating over automation devices or by receiving notifications from them and (re)act in accordance, among other functionalities.