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 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 |
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 ) set( parameter_key, parameter_value ) | Allow to access DRM parameters generically Evolutionary: key is an enum |
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 ) |