# Moodle 受保护视频活动

创建 Moodle 视频活动，将一个已发布的 Content ID 与课程报名及活动访问规则绑定。

播放授权的流程

您的后端决定谁可以观看。DRM-X 提供播放授权，播放器使用该授权请求 DRM 许可证。

- 01**观看用户**

登录您的服务并请求播放视频。

- 02**您的后端**

检查用户的购买记录、订阅状态或其他观看权限。

- 03**DRM-X**

应用所选播放规则，返回播放配置和授权信息。

- 04**播放器**

使用返回的授权信息，请求播放所需的 DRM 许可证。

您的后端判断用户是否有权观看，DRM-X 执行签名授权中的播放策略。加密媒体与 DRM 许可证通过各自的服务传送给播放器。

## 安装活动模块[#](#install)



在 Moodle 的“网站管理 → 插件 → 安装插件”中安装 mod_drmx。插件目录为 mod/drmx。完成 Moodle 数据库升级后，打开 DRM-X 受保护视频活动设置。



填写 Site ID、Site Key、Access Key 和默认许可证策略。在托管部署中，可通过 Moodle 的 forced_plugin_settings 从受保护的主机配置注入这些设置。



[下载 Moodle 活动模块](https://drm-x6-cdn.1aicloud.com/drmx-moodle-activity-1.3.0-preview.2-731c835e4918.zip)





## 创建受保护视频活动[#](#activity)



在课程中开启编辑并添加 DRM-X 受保护视频。在 DRM-X 6.0 Universal Player 区域粘贴已发布内容的 Content ID，选择 VOD 或 Live，并选择保护策略。问号帮助会说明各字段的含义；策略名称同时保留 API 标识符。保存并显示活动后，使用学员账号测试。访问限制和完成条件仍在 Moodle 活动设置中配置。



每次播放请求都会检查登录账号、课程报名状态、mod/drmx:view 权限，以及该活动对当前用户是否可见。请求中的 Content ID 必须与活动保存的值一致。访客、暂停报名的用户以及无权访问该活动的用户将被拒绝。



完成跟踪记录的是用户已查看活动，并不能证明用户观看了整段视频。





## 使用过滤器嵌入已有活动[#](#filter)



先安装 mod_drmx，再安装 filter_drmx，并在“管理过滤器”中启用。请使用活动 URL 中的课程模块 ID，而非内部视频记录 ID。



```
{drmx activityid="123"}
```



旧版 contentid 标记只有在当前课程中恰好存在一个 Content ID 和内容类型均匹配的 DRM-X 活动时才会生效。请将旧过滤器中的凭据复制到活动设置中；旧过滤器凭据字段不再使用。



[下载可选的 Moodle 过滤器](https://drm-x6-cdn.1aicloud.com/drmx-moodle-filter-1.3.0-preview.1-8c90b1cbfeae.zip)





## 备份、恢复与测试[#](#restore)



活动模块包含 Moodle 备份与恢复处理程序。恢复活动时会清空 Content ID，管理员需要确认目标内容映射后才能启用播放。服务器凭据不应通过课程备份恢复。



已在本地安装 Moodle 5.2.2+，并验证活动绑定、篡改 Content ID、隐藏活动和暂停报名等场景。上线前还需验证您实际使用的角色覆盖规则、分组与日期限制、备份恢复以及真实 DRM 播放。

<!-- Canonical: https://docs.drm-x.com/zh-Hans/integrations/moodle-activity -->
<!-- Language: zh-Hans -->
