Skip to content

1. Home

littleredshack edited this page Feb 23, 2015 · 12 revisions

SocketBI

SocketBI is a data access framework designed for use in a Business Intelligence (Analytics and Reporting) environment. It uses socket communication between client and server.

These WIKI pages are intended to provide an overview of the functional flow on the server and the client to aid when reading through the code itself.

In general:

  • Server controls access to data

  • Client controls presentation

Server

The server simply listens for requests on a (TODO: secure) web socket. These requests can be a connection, an authentication message or a data request.

The solution is designed around the server socket API which has been implemented using socket.io running on nodejs.

TODO: Server can send alerts and updates to client asynchronously if the client has registered for them.

Client

Data is fetched by making a call to the socketbi.js API. Server receives the auth credentials and parameters and then gets the data and returns it on the socket.

A socketbi.js client side library is provided. This client side library is intended to make it easier to communicate with the server i.e. connect to the server, authenticate, get a list of datasources and request data.

A client UI is implemented as part of this solution using the client side library. However, it is possible to use the API and the client side library to build a custom client UI.

Plugins

TODO: A customer needs to be able to create datasource and visualisation plugins which can be dropped into the client and server.

Clone this wiki locally