Verona Interfaces Specification "Player" 5.2.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 importantly, 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

  • SUB vopReadyNotification

    Ready Notification

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

    Accepts the following message:

    vopReadyNotificationMessage
    Message IDvopReadyNotificationMessage
    object

    Examples

  • PUB vopStartCommand

    Start Command

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

    Accepts the following message:

    vopStartCommandMessage
    Message IDvopStartCommandMessage
    object

    Examples

  • SUB vopStateChangedNotification

    State Changed Notification

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

    Accepts the following message:

    vopStateChangedNotificationMessage
    Message IDvopStateChangedNotificationMessage
    object

    Examples

  • PUB vopPageNavigationCommand

    Page Navigation Command

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

    Accepts the following message:

    vopPageNavigationCommandMessage
    Message IDvopPageNavigationCommandMessage
    object

    Examples

  • SUB vopUnitNavigationRequestedNotification

    Unit Navigation Requested Notification

    The user has triggered a navigation request.

    Accepts the following message:

    vopUnitNavigationRequestedNotificationMessage
    Message IDvopUnitNavigationRequestedNotificationMessage
    object

    Examples

  • PUB vopNavigationDeniedNotification

    Navigation Denied Notification

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

    Accepts the following message:

    vopNavigationDeniedNotificationMessage
    Message IDvopNavigationDeniedNotificationMessage
    object

    Examples

  • SUB 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'.

    Accepts the following message:

    vopWindowFocusChangedNotificationMessage
    Message IDvopWindowFocusChangedNotificationMessage
    object

    Examples

Schemas

  • object
    uid: LogEntry

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

  • object
    uid: PlayerState
  • object
    uid: UnitState
  • NavigationTarget
    string
    uid: NavigationTarget

    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
    uid: SessionIdString

    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
    uid: PlayerConfig