Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

There is a number of integration options are several options for how to integrate the Cloud VMS depending on the development time.

#1. White-label

...

Web and Mobile with VSaaS template

This is the fastest integration method and it could be as simple as changing the logo and colors in the VXG web clientWeb front-end and Mobile apps. All you need is to send us your logo, colors, and other changes that you want us to make on your copy of the web front - end and we’ll create it for you within hours.VXG can host your version of the web client or you can host it on your web server. VXG will send you a complete Web client source code - a package with HTML, JS, and CSS files.

...

You can just copy it on to your web server and you’ll have your the Web client up and running on your server, under your domain name, and with full source code that you can change according to your product needs.

...

VXG Cloud VMS is detached from authentication and authorization services. VXG web and mobile clients use Google Firebase for authentication and a simple PHP backend code for the authorization of users - assigning permissions to watch cameras. The easiest way to change the authentication service will be to just change the Google Firebase account to the account managed by a customer. Another approach will be to completely You can keep using Firebase (under your own Firebase account) or replace the authentication mechanism. VXG will provide the full source code of the authorization backend. It can be hosted on any web server with PHP support.

#2. Integration with existing front-end

...

It’s very easy to integrate VXG Cloud VMS with any existing UI. For example, you can just publish an iframe on your website by copying and pasting it from the integrator’s dashboard:

...

#3. Integration with existing front and back-end

...

A back-end usually manages authentication and permissions to watch and operate different cameras keeping all the relevant information in the back-end database. VXG Cloud VMS is completely detached from authentication, user, and permission management.

VXG Cloud VMS only knows and keeps the information about cameras, without knowing anything about users. VXG Cloud VMS has an “access token” associated with each camera, which is completely anonymous.

A back-end maintains a list of users and a list of “access tokens” in its database and defines the relationship between users and “access tokens”.

An “access token” can be created using VXG Admin API. For example, when a new camera is added to the system, a function POST /channels/ will create a new “access token”.

The back-end will then return a list of “access tokens” to the front-end and the front-end will use the Web or Mobile SDKs for playing video. Or, alternatively, the front-end will use VXG REST API to retrieve all the information associated with the channels, including live and recorded video URLs and play video using other tools.

VXG has published Often our customers already have front and back-ends and they need to add IP cameras (Cloud VMS) to the existing service.

Adding Cloud VMS usually means implementation of the following 3 steps:

  1. Adding VXG Web SDK to the front-end. The Web SDK is an HTML player for playing live and recorded video from VXG Cloud VMS. It includes all common UI controls that can be configured.

  2. Adding VXG non-admin REST API calls to the front-end for calling any functions of the VXG Cloud VMS, for example retrieving a list of images for motion events.

  3. Adding VXG admin REST API calls to the back-end. These calls usually go through a secure server-to-server channel and are used to create or delete channels (add or remove cameras). Once a camera is added, its access token is stored in the back-end database.

...

Here is an example of the sequence of operations.

  1. The authenticated front-end instructs the back-end to add and a new camera.

  2. The back-end calls the Admin REST API function POST /channels/ that returns a channel access token that is stored in the back-ends database.

  3. The front-end requests the back-end for available channels and receives a list of channel access tokens.

  4. The front-end calls Non-admin REST API functions, for example, GET /live/image to retrieve the latest snapshot.

  5. The front-end calls the VXG Web SDK function play() to playback live or recorded video.

...

 

The Admin REST API calls should be authorized with a Cloud Key that can be found on the Integrator’s dashboard. We strongly recommend using Admin API only through a server-to-server secure channel.

The Non-admin REST API calls should be authorized with the Channel Access Token. The Channel Access Token is generated once the back-end creates a new channel (adds a new camera) and stored in the back-end’s database. The Channel Access Token can be invalidated and thus it’s safe to call Non-admin REST API from the front-end.

The Web SDK also uses the Channel Access Token to play video.

...

You can find a number of HTML and Python samples showing how to call use VXG REST API functions on GitHub.More information about integration with an existing front and back-end can be found hereon the GutHub.