TECS – Thrift Eventbased Communication Service

TECS TECS – Thrift Eventbased Communication Service

TECS – Thrift Eventbased Communication Service

Posted By cfb

TECS LogoCommunication between applications in cyber-physical environments and smart-environments increases the requirements for developers and researchers: Multiple operating-systems, processor architectures, programming languages and communication techniques have to be brought together. TECS combines the most common ways of communication in a single easy, fast and stable middleware. Its communication is based on Thrift, a RPC oriented Interface Definition Language (IDL), originally created by Facebook but later consigned to Apache and therefore now open-source. TECS expands the RPC functionallity in Thrift with the well known communication strategies publish-subscribe, message-passing and remote-procedure-call for the languages Java, C++, C#, Ruby and Python on the operating systems Windows, Mac OS and Linux running under arm, amd64 and i686. Additionally some parts of TECS are also working under Android and even Unity and we are currently working to easily integrate websites using HTML5 and JavaScript. Services should be able to find each other easily, TECS provides support for publishing and discovering services via multicasting and broadcasting. Services and application can be monitored and started by using watchdogs. Therefore, TECS makes communication in cyber physical environments and smart environments possible and simplifies the administration and implementation of more and more complex project architectures.

TECS is developed and used under CC-BY-NC-4.0 license in the context of HySociaTea and MadMacs. Also TECS was used in a cobot seminar and is currently used in the human robotic interface seminar at Saarland University, because of its usability and its suitability for rapid prototyping. TECS is released using semantic versioning and therfore gurantees a safe and easy integration into other projects. There are regular stable releases, a stable release branch and a bleeding-edge developing branch. Therefore it is assured that other projects are not failing because of fast forward bugfixes and updates.

If you want to use TECS in your projects or even want to contribute please let us know. We are always interested in spreading TECS!

Download TECS Middleware for Cyber-Physical Environments now