Skip to content

System Overview

Patrick Werner edited this page May 8, 2020 · 5 revisions

The OpenRoberta software consists of a server component, sub modules for robot plugins and the web frontend.

Server

The server side components are written in Java and located in the source tree under OpenRobertaServer/src.

Persistence is implemented using the hibernate orm and related classes are defined under OpenRobertaServer/src/main/java/de/fhg/iais/roberta/persistence. The entities are found in the bo (business objects) sub-directory and are pojos (plain old java objects). The dao (data access object) sub-directory contains classes that implement loading and storing entities. The database layout is defined in OpenRobertaServer/src/main/resources/create-tables.sql

The robot functionality is contained in plugins. The robots that are offered by a server are configured through the robot.whitelist property.

Robots use different mechanisms to communicate with the server (see Robot connectivity matrix). Those that use wifi will talk http-rest to the server. The server side handler are under OpenRobertaServer/src/main/java/de/fhg/iais/roberta/javaServer/restServices/robot

TODO:

  • main server components
  • list of server properties, see RobertaProperties
  • robot plugins

Web Frontend

The web frontend is written in JavaScript and located in the source tree under OpenRobertaServer/staticResources.

It talks to the server over https-rest. The rest handler are under OpenRobertaServer/src/main/java/de/fhg/iais/roberta/javaServer/restServices/all

TODO:

  • simulation
  • mvc style
Clone this wiki locally