Project description

Circuit is a communication platform that enables users to collaborate effectively through chat, audio, video, screen sharing, and file sharing in just one app. Circuit was initially known as Ansible by Unify. The platform is characterized by its ease of use. One thread is used to share content in the workgroup or with any desired person in the company. Circuit is available on PC, tablet and smartphone and thus realizes the demand for mobile work.

The platform offers a web client and native clients for iOS and Android. For communication, Circuit relies on the W3C standards WebSocket (transmission of messages) and WebRTC (transmission of streams). Users share a communication layer with each other, which is implemented in JavaScript. The presentation of content and the provision of platform-specific functions are performed separately for each individual platform. The transmitted messages are serialized using Google’s Protocol Buffers (protobuf).

As a runtime environment for the mutual communication layer, Android uses Google’s V8 JavaScript engine, which is implemented in C ++. The connection to Android’s native user interface is done using JNI. The application logic and user interface as well as the connection of other platform-specific functions, such as camera or SQLite databases, are carried out in Java and, if necessary, forwarded to the communication layer via JNI. The Android client was built using the Gradle Build System. For quality assurance, tools such as Jenkins CI and Gerrit are in use.

The project was realized with an international team. The team consisted of employees of the client, of the Institute for Applied Informatics (InfAI), and other service providers. The project language was English. Votes had to be organized accordingly via collaboration platforms.

Efficient internationalization in the project team played an important role as Unify planned a worldwide launch of Circuit. Thus, the surface of the platform in different languages, i.a. also with the right-to-left and another character set, can be viewed and supported.

Project website

Contact at InfAI

Martin Röbert
Martin Röbert

Phone: +49 341 229037 26