此Xblock比EDX的原始LTI_消费者Xblock增加了可配置性
configurable-lti-consumer-xblock的Python项目详细描述
可配置LTI使用者Xblock
这个Xblock是在edX LTI consumer Xblock之上构建的,以便于讲师进行配置。
下面是此模块为打开EDX带来的一些示例:
- 从
Advanced
组件按钮一次单击即可添加的预配置LTI服务, - 通过以启动URL模式为目标,强制配置某些LTI服务,
- 强制所有LTI服务的默认配置,以实现更好的控制、安全或功能,
- 平台级LTI证书配置可用于所有课程。 课程。
安装
此软件包可以与pip
:
$ pip install configurable_lti_consumer-xblock
edx的lti_consumer-xblock是
如果您愿意安装或测试它,则需要作为额外的依赖项
Xblock作为独立软件包。您可以使用pip
:
$ pip install git+https://github.com/edx/xblock-lti-consumer@v1.1.8#egg=lti-consumer-xblock
如果计划将其安装在基本的open edx安装中,则此依赖项将 已经可用,因此不需要执行上述命令。
开始
首先,如果你计划在这个项目上工作,你需要 克隆此存储库:
$ git clone git@github.com:openfun/xblock-configurable-lti-consumer.git
在您的计算机上克隆项目后,您将需要构建 自定义edx-platform docker image 包括可配置的LTI使用者Xblock,并设置一个开发环境 包括所有已启动并正在运行的必需服务(稍后将详细介绍):
$ cd xblock-configurable-lti-consumer
$ make bootstrap
如果一切顺利,您现在应该可以访问以下服务:
- 打开EDX LMS:http://localhost:8072
- 打开edx cms:http://localhost:8082
具有以下凭据:
email: admin@example.com
password: admin
配置示例
典型的LTI配置如下:
LTI_XBLOCK_CONFIGURATIONS=[{"display_name":"Marsha Video","oauth_consumer_key":"InsecureOauthConsumerKey","shared_secret":"InsecureSharedSecret","is_launch_url_regex":True,"automatic_resizing":True,"inline_ratio":0.5625,"hidden_fields":["lti_id","description","launch_target","custom_parameters","button_text","modal_height","modal_width","has_score","weight","hide_launch","accept_grades_past_due","ask_to_send_username","ask_to_send_email",],"defaults":{"custom_parameters":[],"ask_to_send_username":True,"weight":0,"modal_height":400,"ask_to_send_email":True,"accept_grades_past_due":False,"button_text":"button","has_score":False,"hide_launch":False,"launch_target":"iframe","modal_width":80,"launch_url":"https://marsha\.education/lti/videos/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}","lti_id":"marsha",},},{"pattern":".*ltiapps\.net.*","hidden_fields":["launch_target"],"defaults":{"launch_target":"modal"},},{"display_name":"LTI consumer","pattern":".*","hidden_fields":["ask_to_send_username","ask_to_send_email"],"automatic_resizing":False,"defaults":{"ask_to_send_email":True,"launch_target":"new_window","ask_to_send_username":True,},},]
此配置可执行以下操作:
- 它在studio中的
Advanced
组件按钮后面添加一个“marsha video”链接,以添加 一键视频。视频将自动添加到 Marsha由启动URL指向的实例, - 它强制所有指向
ltiapps.net
的LTI使用者Xblock使用模式, - 它建议将所有其他LTI使用者Xblock作为默认值在新窗口中打开,并强制 在发送用户的用户名和电子邮件之前询问。
此列表中每个配置的顺序很重要,因为我们将使用 Xblock,第一个匹配其启动URL的配置模式。
如果您希望加密oauth_consumer_key
和shared_secret
凭据并保留
其他可见的设置,可以在单独的设置中声明其中一个或两个
LTI_XBLOCK_SECRETS
,使用lti_id
作为映射键:
LTI_XBLOCK_SECRETS={"marsha":{"oauth_consumer_key":"InsecureOauthConsumerKey","shared_secret":"InsecureSharedSecret",}}
请注意,当前存储库中包含的工作台正在运行此配置 (见config/settings.yml.dist)关于法国国立大学 Open edX extended Docker image。
集成以打开EDX Studio
目前,这个项目需要一个edx/edx-platform的小分支
如果要为某些配置添加
Advanced
工作室的组件按钮。
在我们看来,这个小叉子值得应用,因为:
- 它将使您不必安装许多Xblock,并有助于保持开放式EDX安装的可管理性,
- 它允许您自动为要提供给您的 教官。他们不需要激活LTI并提供每门课程的证书…他们 不需要为他们添加的每个Xblock提供服务的启动URL…
对于open-release/hawthorn.1
,要应用的修补程序在此处可用:
https://gist.github.com/sampaccoud/f15083325cec4f14a53bfb78fb4b4e42
开发人员指南
项目启动后(请参阅“入门”部分),开始 使用:
$ make dev
您可以通过停止运行服务:
$ make stop
如果出于任何原因,需要删除数据库并从新数据库开始,请使用
down
目标:
$ make down
许可证
这项工作是在agpl 3.0许可下发布的。(见{a11}。