Skip to main content
Skip table of contents

Custom parameters (delivery launch)

The parameters described in this topic are used to customize the LTI launch using TAO delivery features. These parameters are optional.

Parameter format

All custom parameters must be wrapped one custom claim:

CODE
"https://purl.imsglobal.org/spec/lti/claim/custom": {
  "key": "value"
}

Topic layout

Multiple attempt

This option allows test takers multiple attempts on the same assessment.

key

Value

Description

deliverySettings.attemptId

String

  • If this parameter is left out, there can only be a single result entry for any combination of userid/deliveryid.

  • Provide unique identifier for an attempt, to allow for multiple attempts for the same test taker/deliveryId.

  • Unique combination of attemptId/DeliveryId/test taker id will be considered to resume an unfinished session or error if a session was already submitted.

This will override deliverySettings.forceResume when that parameter is set to false (its default value, which defines that test takers may not re-open a closed test session).

Proctoring

The following parameters are used to define proctoring settings within the delivery. These settings will impact how proctoring (once launched) is configured for a given delivery. For more information on how to launch proctoring, see Proctoring via LTI.

key

Value

Default

Description

proctoringSettings.enableMonitoring

Boolean || String

false

  • true: enables the display of the test session in the monitoring interface.

  • false: disables monitoring for this test session

proctoringSettings.requireProctorAuthorization

Boolean || String

false

Needed to require test takers to wait for proctor authorization.

For the authorization parameter to function, proctoringSettings.enableMonitoring must be set to true.

proctoringSettings.forceProctorAuthorization

Boolean || String

false

Needed to require test takers to wait for proctor authorization (regardless of whether they were authorized before or not).

deliveryExecution.alias.id

String

 

This parameter supports assessment control from a third party proctoring tool. The provided value will be used to internally link the generated delivery execution ID with external customer value.

Example:

CODE
"https://purl.imsglobal.org/spec/lti/claim/custom": {
  "proctoringSettings.enableMonitoring": true,
  "proctoringSettings.requireProctorAuthorization": true
}

Dry-run

This parameter is used to define whether proctors/admins can preview the delivery without impacting results.

key

Value

Default

description

deliverySettings.dryRun

Boolean || String

false

This mode allows you to preview a delivery without generating any entry in the results store (while having the exact same experience as a test-taker):

  • true: enables a delivery dry run mode.

  • false: disables a delivery dry run mode.

Test review

The following parameters are used to launch a review of an existing test session. When these parameters are added to a launch in combination with the launch URL and User Identity claim (and attempt ID if mutliple attemps), the session launches in review mode for the user.

key

Value

Default

description

deliverySettings.review.enabled

Boolean

false

  • The review mode enables administrators and test takers to view completed tests with the responses given previously by a test taker.

  • true: enables the review mode.

  • false: disables the review mode.

deliverySettings.autoReview.enabled

Boolean

false

  • true: allows the test taker to review the assessment they have just completed. The review is automatically launched after the test is submitted.

If deliverySettings.review.showScore is set to true, test takers also will be able to view their score.

When set to true, all the parameters below will take effect. If deliverySettings.review.enabled is set to true, do not use this parameter.

  • false: disables the auto-review mode.

deliverySettings.review.showScore

Boolean || String

false

  • true: displays a test taker’s score on items when reviewing a completed test as a test taker. For manually scored items, the score will display as pending until scoring is complete.

  • false: does not display a test taker’s score on items.

deliverySettings.review.showCorrect

Boolean || String

false

  • true: displays a correct answer (if specified) for items when reviewing a completed test as a test taker.

  • false: does not display a correct answer.

deliverySettings.review.showQuestion

Boolean || String

true

  • true: displays the original item without a loaded response in the Question tab when reviewing completed tests as a test taker.

  • false: does not display the original item.

deliverySettings.review.deliveryExecutionId

String

 

  • If deliverySettings.attemptId claim was provided, this parameter defines the delivery execution ID to be reviewed in case of multi-attempt launch. This value must match the value of deliverySettings.attemptId.

deliverySettings.review.showUnShuffled

Boolean || String

false

  • true: interactions which displayed for the test taker in shuffled order will be displayed to review in un-shuffled order.

  • false: displays interactions in review as the same as what was displayed for the test taker.

Example:

CODE
{
  "https://purl.imsglobal.org/spec/lti/claim/custom": {
    "deliverySettings.review.enabled": true,
    "deliverySettings.review.showScore": true,
    "deliverySettings.review.showCorrect": true,
    "deliverySettings.review.showQuestion": true,
    "deliverySettings.review.showUnShuffled": true
  }
}

