Antano » Antano Server API » Welcome to Antano’s documentation!
Antano® will be released very soon. This is an announcement text

Contents

Search

Welcome to Antano’s documentation!

Antano Server

The Antoano - Server combines TCP, UDP, Websocket and REST connectivitiy to all Antano - Clients. It is ultra reliable and performant as it selects the best way for connection for each use-case. Further more it is easily scaleable and prepared to run in a cluster.

Here you can find the hole Docu_Tree Complete DocuTree

Note

All docs for internal development are located in our floating Markdown Server. So if you want to get more information on how to use Antano-Server and Clients just go here: Antano-Docs

Getting Started

To start the Server just login to the mashine like in our floating docs described above.

cd /var/www/com.fpsvisionary.antano_server/Antano
python3 start_antano.py -h
#This will give you a short overview
usage: start_antano.py [-h] [--id ID] [--address ADDRESS] [-v] [-l LOG_LEVEL]
                     [-d]

optional arguments:
-h, --help            show this help message and exit
--id ID, -i ID        ServerID for static debug-vals enter '-1'
--address ADDRESS, -a ADDRESS
                        string of host/id
-v, --version         show program version
-l LOG_LEVEL, --log_level LOG_LEVEL
                        loglevel of logging
-d, --hide_logo       Hiding the logo

Antano Server structure

This is our Server and Module-Structure. Simply click on each Module or Class in order to get to the docs.

Inheritance diagram of server.antano_server, server.db_manager, server.server_settings, services.tcp_service, services.udp_service, services.web_socket_service, services.rest_service, services.push_service, services.unix_service, services.handler.request_handler, test_clients.tcp_client, helper.colored_formatter, entities.client, entities.message, services.signaling.unity_signaling, services.signaling.react_signaling, services.signaling.apprtc_signaling, test_clients.rest_client, test_clients.tcp_client, test_clients.udp_client, test_clients.websocket_client, tests.basic_test, tests.multi_rest_json_test, tests.multi_rest_test, tests.multi_tcp_json_test, tests.multi_tcp_test, tests.multi_udp_json_test, tests.multi_udp_test, tests.multi_websocket_json_test, tests.multi_websocket_test

Server Class

Inheritance diagram of server.antano_server

server Package

Init server basic classes

Classes

Server(_server_param) The Antoano - Server combines TCP, UDP, Websocket and REST connectivitiy to all Antano - Clients.It is ultra reliable and performant as it selects the best way for connection for each use-case.
DBManager() DBManager resolves all sql and database request and holds the _con and _cur connection
ServerSettings() ServerSettings this class is reliable for handling and manipulation of attached server settings
AntanoServer(_server_param) The Antoano - Server combines TCP, UDP, Websocket and REST connectivitiy to all Antano - Clients.It is ultra reliable and performant as it selects the best way for connection for each use-case.
HttpConfigHelper Static Helper class for generating nginx config file

Class Inheritance Diagram

Inheritance diagram of server.server.Server, server.db_manager.DBManager, server.server_settings.ServerSettings, server.antano_server.AntanoServer, server.http_config_helper.HttpConfigHelper

services Package

– Init – services

Classes

TCPService(_server, _params[, _type, _family]) TCP Service - module cares about all tcp connections
UDPService(_server, _params[, _type, _family]) UDPService waits for incomming socket data and processes them
SocketService(_server, _params[, _type, _family]) The Socket services is a multi-threaded Socket running on specific ports.
PushService(_server, _service_params) PushService inits all PushService for direct communication with moblie clients
UnixService(_server, _params[, _type, _family]) UnixService – this service is a special way how we will communicate with a particular process Since we are not able to get complex data from one to another process it is necessarily to communicate between them via UnixSockets
RestService(_server, _params[, _type, _family]) RestService - baseclass for getting particular rest commands for communication over REST API
Service(_server, _service_params) services Each service is a representation of for example UDP or TCP socket.
ServiceState Service States declares a specific state of service
ServiceType ServiceTypes are all assoc serrives in our System They need to match with the one in the db
WebSocketService(_server, _params[, _type, …]) WebSocketService inits a websocket service with a specific endpoint and port
AntanoTCPServer(*args, **kwargs) A sub-classed tornado tcp server
AntanoUNIXServer(*args, **kwargs) A sub-classed tornado tcp server
WebRTCService(_server, _params[, _type, _family]) WebRtcService inits a websocket service with a specific endpoint and port and specific settings for handling web-rtc calls

