Execute the following command on your shell:
ant jar
To start the onyx-data-proxy service, follow the Starting-A-las2peer-Network tutorial and bootstrap your service to a mobsos-data-processing service. The onyx-data-proxy service may be used in two different ways to generate statements:
- Using the Opal API the proxy can be connected to multiple Opal courses and will generate xAPI statements for new assessment results and daily course node access statistics.
- Without using the Opal API the proxy provides a REST method that allows sending assessment result data downloaded from Opal manually to the onyx proxy. From the zip file sent to the proxy it will also generate xAPI statements for the assessment results.
To send Onyx data downloaded from Opal to MobSOS manually (without using the Opal API), a RESTful POST request is offered.
POST <service-address>/onyx/assessments
Therefore, replace service-address with your service address.
First build the image:
docker build . -t onyx-data-proxy
Then you can run the image like this:
docker run -p port:9011 onyx-data-proxy
Please make sure to add the following environment variables to the "docker run" command.
Variable | Description |
---|---|
API_ENABLED | true or false depending on whether the Opal API should be used by the service. |
OPAL_USERNAME | Email address / username of the Opal account used to access the API. |
OPAL_PASSWORD | Password of the Opal account used to access the API. |
COURSE_LIST | Comma separated list of the course ids that should be monitored using the Opal API. |
PSEUDONYMIZATION_ENABLED | true or false depending on whether personal user information (email, name) should be hashed within the xAPI statement. |
DATA_STREAM_PERIOD | Fetching interval (in minutes) for new assessment results. Default value is 30 minutes. |
COURSE_ELEMENTS_UPDATE_PERIOD | Fetching interval (in minutes) for newly added e-tests that should be monitored. Default value is 60 minutes. |
The proxy can be configured to add specific template variables from the Onyx assessment to the context extensions of the xAPI statements. To enable this, set the docker environment variable TEMPLATE_VARIABLES_IN_STATEMENTS to true. If this feature is enabled, you can use the environment variable TEMPLATE_VARIABLES_IN_STATEMENTS_PREFIX to set a prefix. Then every template variable starting with this prefix will be part of the xAPI statement's context extensions.
Set las2peer node launcher options with these variables. The las2peer port is fixed at 9011.
Variable | Default | Description |
---|---|---|
BOOTSTRAP | unset | Set the --bootstrap option to bootrap with existing nodes. The container will wait for any bootstrap node to be available before continuing. |
SERVICE_PASSPHRASE | someNewPass | Set the second argument in startService('service@version', '<SERVICE_PASSPHRASE>'). |