Navigation

The following parameters are used to define navigation for the test taker.

key

Value

Default

description

deliverySettings.navigation

String

None

  • none: disables the Navigation Bar. This parameter can be used in combination with the deliverySettings.item.id to launch a specific item. This parameter used alone will launch the first item in the test only.

Setting this parameter to none is useful when launching a delivery in review mode.

  • linear: forces the linear navigation mode, where test takers can only proceed to the next item when completing a test.

  • nonLinear: forces the non-linear navigation mode, where test takers can move to and re-answer any items in the number line before completing the test.

deliverySettings.item.id

String

None

  • An itemRefId. If provided, a delivery execution will be launched directly into the provided item. To collect an item’s ID, navigate to the test authoring. Select an item’s properties icon. In the item’s general properties, the ID is the Identifier. The ID can be edited.

  • This parameter is used in combination with deliverySettings.navigation to launch a specific item.

deliverySettings.allItems

Boolean || String

false

If it is true, “Enable selection” Section configuration and “Shuffle” Section configuration are ignored (from when the test/delivery was authored). For more information, see Configuring LTI for TAO Authoring.

Auto-closure

If provided, the following parameters will ensure a delivery execution will be closed at a given time, triggering a final AGS call (if requested). This is useful to force a test session to be closed when testing is over (for example, when a student forgets to submit the test on the last item).

key

value

default

description

deliverySettings.ttl

Integer

None

TTL (time-to-live) provided as a value in seconds.

If provided, a delivery execution will be closed once the TTL has passed, starting from the delivery launch (+ some margin of error due to the closure script being executed at certain intervals).

deliverySettings.closeOn

String

None

RFC3339-formatted absolute date-time value.

If provided, a delivery execution will be closed at a given time (+ some margin of error due to the closure script being executed at certain intervals).

Since these parameters essentially complete the same task (designating when to close the delivery), providing only one of these parameters is needed if you want a delivery to close at one specific time. If both provided, the earlier date will apply.

Examples:

CODE
{
    "https://purl.imsglobal.org/spec/lti/claim/custom": {
        "deliverySettings.ttl": 600
    }
}
CODE
{
    "https://purl.imsglobal.org/spec/lti/claim/custom": {
        "deliverySettings.closeOn": "2021-01-20T19:58:00+00:00"
    }
}

Titles customization

This parameter allows the title displayed for the session to be customizable.

key

value

default

description

deliverySettings.titles

Array

None

  • This parameter allows the titles displayed in the test runner (the ones that looks like Breadcrumbs) to be customized.

  • This value(s) defined in this parameter will override the title(s) from the authoring process for each segment of the test (test, part, section, item).

Example:

CODE
{
  "deliverySettings.titles": [{
    "type": "test",
    "label": "Custom test title value"
  }, {
    "type": "section"
  }, {
    "type": "item"
  }]
} 

Plugin parameters

This section lists plugin parameters - these options enable or disable accessibility and security plugins.

Tenant default enabled plugins
taoQtiNuiTest/runner/plugins/content/title/plugin
taoQtiNuiTest/runner/plugins/panel/menu/plugin
taoQtiNuiTest/runner/plugins/navigation/jumpMenu/plugin
taoQtiNuiTest/runner/plugins/settings/plugin (visibility depends on item categories)
taoQtiNuiTest/runner/plugins/tools/highlighter/plugin (visibility depends on item category)
taoQtiNuiTest/runner/plugins/tools/scratchpad/plugin (visibility depends on item category)
taoQtiNuiTest/runner/plugins/tools/calculator/plugin (visibility depends on item category)
taoQtiNuiTest/runner/plugins/tools/lineReader/plugin (visibility depends on item category)
taoQtiNuiTest/runner/plugins/tools/fullscreen/plugin (visibility depends on item category)
taoQtiNuiTest/runner/plugins/tools/readAloud/plugin
taoQtiNuiTest/runner/plugins/tools/print/plugin (visibility depends on item category)
taoQtiNuiTest/runner/plugins/navigation/warnBeforeLeaving/plugin
taoQtiNuiTest/runner/plugins/tools/preventDropToInput/plugin

