Release: DRMLib v2.0

Release: DRMLib v2.0

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:

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 mechanismNo retry on API functions: had to be be implemented by SW developer.Retry is enabled by default on API functionsUser friendly: simplify user’s code and enhance robustness
DRM parametrization

Basic level of customization on DRM parametersGeneric access to nearly all parameters of the DRM LibraryOffer better control and flexibility on the DRM usage
DRM Frequency DetectionNo detection implemented at allDRM frequency is measured and compared to the value in the configuration.json file. An error code and message is returned to the callerWrong frequency could cause service interruptions
Configuration file refactoringRemove redundancy

Allow modification of default parameter values
Simplify usage and increase level of customization
Installation package availableNo package availablePackages available for:

Centos7, RedHat7, Fedora

Ubuntu, Debian
Simplify installation process
Better coverage

<80%

>93%Better quality

Remove unifdev and boost dependenciesUnifdef and boost requiredNot required anymore


Improve maintainability
API v1API v2Why ?
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 )
set( parameter_key,
parameter_value )
Allow to access DRM parameters generically
Evolutionary: key is an enum
API v1API 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 )
By Jean-Michel Frouin on 9 April 2019