BeeeOn Server
v2018.11.1
Platform to interconnect the IoT world
|
BeeeOn Server is a software platform intended for remote control of BeeeOn Gateway instances. It works as a collector of sensor data and a center for driving the elements with controllable features (turning light on/of, etc.).
The BeeeOn Server is written in C++ and is divided into several parts, especially:
Required prerequisites for development:
Optional prerequisites for development:
Required prerequisites for deployment:
Optional prerequisites for deployment:
The BeeeOn Gateway is built by the CMake build system:
During development and for testing, the BeeeOn Server can be started as:
This starts a private instance of the PostgreSQL server and then it starts the server that sets the database up.
There are multiple startup configurations according to the purpose of testing or debugging. Please note, that in this mode the frontend and GWS are disconnected to enable running of automatic frontend tests (during tests, there is no live gateway and thus the communication with GWS is emulated). This can be easily changed by giving -Dgateway-rpc.impl=async
on command line or by editing conf/testing-startup.ini
.
The executable beeeon-server
reads a startup configuration file and configuration files from conf/config.d
. Then, the definition of the all instance (of class LoopRunner) is searched, created and executed. All main application threads start via this all instance.
The directory t/
contains a set of integration tests. Tests are divided by the public server APIs. Thus, the XML-UI, REST-UI and GWS are tested independently on each other. All tests are written in Python. See t/README
for details.