oat-sa/extension-tao-ltideliveryprovider

TAO中管理LTI交付提供者的扩展

v12.21.3 2024-05-06 10:55 UTC

This package is auto-updated.

Last update: 2024-09-05 14:08:57 UTC


README

TAO Logo

GitHub GitHub release GitHub commit activity codecov

LTI交付扩展允许测试者通过LTI接收(交付)测试

此服务用于监考特定交付的端点为:https://YOUR_DOMAIN/ltiDeliveryProvider/DeliveryTool/launch?delivery=YOUR_DELIVERY_URI

或者

https://YOUR_DOMAIN/ltiDeliveryProvider/DeliveryTool/{"delivery":"YOUR_URI"}(base64编码)

此链接可以通过在TAO管理员用户界面的交付部分中的LTI按钮检索。

或者使用可配置的链接,省略交付参数 https://YOUR_DOMAIN/ltiDeliveryProvider/DeliveryTool/launch

在这种情况下,教师需要首先调用LTI服务,并将显示一系列交付。一旦他选择了其中一个交付,就无法再更改。随后点击相同链接(通过资源ID识别)的测试者将启动教师选择的交付。

预期的角色

  • 学习者 对于参加考试的人
  • 教师 对于配置链接的人

自定义参数

  • max_attempts 覆盖在交付上允许执行的次数。期望一个正整数或0表示无限尝试。LTI调用尝试按 resource_link_id 计算,而不是按交付计算。

返回值

  • 日志消息 将包含交付执行的状态
    • 100 表示活动交付
    • 101 表示暂停的交付
    • 200 表示完成的交付
    • 201 表示终止的交付

安装说明

这些说明假定您已经在系统上安装了TAO。如果没有,请访问package/tao 并按照安装说明进行操作。

如果您通过 package/tao 安装了TAO实例,则 oat-sa/extension-tao-ltideliveryprovider 很可能已经安装。您可以在 设置 -> 扩展管理器 下验证此,它将出现在左侧的 ltiDeliveryProvider 上。或者您可以在代码中找到它,在 /config/generis/installation.conf.php

注意,您必须以系统管理员身份登录才能进行此操作。

将扩展添加到您的TAO composer和自动加载器中

composer require oat-sa/extension-tao-ltideliveryprovider

从项目根目录使用CLI安装扩展

Linux

sudo php tao/scripts/installExtension oat-sa/extension-tao-ltideliveryprovider

Windows

php tao\scripts\installExtension oat-sa/extension-tao-ltideliveryprovider

作为系统管理员,您也可以通过TAO扩展管理器安装它

  • 设置(菜单右侧的齿轮) -> 扩展管理器
  • 在右侧选择 ltiDeliveryProvider,勾选复选框,然后点击 安装

REST API

LTI交付服务REST API

配置选项

功能标志

FEATURE_FLAG_AGS_SCORE_SENDING_RETRY

A bool-类型的环境变量,控制是否在AGS分数发送失败时重发。

  • "false" - 应用程序在失败时不会尝试重新发送另一个请求。默认行为。
  • "true" - 应用程序将尝试重新发送请求,直到达到最大重试次数。

LaunchQueue.conf.php

配置选项 relaunchInterval

描述: 指定测试者在LTI队列等待时,在页面重新加载前需要等待的时间(以秒为单位)

可能值

  • 任何数值(> 0)

配置选项 relaunchIntervalDeviation

描述: 指定时间(以秒为单位),在0和relaunchIntervalDeviation之间随机选择秒数,然后将随机结果随机加到或减去重载队列页面时的时间间隔。此选项的目的是防止多个客户端同时敲击后端。

可能值

  • 0到relaunchInterval之间的任何数值

LtiDeliveryExecution.conf.php

配置选项queue_persistence

描述: LTI交付执行服务应基于的持久性。应是一个在generis/persistences.conf.php中注册的持久性名称。

值示例

  • 默认
  • 缓存

LtiNavigation.conf.php

配置选项thankyouScreen

描述: 是否应在通过LTI通过测试后显示“感谢”屏幕。仅当省略custom_skip_thankyou LTI参数时才生效。否则,它仅取决于LTI参数。

可能值

配置选项delivery_return_status

描述: 如果启用,则将包含在消费者返回URL中的deliveryExecutionStatus返回参数。此参数始终设置为交付执行状态标签。

可能值

  • true:将参数包含在消费者返回URL中
  • false:省略参数

配置选项message

描述: LTI消息的生产厂

可能值

  • 具有getLtiMessage方法的任何类的实例

值示例

  • new oat\ltiDeliveryProvider\model\navigation\DefaultMessageFactory()

LtiResultIdStorage.conf.php

配置选项persistence

描述: LTI结果别名应存储在的持久性。应是一个在generis/persistences.conf.php中注册的持久性名称。

值示例

  • 默认
  • 缓存

扩展Wiki

您可以在此处找到扩展Wiki