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 client. For example:

...

Web 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 will send you a complete Web client source code that is 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.

...

See more information on how to deploy the web client package here.

#3. White-label web client and mobile apps

The same as above plus mobile Mobile applications will be also re-branded. This will require publishing new mobile applications on Google Play and Apple App Store under the customer’s Customer’s name. VXG will guide you through the this process and assist with publishing.

...

.

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. You can keep using Firebase (under your own Firebase account) or replace the authentication mechanism.

#2. Integration with existing front-end

...

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

...

The iframe contains a reference to the channel’s “access token”.

...

A better approach will be to use the VXG Web SDK https://github.com/VideoExpertsGroup/VXG.WebPlayer.SDK and integrate the web player with your existing UI. The Web SDK comes with a number of samples that show how to play live or recorded videos from selected cameras.

...

The Web SDK can be used for integration with an existing UI or for building a new UI by just copying the codes from VXG samples into your existing code.

For integration with mobile applications, VXG provides Mobile SDKs SDK for Android https://github.com/VideoExpertsGroup/VXG.Media.SDK.Android and for iOS https://github.com/VideoExpertsGroup/VXG.Media.SDK.iOS. and Mobile SDK for iOS. In all the cases, the SDKs will need to know the channel channel’s “access token” to access live and recorded video videos and other resources and information associated with the channel.

...

Integration with your authentication & authorization services

...

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. 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 replace the authentication mechanism. VXG will provide the full source code of the authorization backend. It can be hosted on any web server that supports PHP.

Integration with existing front and back-end

...

#3. Integration with existing front and back-end

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

...

  1. to add and a new camera.

  2. The back-end calls the Admin REST API function POST /channels/

...

  1. that returns a channel access token that is stored in the back-ends database.

  2. The front-end requests the back-end

...

  1. for available channels and receives a list of

...

  1. channel access tokens.

  2. The front-end

...

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

  2. The front-end

...

  1. calls the VXG Web

...

  1. 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 use VXG REST API on the GutHub.