Building Blocks of SIC

This section will guide you through the building blocks of the Social Interaction Cloud framework.

Components: Sensors, Actuators, and Services

You can picture creating a SIC application as a process of connecting components together, or building with Legos. Components are either Sensors, Actuators, or Services.

Component Breakdown

Sensors are the input devices that collect data from the physical environment.

Component Breakdown

Services are components that transform data from one format to another in a desirable way.

Component Breakdown

Actuators are the output devices that operate on the physical environment.

Component Breakdown

Breakdown of Component types in SIC.


Pictured below are some example setups of SIC Components:

Face Detection Component Diagram

Component diagram for a Dialogflow application using a Nao robot.

Multi-Actuator Component Diagram

Component diagram for a Face Detection application using a Nao robot. It is possible to use the output of a Component as input to multiple other Components.

Sentiment Analysis Component Diagram

Component diagram for a Sentiment Analysis application. Note that some Services may require multiple input types.

Supporting Elements: ComponentManager, Connector, and Redis

In reality, SIC is a lot more than just Components. There are other elements that are used to support Components, namely:

ComponentManager

ComponentManagers are responsible for starting and stopping Components on hosts/devices.

Connector

Connectors behave as remote controls and are the actual interface the user uses to interact with the Components.

Device

Devices are the physical devices where the Components run.

Redis

Redis is the message broker that is used to communicate between the Components.

Application

The SIC Application is the script the user writes that connects the Components together.

Example Application Diagrams

Redis

High-level diagram for a simple Dialogflow application.