MAGES Cloud Services¶
In this section we are going to provide a brief overview of the cloud services –sample projects that are included in the MAGES SDK version 5.0 moving forward.
Further, we will be discussing the overall architecture, the connection and exchange of information between the services, and how we can efficiently enable you to securely authenticate and manage your users’ licenses.
Subsequently, for each service we will provide a separate section that covers at least the following points:
Configuration & runtime behavior
Customization
Build & deploy!
Note
ORamaVR Cloud Services are built to work on Microsoft Azure.
Migration to other Cloud providers is possible but requires extra work and customization on your behalf.
Download MAGES Cloud Services
You can download the cloud services from the MAGES Portal at the Unity3D MAGES SDK tab.

Downloading MAGES Cloud Services requires an active premium SDK license.¶
Architectural Overview
Before going into further detail, let us first outline a deployment viewpoint of a VR application built with the MAGES SDK alongside with provided ORamaVR web services to get a clear picture.
The following figure illustrates the overall architecture of the MAGES Cloud Services:

MAGES Cloud Services Architectural Overview¶
Service |
User |
Supervisor |
Administrator |
---|---|---|---|
Login Service |
Central identity management. Responsible for user authentication and authorization. |
REST API, responsible for user management within an organization. |
REST API, responsible for user management, authentication, and authorization. |
Analytics Service |
RESTful API. Responsible for processing, storing, and delivery of streaming data regarding user analytics. |
REST API, responsible for granting access to supervisors. |
Same As Supervisor |
Portal Service |
Single Page Application (SPA) accessible through the browser. Responsible for displaying user analytics. |
Responsible for user management within a particular organization. Track user progress. |
Responsible for displaying user and product/license management. |
Note
In General
Communication between the services and VR modules takes place in an asynchronous HTTPS manner.
No information is exchanged in any other way. The same principle holds for the storage systems.
For instance, the Analytics API often requests user information for functioning properly, but it never directly gains access to the Identity database to retrieve this information.
By doing so, you might be wondering that we have added an unnecessary communication overhead but in fact, it is proven to be beneficial to the overall architecture.
In detail, we have reduced the complexity of our system by providing single-points of responsibility amongst our services or in other words, separation of concerns.
The following sections provide further details about installing and running the services on a localhost environment and how to publish them on an online Web App (Azure)