By JB Leclere
on 09 Apr 2019 11:22 AM

Accelize makes available today a major software update which provides some enhancements and improvements including support for automatic retry, authentication and robustness . This 2.0.0 release also fixes bugs affecting previous versions.

 

The full list of enhancements and new features are:

Engine Enhancement

 

Features/
Characteristics

API v1

API v2

Why?

Authentication

Request new token on every license request even if the current token is still valid.

Request new token only when current one has expired (every 200 min)

Reduce server accesses and license request latency

License renewal

Next request time was computed based on indirect information.

DRM Controller now provides new status bits that simplifies the computation of next request time and improves the robustness of the license continuity.

Simplify code and increase robustness

Retry mechanism

No retry on API functions: had to be be implemented by SW developer.

Retry is enabled by default on API functions

User friendly: simplify user’s code and enhance robustness

DRM parametrization

Basic level of customization on DRM parameters

Generic access to nearly all parameters of the DRM Library

Offer better control and flexibility on the DRM usage

DRM Frequency Detection

No detection implemented at all

DRM frequency is measured and compared to the value in the configuration.json file. An error code and message is returned to the caller

Wrong frequency could cause service interruptions


Configuration file refactoring

 
  • Remove redundancy

  • Allow modification of default parameter values


Simplify usage and increase level of customization

Installation package available

No package available

Packages available for:

  • Centos7, RedHat7, Fedora

  • Ubuntu, Debian
     

Simplify installation process

Better coverage

<80%

>93%

Better quality

Remove unifdev and boost dependencies

Unifdef and boost required

Not required anymore

Improve maintainability

 

C/C++ API Enhancement

 

API v1

API v2

Why?

  • autostart_session()

  • start_session()

  • resume_session()

activate(
   resume_session=False)

  • Easier to use: 1 function replaces 3

  • Default mode is “start”

  • stop_session()

  • pause_session()

deactivate(
   pause_session=False)

  • Easier to use: 1 function replaces 2

  • Default mode is “stop”

 

get( parameter_key )

  • Allow to access DRM parameters generically

  • Evolutionary: key is an enum

 

set( parameter_key,
    parameter_value )

Python API available

 

API v1

API v2

Not available

From accelize_drm import DrmManager with DrmManager(
   conf_json.path,
   Cred_json.path,
   driver.read_register_callback,
   driver.write_register_callback,
   async_cb.callback
   ) as drm_manager:

Not available

drm_manager.activate(resume_session=False)

Not available

drm_manager.deactivate(pause_session=False)

Not available

drm_manager.get( ‘parameter_key’ )

Not available

drm_manager.set(parameter_key=parameter_value )

 

Github

 

Tags: DRMlib, SDK