“License management” module

General information

Licensing service (hereinafter - LS):

  • is designed to store the license file, read data from the file and transfer this data to Robin applications
  • is a separate component that is not bound to one specific product
  • is implemented on net
  • included only in Enterprise delivery with web-interface

There is a folder on the application server where the LS places the license file to read it.

The license file is added to the required folder manually.

LS can only read a license file with the .licx extension. If there are files with other extensions in the folder, LS ignores them.

If there are several files with the .licx extension in the folder, LS checks only the newest file (by its modification date).

LS starts searching for the license file and reading data from it at each restart.

After checking the license file, the LS saves the license data. When applications contact LS to retrieve license information, LS does not re-check the file, but immediately sends the previously read information to the applications. 

To view data on licensed products and manage the license file, the platform implements the “License management” module, through the user interface of which the data is accessed.

“License management” module

“License management” module is designed to display records of licenses for Robin platform products.



The module is displayed on the interface if the “License administrator” role is available to the user. If this role is not available, the “License management” module will not be displayed on the screen.

That said:

  • The display and operation of the “License management” module does not depend on the availability of any particular license. Even if there is no license file, the module will still be available for working with it
  • The table has a separate row for each product from the license file
  • When scrolling, only the table rows are scrolled, the items above the table and the table header are not moved.
  • The table is not displayed if:
    • license file not found, and the text is displayed instead of the table: “License file not found”
    • license file is corrupted, and the text is displayed instead of the table: “The license file is corrupted”
    • an error occurred while trying to read the license or transfer data, and the text is displayed instead of the table: “Failed to retrieve data from the license file. Unknown error”
  • When any error occurs (back or front end) that is not specified separately (when navigating to a section, opening windows, clicking buttons), the system displays a notification: “Unknown error. Please contact your administrator.” 

Description of columns of the “License management” module table

Element nameTemplate/exampleDescription
Product

Example:

Robin AI

Name of the product covered by the rights of the license granted

Possible values in the column:

  • Robin Studio
  • Robin Robot
  • Robin Orchestrator
  • Robin Process
Status

Example:

Expired

Product license status

Possible values in the column:

  • “Active” - if the product has not yet expired
  • “Expired” - if the validity period for the product has expired

Robin Robot may have several blocks in the license file with different expiration dates or additional parameters

The column for each block shows its status

End date

dd <short name of the month>. yyyy

Example:

30 Aug. 2024

The date until which the product license will run (inclusive)

Additional parameters

Template:

Refer to the “Matching license file and license table parameters” table

In addition to the license expiration date, some products have their own additional parameters

Robin Orchestrator and Robin Process have no other parameters besides the expiration date, so the Additional Parameters column for these products will be blank

More information about the value in the column in the table “Comparison of license file parameters and license table”.

You can use the “Columns” dropdown list to select which columns will be hidden or displayed, with the "Product" column always displayed.

Comparison of license file parameters and license table parameters

Product

Name of the parameter in the file

Name of column/parameter in the table

Value in file

Value in the table

Any product

Expiration

“End date” column

Date in the format “yyyy-MM-dd”

Example:

2023-08-30

Template:

dd <short name of month>. yyyy

Example:

30 Aug. 2023



Unlimited

Indefinite

Robin Studio

LowCode

The “Additional parameters” column,

Parameter “Low-code”

yes




There is no Robin Robot unit with this parameter in the license


Robin Robot

IsDemo


The “Additional parameters” column,

Parameter “Demo”

yes




There is no Robin Robot unit with this parameter in the license

There will be no row in the table with Robin Robot and the parameter “Demo”.

Combination of parameters:

  • SerialNumber
  • EnvironmentId
  • Username 


“Additional parameters” column,

Parameters:

  • “Host serial number”.
  • “Environment identifier”
  • “Account”

3 parameters contain data about the account on which the robots will be allowed to launch:

  • SerialNumber - host serial number
  • EnvironmentId - environment identifier
  • Username - account

