DRM-X 5.0 Integration for Tutor LMS
DRM-X 5.0 Tutor LMS plugin for secure video DRM, encrypted online courses, HTML5 video protection, watermarking, and enrollment-based licensing.
by Haihaisoft · github.com/haihaisoft/drm-x5-tutor-lms-plugin · website
Install
No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:
wp plugin install https://github.com/haihaisoft/drm-x5-tutor-lms-plugin/archive/refs/heads/main.zipReadme
DRM-X 5.0 Tutor LMS Plugin - WordPress Video DRM and Course Protection
DRM-X 5.0 Integration for Tutor LMS connects WordPress and active Tutor LMS enrollment with DRM-X digital rights management. Authorized students can obtain licenses and play encrypted course videos through the ZJGet secure browser; users without active enrollment are denied.
This WordPress LMS DRM plugin is designed for online academies, paid courses, memberships, and corporate training that need video encryption, enrollment-based licensing, dynamic watermarking, license revocation, and stronger anti-piracy protection.
Why protect Tutor LMS videos with DRM-X?
Tutor LMS controls access to course pages, while DRM-X 5.0 encrypts the media and requires a valid license before playback. This helps protect copied video URLs and downloaded course files beyond the WordPress page. Depending on DRM-X account and Rights settings, content owners can use watermarks, device controls, license revocation, virtual-machine restrictions, and screen-recording protection.
Learn more about DRM-X 5.0 digital content protection.
Features
- Requires WordPress sign-in before DRM-X license delivery.
- Verifies active Tutor LMS enrollment for the assigned course.
- Supports multiple WordPress course post IDs such as
123-124-208. - Creates the corresponding DRM-X user automatically.
- Blocks revoked or locked DRM-X users.
- Supports DRM-X International (
5.drm-x.com) and China (5.drm-x.cn). - Uses the License Profile RightsID posted by ZJGet without changing DRM-X Rights.
- Supports a fixed RightsID and
UpdateRightWithDisableVirtualMachine. - Adds
[zjget-player]URL[/zjget-player]for protected video embedding. - Disables the player in WordPress editing and preview contexts.
- Includes English and Simplified Chinese interface text.
Requirements
- WordPress 5.8 or later
- PHP 7.4 or later with SOAP enabled
- Tutor LMS installed and activated
- HTTPS enabled on WordPress
- A DRM-X 5.0 account, License Profile, Rights, and user group
- ZJGet secure browser for encrypted content
Download and documentation
Installation
- Install and activate Tutor LMS.
- Open Plugins > Add New Plugin > Upload Plugin.
- Upload
drmx5-tutor-lms-1.0.0.zipand activate it. - Open Settings > DRM-X 5.0.
Manual plugin directory:
wp-content/plugins/drmx5-tutor-lms/
Plugin settings
| Setting | Description |
|---|---|
AdminEmail |
DRM-X 5.0 administrator email address. |
WebServiceAuthStr |
Web Service Authorization String configured in DRM-X. Keep it secret. |
GroupID |
DRM-X user group used for user creation and licensing. |
| Service area | International uses 5.drm-x.com; China uses 5.drm-x.cn. |
| RightsID mode | Read License Profile RightsID from POST, or update and use a fixed RightsID. |
| Fixed RightsID | Required only in fixed mode. |
RightsID modes
Read RightsID from ZJGet POST data: ZJGet posts the RightsID selected through the DRM-X License Profile. The plugin uses it to obtain the license and does not update DRM-X Rights.
Fixed RightsID and automatic update: the plugin calls UpdateRightWithDisableVirtualMachine before licensing. Tutor LMS enrollment time is used as the start date. Tutor LMS course duration represents content length rather than access expiration, so the expiration is set to ten years after the request. ExpirationAfterFirstUse is -1.
DRM-X License Profile setup
In DRM-X 5.0 Account Settings > Website Integration Settings, enter the same WebServiceAuthStr and use:
https://your-wordpress-domain.example/wp-content/plugins/drmx5-tutor-lms/licstore5.php
The endpoint filename must remain licstore5.php. Use the exact HTTPS hostname used for WordPress sign-in.
Course ID
Edit the Tutor LMS course. If its WordPress edit URL contains:
/wp-admin/post.php?post=123&action=edit
enter 123 in the License Profile Your Product ID field. Use the numeric Tutor LMS course post ID, not a lesson ID, slug, product ID, or page URL.
Multiple courses:
123-124-208
The plugin checks from left to right and uses the first course with active Tutor LMS enrollment. Access to one listed course does not grant access to another course.
Embed a protected video
Add a WordPress Shortcode block to Tutor LMS course or lesson content:
[zjget-player]https://cdn.example.com/course/protected-video.mp4[/zjget-player]
- Use a complete URL beginning with
http://orhttps://. - Put only the raw URL inside the shortcode.
- Use one ZJGet player on the same page.
- Player files load from
www.zjget.com. - Editing and preview contexts show a placeholder rather than the player overlay.
License workflow
- Store the request and require WordPress sign-in.
- Read
YourProductIDand select the first course with active Tutor LMS enrollment. - Create the corresponding DRM-X user if necessary.
- Call
CheckUserIsRevokedandGetUserDetailsfor existing DRM-X users. - Apply the configured RightsID mode.
- Request the DRM-X license and return it to ZJGet.
Downloaded encrypted files must pass the same login and enrollment check. The plugin verifies course-level access rather than restrictions applied only to a lesson or page.
Troubleshooting
| Problem | Check |
|---|---|
| Learner is asked to sign in again | Use the same HTTPS domain for WordPress and licstore5.php. |
| Browser reports an insecure form | Use HTTPS for WordPress and the integration endpoint. |
| Learner is unauthorized | Confirm the numeric Tutor LMS course post ID and active enrollment. |
| Shortcode is displayed as text | Activate Tutor LMS and this plugin; use a Shortcode block. |
| Player reports an invalid URL | Put one complete HTTP or HTTPS URL inside the shortcode. |
| DRM-X cannot be reached | Enable PHP SOAP and verify credentials and service area. |
Privacy and security
During DRM-X user creation or license delivery, the plugin may send the WordPress username, email, display name, IP address, and DRM client/device request data to the selected DRM-X service. Review applicable privacy requirements, use HTTPS, and never expose WebServiceAuthStr.
中文简介
DRM-X 5.0 Tutor LMS 集成插件用于连接 WordPress、Tutor LMS、DRM-X 5.0 和 ZJGet 播放器。用户必须登录 WordPress,并且 Tutor LMS 返回有效选课状态,才能获取加密视频许可证。
主要功能:
- 验证 WordPress 登录和 Tutor LMS 选课状态。
- 支持
123-124-208格式的多课程 ID。 - DRM-X 用户不存在时自动创建,被吊销或锁定时拒绝许可证。
- 支持中国版、国际版和两种 RightsID 模式。
- 使用
[zjget-player]URL[/zjget-player]嵌入加密视频。
固定 RightsID 模式使用 Tutor LMS 选课时间作为开始日期。课程时长是内容时长而不是访问截止日期,因此截止日期设置为申请许可证之日起十年。
安装后进入 设置 > DRM-X 5.0,填写 AdminEmail、WebServiceAuthStr、GroupID、服务区域和 RightsID 模式。在 DRM-X 5.0 许可证模板的 Your Product ID 中填写 Tutor LMS 课程文章 ID。
Support
Developed and maintained by Haihaisoft.