Tenant default omitted plugins
taoQtiNuiTest/runner/plugins/panel/a11y/plugin (portal session option)
taoQtiNuiTest/runner/plugins/security/disableRightClick/plugin (portal session option)
taoQtiNuiTest/runner/plugins/security/disableCommands/plugin (portal session option)
taoQtiNuiTest/runner/plugins/security/preventScreenshot/plugin (portal session option)
taoQtiNuiTest/runner/plugins/security/forceFullscreen/plugin (portal session option)
taoQtiNuiTest/runner/plugins/security/pauseOnBlur/plugin (portal session option)

Adding plugins

key

value

default

description

deliverySettings.plugins.add

Object

''

Comma-separated list of plugins to apply to the current assessment session.

Plugin examples:

  • taoQtiNuiTest/runner/plugins/panel/a11y/plugin

    • This plugin adds accessibility features for the session.

  • taoQtiNuiTest/runner/plugins/settings/plugin

    • This plugin adds the settings menu (gear) icon to the session. The settings menu gives test takers the ability to turn answer eliminator and answer masking (if enabled for a choice interaction) on or off.

Example:

The following will apply the accessibility plugins and plugin settings (answer masking and answer eliminator) to the assessment sessions:

CODE
{
    "https://purl.imsglobal.org/spec/lti/claim/custom": {
        "deliverySettings.plugins.add": "taoQtiNuiTest/runner/plugins/panel/a11y/plugin, taoQtiNuiTest/runner/plugins/settings/plugin"
    }
}

Removing plugins

key

value

default

description

deliverySettings.plugins.remove

Object

''

Comma-separated list of plugins to remove from the current assessment session, e.g.

Plugin example:

  • taoQtiNuiTest/runner/plugins/navigation/warnBeforeLeaving/plugin

    • This plugin adds a warning if a test taker attempts to close the test without completing/submitting.

Example:

The following will remove main-menu and warn-before-leaving plugins:

CODE
{
    "https://purl.imsglobal.org/spec/lti/claim/custom": {
        "deliverySettings.plugins.remove": "taoQtiNuiTest/runner/plugins/panel/menu/plugin, taoQtiNuiTest/runner/plugins/navigation/warnBeforeLeaving/plugin"
    }
}

General plugin settings

key

value

default

description

deliverySettings.plugins

Object

None

A JSON-encoded object as a string, e.g.