Example of a record on file:

SerialNumber=Fgfdd321C228-009312
EnvironmentId=09q33442399edrftgderfKL
Username=LAPTOP-5К400dd\hp

Template:

Host serial number

<value from license>

Environment identifier

<value from license>

Account

<value from license>

Example (see the corresponding example for the file):



There is no Robin Robot unit with these parameters in the license

There will be no row in the table with Robin Robot and the parameters “Host serial number”, “Environment identifier” and “Account”

Concurrent

“Additional parameters” column \ Parameter “Competitive licenses”



integer >=1

Example file entry:

Concurrent=3

Template:

Competitive licenses

<number from license>

Example:



There is no Robin Robot unit with this parameter in the license

There will be no row in the table with Robin Robot and the “Competitive licenses” parameter.


When activated on the License administrator side, the following operations are performed on the LS side:

License verification on LS reboot

  1. The administrator launches or reboots the LS.

       2. After a successful launch, LS starts the workflow of checking the license file. It searches the folder for a file with the .licx extension:

    1. If 1 .licx file is found, the next step is performed;
    2. if several .licx files are found, LS selects the newest one by file modification date and performs the next step;
    3. if no .licx file is found, step 5 is performed;
    4. if an unknown error occurs during the license search, step No.5 is executed.

       3. LS checks whether the contents of the license file have been changed (checks the signature):

    1. If not, the next step is performed;
    2. If changed, LS saves the information about it. This completes the UC;
    3. If an unknown error occurs during license verification, step No.5 is performed.

      4. LS reads the license data.

      5. LS saves the result of the license file check. If the LS has already saved some data, it replaces it with new data.

Checking the license when the contents of the folder are changed

  1. The license administrator modifies the contents of the license folder:
    1. deletes one of the files;
    2. moves a file from a folder to another directory;
    3. adds a new file to a folder;
    4. modifies one of the files;
    5. replaces a file in a folder with another file.

      2. LS starts the workflow to check the license file. Looks for a file with the .licx extension in the folder:

    1. if 1 .licx file is found, the next step is executed;
    2. if several .licx files are found, LS selects the newest one by file modification date and proceeds to the next step;
    3. if no .licx file is found, step 5 is executed;
    4. if an unknown error occurred during the license search, step No.5 is executed. n 

      3. LS checks whether the contents of the license file have been changed (checks the signature):

    1. If not, the next step is performed;
      If changed, step No.5 is executed;
      If an unknown error occurred during license verification, step No.5 is executed.

     4. LS reads the license data.

     5. LS saves the result of the license file check. If the LS has already saved some data, it replaces it with new data.

Transfer license data to the application

The application has sent a request to LS for license data for one of the applications. 

     1. The LS determines from the request which product the data needs to be transferred about.

     2. The LS searches for the desired data among the information it saved the last time it checked the license file.

     3. The LS sends a response to the application. Possible response options:

    1. license file not found
    2. license file is corrupted
    3. the product is not licensed (there was no block with the required product in the file)
    4. if there is data about the requested product, LS sends the license parameters of this product

     4. ROBIN Robot may have several licenses with different parameters in the file - LS will send data about all ROBIN Robot licenses at once.


View the LS interface

   1. The user is authorized in the system Sign in to the system

   2. If the “License administrator” role is not available to the user, the “License management” module is not displayed. 

   3. If the “License administrator” role is available to the User, then the User can work with the “License management” module. then he/she can work with the “License management” module. 

   4. At the same time the System displays the module interface:

  • if no license file was found, only text is displayed on the page:
    "License file not found"
  • if the license content has been changed (the license has not passed signature verification), only the text is displayed on the page:
    "The license file is corrupted"
  • if there is an unknown error due to which the licensing service cannot return the license data, only text is displayed on the page:
    "Failed to retrieve data from the license file. Unknown error"
  • if there are no errors with the license file, the table with the list of licenses is displayed on the page

   5. The user views a list of product licenses.

  • Нет меток