-
Notifications
You must be signed in to change notification settings - Fork 1
Home
Marc Normann edited this page Feb 8, 2024
·
7 revisions
This Wiki should help you to set up the HASKI System in total with the Repository. It will cover the different steps you have to undertake to run the system.
- Start the Traefik container in the
traefikfolder withdocker compose up -d - Generate the keys for the Backend (follow the instructions here) in the
backend/keysfolder - Start the Moodle Container in the Moodle folder with
docker compose up -d - Log in to the Moodle System (Inital User Name: user, initial password: bitnami)
- Go to
Site Administration -> Plugins -> Manage Toolsto set up the LTI Tool - Click on
Configure a tool manually

- Set the tool settings according to your setup and the picture below (URLs including https://)

- Save the changes
- Open the burger icon in the overview page to get the data for the Backend setup

- You need the
Client IDand data from thePublic keyset URL

- Create a course in the Moodle System
- Add an external tool, where you select the HASKI LTI with the following settings:

- To allow the Moodle to be used as an iFrame, go to
Site Administration -> General -> Security -> HTTP Securityand allow frame embedding here

- Next, start the HASKI Database Container in the
databasefolder withdocker compose up -d - Get the IP Address of the postgres container with
docker inspect <id> | grep IPAddressfor the Backend setup - Adjust the
.flaskenvfile in the backend folder to your needs. TheCLIENT_ID(Client ID),KEY_ID(Public keyset URL -> kid) andKEY_N_VALUE(Public keyset URL -> n) are taken from the Moodle LTI Setup. - Start the Backend container with
docker compose up -d - Start the LRS container in the
learning_analyticsfolder withdocker compose up -d - Log in to your LRS and navigate to
Credentials Managementto create your API Key. PressAdd new Credentials - Take the public and the secret key and encode them as Base64 in the format
<public_key>:<secret_key> - Navigate to the
frontend/configfolder and adjust theenv.production.jsonfile to your needs. Add the LRS base64-encoded key here with the prefixBasic - Next, start the Frontend Container in the
frontendfolder withdocker compose up -d - Navigate back to your Moodle System online and install the HASKI Minimal Theme Plug-In in your installation
- Select the HASKI Minimal Design as default design
- Install the Moodle xAPI-Plug-In in your installation
- Setup the Plugin with the following data:

- If you do not want to send the data in batches, remove the checkbox at
Send statements by scheduled task? - Check all boxes in the
Filter logssection - Save the changes
- Enable the xAPI-Plug-In
- Create users within the Moodle system
- Add all needed users to the course
- Create topic-sections for your course
- Upload all learning elements to the course
- Add the data to the HASKI DB
How can I find the IDs in Moodle?
To find the IDs in Moodle, hover over the user/the course/ the learning element to see the link preview. Within the link, you typically find something like "id=xyz", where xyz is a number and the needed lms_id.
What tables do I need to fill in the HASKI DB and in which order?
In order to run a minimum filled HASKI System, follow these steps and fill the tables in this order:
- haski_user
- teacher/course_creator/student/admin
- settings
- course
- course_creator_course
- topic
- course_topic
- learning_element
- topic_learning_element
- learning_characteristics
- learning_style
- knowledge
- learning_analytics
- learning_strategy
- student_course
- student_topic
- learning_path (if needed for e.g. standard learning paths or questionnaire topics, otherwise no need to fill)
- learning_path_learning_element (if needed for e.g. standard learning paths or questionnaire topics, otherwise no need to fill)
All other tables are optional and don't need to be filled to run HASKI. They will be filled out by the system during run time.