Plugin settings example:

  • {\"localItemState\":{\"saveState\":{\"liveSaveIndicator\":{\"enabled\":false}}}}

    • This plugin setting adds an indicator for whether or not a test taker’s response to an item was saved/recorded.

Examples:

CODE
{
    "https://purl.imsglobal.org/spec/lti/claim/custom": {
        "deliverySettings.plugins": "{\"localItemState\":{\"saveState\":{\"liveSaveIndicator\":{\"enabled\":false}}}}"
    }
}
CODE
"https://purl.imsglobal.org/spec/lti/claim/custom": {
        "deliverySettings.plugins": "{\"readAloud\": {\"readAloudOption\": \"always-enabled\"}}"
    }
CODE
"https://purl.imsglobal.org/spec/lti/claim/custom": {
        "deliverySettings.plugins": "{\"a11yMenuPanel\": {\"openOnStart\": true, \"contrastTheme\": {\"enabled\": true, \"themes\": [\"default\", \"whiteOnBlue\", \"yellowOnBlack\", \"blueOnYellow\", \"greyOnGreen\"]}, \"groups\": [\"group-contrast\", \"group-pointer\", \"group-text\", \"group-zoom\"]}}"
    }

Read Aloud Plugin

key

value

default

description

deliverySettings.plugins.readAloud.settings.readAloudOption

String Posible values: 'content-base', 'always-enabled', 'always-disabled',

content-base

content-base: For any items configured with the x-tao-option-tts category, this plugin will be enabled.

always-enabled: The plugin is always available (not based on item configuration).

always-disabled: The plugin will never be available (not based on item configuration).

Example:

CODE
{
    "https://purl.imsglobal.org/spec/lti/claim/custom": {
        "deliverySettings.readAloud.enabled": true
    }
}

Security Plugins

key

value

default

description

deliverySettings.plugins.forceFullScreen.enabled

Boolean || String

false

  • true: enables the Force Fullscreen plugin for the given Test Taker. Test takers will be required to enter fullscreen when taking test.

  • false: disables the Force Fullscreen plugin for the given Test Taker.

deliverySettings.plugins.forceFullScreen.autoresume

Boolean || String

true

If deliverySettings.plugins.forceFullScreen.enabled is true:

  • true: enables a test to resume automatically in case the Test Taker exits and then goes back to Fullscreen mode during a test.

  • false: disables a test from automatically resuming in case a Test Taker goes back to Fullscreen mode (after exiting). In this case, action from TAO Onsite Proctoring tool is needed to resume a given test takers test. For more information, see Proctoring via LTI.

deliverySettings.plugins.pauseOnBlur.enabled

Boolean || String

false

  • true: enables the PauseOnBlur plugin for the given Test Taker that controls if the Test Taker switch to another program or window of the browser.

  • false: disables the PauseOnBlur plugin for the given Test Taker that controls if the Test Taker switch to another program or window of the browser.

deliverySettings.plugins.pauseOnBlur.autoresume

Boolean || String

true

If deliverySettings.plugins.pauseOnBlur.enabled is true:

  • true: enables the autoresume of the test execution for the given Test Taker in case the Test Taker switch to another program or window of the browser.

  • false: disable the autoresume of the test execution for the given Test Taker in case the Test Taker switch to another program or window of the browser. Action from TAO Onsite Proctoring tool is needed.

deliverySettings.plugins.preventScreenshot.enabled

Boolean || String

false

  • true: enables the PreventScreenshot plugin for the given Test Taker that prevents the Test Taker from taking a screenshot.

  • false: disables the PreventScreenshot plugin for the given Test Taker that prevents the Test Taker from taking a screenshot.

deliverySettings.plugins.disableCommands.enabled

Boolean || String

false

  • true: enables the DisableRightClick and DisableCommands plugins for the given Test Taker that prevents the Test Taker from using cut/copy/paste, the right click and a series of commands on any part of an item that is not editable by Test Taker (i.e.: text of a response).

  • false: disables the DisableRightClick and DisableCommands plugins for the given Test Taker.

Example:

CODE
{
    "https://purl.imsglobal.org/spec/lti/claim/custom": 
    {
        "deliverySettings.plugins.forceFullScreen.enabled": "true",
        "deliverySettings.plugins.forceFullScreen.autoresume": "true",
        "deliverySettings.plugins.pauseOnBlur.enabled": "true",
        "deliverySettings.plugins.pauseOnBlur.autoresume": "true",
        "deliverySettings.plugins.preventScreenshot.enabled": "true",
        "deliverySettings.plugins.disableCommands.enabled": "true"
        }
}

 

Delivery execution control

The following parameters are used to define in what ways test takers are allowed to execute with the test.

key

value

default

description

deliverySettings.forceResume

Boolean

false

  • true: allows a test-taker to interact again with a previously submitted test session (even if the timer for the test, part, or item ran out).

  • false: test takers may not re-open a closed test session.

deliverySettings.reset

Boolean

false

  • true: allows a test-taker to start a test from scratch (if the test was closed when incomplete).

  • false: does not reset the test session when a test taker reopens; instead the test will begin where the test taker left off.

Any value set for this parameter will override forceResume (see above).

Any results from a previous attempt (pre-reset) will be deleted without the possibility to restore them.

deliverySettings.attemptLimit

String

''

For now, only a '0' value of the is supported for this parameter, which allows test takers to reset a closed/submitted delivery. If a value is not provided for this parameter, test takers can resume an unfinished delivery.

Only the results from the last attempt are recorded. Any results from previous attempts will be deleted without the possibility to restore them.

Delaying assessment start

The following parameters are used to define the assessment’s time constraints for test takers.

key

value

default

description

deliverySettings.startsAt

string RFC3339

null

RFC3339-formatted absolute date-time value. Example: 2024-10-03T11:44:13-04:00 (October 3 2024 at 11:44:13 AM EST)

If defined and current time is behind it, a waiting page will be displayed until the startsAt time, with the regular session resuming afterwards.

deliverySettings.endsAt

string RFC3339

null

RFC3339-formatted absolute date-time value. Example: 2024-10-03T11:44:13-04:00 (October 3 2024 at 11:44:13 AM EST)

If defined, will be used to display indicative time of the exam. Once this time is reached, the test taker will end on the waiting page.

This parameter will have no effect if deliverySettings.startsAt hasn’t been defined or if deliverySettings.startsAt is ahead of deliverySettings.endsAt. Likewise, if a timer has been set for a test, it will override this parameter if it’s value is defined to end the test before the timer runs out.

deliverySettings.testTitle

string

null

If defined, will be used to display the test name/title on the waiting page.

If not defined, the QTI-test level label (from the Authoring tool) will be used.

deliverySettings-testTitle.png
JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.