Verona Interfaces Specification "Player" 6.0.0

This is one part of the Verona Online Assessment Standards. All messages are sent via the postMessage function of the html page. The player takes the page root of its parent as target (parent.window), and the application binds the function call to the iframe element of the player.

Most important, the message body carries as first parameter the operationId of the message.

The html page MUST contain a script-tag with metadata. The syntax and structure of this data are described here.

Operations

  • SEND vopReadyNotification

    Ready Notification

    The player announces that it's code is loaded and initialized so the communication can start.

    Operation IDvopReadyNotification

    Accepts the following message:

    object

    Examples

  • RECEIVE vopStartCommand

    Start Command

    The application sends parameters for running the unit and commands the start of user interaction.

    Operation IDvopStartCommand

    Accepts the following message:

    object

    Examples

  • SEND vopStateChangedNotification

    State Changed Notification

    The state of the unit and/or of the player has changed. Some logs entries might be sent.

    Operation IDvopStateChangedNotification

    Accepts the following message:

    object

    Examples

  • RECEIVE vopPageNavigationCommand

    Page Navigation Command

    The host wants the player to navigate to a specific page.

    Operation IDvopPageNavigationCommand

    Accepts the following message:

    object

    Examples

  • SEND vopUnitNavigationRequestedNotification

    Unit Navigation Requested Notification

    The user has triggered a navigation request.

    Operation IDvopUnitNavigationRequestedNotification

    Accepts the following message:

    object

    Examples

  • RECEIVE vopNavigationDeniedNotification

    Navigation Denied Notification

    The host lets the player know that a navigation request was denied due to player state.

    Operation IDvopNavigationDeniedNotification

    Accepts the following message:

    object

    Examples

  • RECEIVE vopPlayerConfigChangedNotification

    Player Config Changed Notification

    The host wants the player to update its configuration given at start.

    Operation IDvopPlayerConfigChangedNotification

    Accepts the following message:

    object

    Examples

  • SEND vopRuntimeErrorNotification

    Runtime Error Notification

    The player had some trouble and the response process is at risk.

    Operation IDvopRuntimeErrorNotification

    Accepts the following message:

    object

    Examples

  • SEND vopWindowFocusChangedNotification

    Window Focus Changed Notification

    In some use cases like exam mode the host must know whether the host or the player has the window's focus. If none of these windows have the focus (i. e. the testee has left the test), some logging or warning could be necessary. The player should listen to the window events 'blur' and 'focus'.

    Operation IDvopWindowFocusChangedNotification

    Accepts the following message:

    object

    Examples

Schemas

  • object

    The player can send any information about events happening during the interaction phase.

  • object

    The player sends some information on pages (valid pages, current page).

  • object

    These data stand for the answers and some additional information on the status of responding. Emitted by the player during the test, it is given back to the player on start to restore the former state.

  • NavigationTarget
    string

    This enumeration lists all possible targets the player could send a navigation request for, relative to the position of the current unit. This could be the next and previous unit, last and first unit of the current range of units (booklet, testlet) or the end of the test. The ending is seen as kind of termination of test, e. g. the announcement of the testee, that all responses are given. What exactly the host will navigate to depends of the nature of the test or the use case and might depend on configuration parameters of the specific booklet as well.

      Allowed values:
    • "next"
    • "previous"
    • "first"
    • "last"
    • "end"
  • SessionIdString
    string

    The session id flags all communication. If a message has no or empty session id, it's not processed. The session id is unique and was generated by the application. Any simple algorithm would work. The session id helps to link the correct unit with the data of the message. Using the id of the player hosting html element is less reliable, because the element could be reused with another unit.

  • object

    This data supplies some information or instruction about this specific run of the unit (number, unit title, some behavioral data for the player).