Class Inheritance Diagram

Inheritance diagram of services.tcp_service.TCPService, services.udp_service.UDPService, services.socket_service.SocketService, services.push_service.PushService, services.unix_service.UnixService, services.rest_service.RestService, services.service.Service, services.service.ServiceState, services.service.ServiceType, services.web_socket_service.WebSocketService, services.tcp_service.AntanoTCPServer, services.unix_service.AntanoUNIXServer, services.web_rtc_service.WebRTCService

services.handler Package

Basic init for RequestHandler

Classes

RequestHandler(application, request, **kwargs) RequestHandler for Websocket and Rest Inherits from Tornado RequestHandler
WebSocketHandler(application, request, **kwargs) WebSockethanlder base class
WebRTCHandler(application, request, **kwargs) WebRTCHandler base class handles all different WebRTC connection from various clients.
WebRtcRoomHandler(application, request, **kwargs) Special handler for creating rooms for apprtc clients

Class Inheritance Diagram

Inheritance diagram of services.handler.request_handler.RequestHandler, services.handler.request_handler.WebSocketHandler, services.handler.web_rtc_handler.WebRTCHandler, services.handler.web_rtc_room_handler.WebRtcRoomHandler

services.signaling Package

– Init – signaling service

Classes

Signaling(_websocket, _service) Basic signaling class for handling web-rtc signaling
UnitySignaling(_websocket, _service) WebRTCHandler base class
ReactSignaling(_websocket, _service) React Signaling class this handles all communication for our React WebRTC client
AppRTCSignaling(_websocket, _service) React Signaling class this handles all communication for our React WebRTC client

Class Inheritance Diagram

Inheritance diagram of services.signaling.base_signaling.Signaling, services.signaling.unity_signaling.UnitySignaling, services.signaling.react_signaling.ReactSignaling, services.signaling.apprtc_signaling.AppRTCSignaling

entities Package

__init from entities

Classes

MessageFormat Format declared as Enum Style class for better coding
Message(_params, _service, _address) Message class will pack and unpack all messages for given MessageFormat This can be MsgPack as well as JSON and later on also XML
Entity(_params, _service) Basic class for entity with basic functions for all entities such as Client, Message etc
Client(_params, _service, _address, _sock_stream) Handles and inits all client assacioated activities

Class Inheritance Diagram

Inheritance diagram of entities.message.MessageFormat, entities.message.Message, entities.entity.Entity, entities.client.Client

tests Package

– Init – test_clients

Classes

AntanoTest(*args, **kwargs) This is a test for basic functionality for the Server class It will test relevant parameter and status.
TestAntanoServerBasics(*args, **kwargs) This is a test for basic functionality for the Server class It will test relevant parameter and status.
TestMultiRESTJSON(*args, **kwargs) Multitesting of Client vs Server.
TestMultiREST(*args, **kwargs) Multitesting of Client vs Server.
TestMultiTCPJSON(*args, **kwargs) Multitesting of Client vs Server.
TestMultiUDPJSON(*args, **kwargs) Multitesting of Client vs Server.
TestMultiUDP(*args, **kwargs) Multitesting of Client vs Server.
TestMultiWebSocketJSON(*args, **kwargs) Multitesting of Client vs Server.
TestMultiWebSocket(*args, **kwargs) Multitesting of Client vs Server.

Class Inheritance Diagram

Inheritance diagram of tests.antano_test.AntanoTest, tests.basic_test.TestAntanoServerBasics, tests.multi_rest_json_test.TestMultiRESTJSON, tests.multi_rest_test.TestMultiREST, tests.multi_tcp_json_test.TestMultiTCPJSON, tests.multi_udp_json_test.TestMultiUDPJSON, tests.multi_udp_test.TestMultiUDP, tests.multi_websocket_json_test.TestMultiWebSocketJSON, tests.multi_websocket_test.TestMultiWebSocket

Indices and tables

Last update: 10/08/2020 3:43 a.m. (CET)