We use proprietary and third party's cookies to improve your experience and our services, identifying your Internet Browsing preferences on our website; develop analytic activities and display advertising based on your preferences. If you keep browsing, you accept its use. You can get more information on our Cookie Policy
Cookies Policy
Working with the FIWARE Academy - FIWARE Forge Wiki

Working with the FIWARE Academy

From FIWARE Forge Wiki

Jump to: navigation, search

Contents

Introduction

This manual provides guidelines and support to produce training courses for the FIWARE Academy (https://edu.fiware.org) which is the main collection of training material about FIWARE Technologies.
The FIWARE Academy is an eLearning platform that makes available different types of educational content produced by projects under the FI-PPP. The Training offering is delivered through an on-demand modality, which means an asynchronous interaction between the content delivery system and the end user, that can chose among a list of available lessons the needed one.

In the following chapters is described how to create, update and edit courses to the FIWARE Academy (Web Seminar Player, Course Builder), how to publish a course, guidelines to properly set the content of training course, how to manage contributors to the course, the Architecture and Configuration of the platform.

Web Seminar Player

The HTML Web Seminar Player allows to gain access to lessons and seminars and to integrate informative content and material usually needed by this kind of eLearning platforms. This player is developed as intermediate version between the full Flash based player and a full HTML5 player. This version, already mostly implemented in HTML, makes use of Flash only for audio playback. This user guide illustrates all technical steps needed in order to integrate informative content through the player.

This player is available from the FIWARE Tools project of the FIWARE forge and can be downloaded from:

The last version available is:

The HTML Web Seminar Player allows and requires to:

  • set the title of the teaching unit;
  • set the title of the lesson;
  • set the index of the lesson;
  • upload slides related to the lesson and set their title;
  • set the timing for audio/slides synchronization;
  • print the lesson.

Furthermore, the following features/controls are available by default:

  • print;
  • play, pause and stop the player;
  • use the progress bar audio to jump slides or/and audio time;
  • close popup window.
Player Web Seminar Interface (HTML Player)

Versions

0.3.2
fiware-academy-course-player-0.3.2.zip - Updated colours and fonts to be compliant to FIWARE Academy Platform Theme

0.3.1
fiware-academy-course-player-0.3.1.zip - Updated look and feel

0.1.0
fiware-html-packager-0.1.0.zip - First version.

Project Folders

The root directory has a tree structure, as follows:

  • The “css”, “images”, “jplayer” and “js” folders containing all files related to the Player.
  • The “imsmanifest.xml” file, which is the document defining the macro-structure of the learning course, based on standard SCORM.
  • A HTML file to launch the course (e.g. in the next figure: index.html), which runs the Player in the web browser.
  • A HTML file (course.html), which shows the course in the popup window.
  • A favorite icon associated with a particular web page (favicon.ico).

All these files must not be deleted or modified. Other directories and files depend on specific learning course and they must be modified to custom the course.

Structure of the root directory

Custom files for the elearning course

Each lesson (learning object) has a dedicated folder containing files strictly related to the specific learning object; this folder includes the following sub-folders:

  • “slide”: folder containing the slides of the lesson in an image format file (e.g.: 2.jpg);
  • “print”: folder containing one .pdf file to print the content of the lesson (e.g.: file.pdf);

The files strictly linked to the specific learning course are:

  • “audio.mp3”: the file within the audio component related to the lesson in a .mp3 format;
  • “cuepoints.xml”: the file containing all data needed by the course (e.g.: title of course, title and time of slides).

Seven steps to prepare the package

This user guide is linked to the .zip package containing the whole structure in order to create a lesson by means of the Web Seminar Player.

The steps listed below must be followed to create a lesson:

  1. Unzip the package “fiware-academy-course-player-0.3.2.zip”
  2. Open the folder “slide”
    1. Copy in this folder the slides related to the lesson, which must be saved in a .jpg format. The slides must be named by using a numerical sequence (e.g.: n°.jpg) to give the sequential order in which the slides must be shown during the lesson (e.g.: 1.jpg; 2.jpg; 3.jpg; …). Please note that the Player is case sensitive so pay attention to the image name and use always the lowercase
  3. Open the folder “print”
    1. Copy in this folder the print document, in a .pdf format, containing the content of the lesson, the file must be named “file.pdf”. Please note that the Player is case sensitive so pay attention to the file name and use always the lowercase
  4. Set the title of the course, title and time of the slides
    1. Open the “cuepoints.xml” file by using a xml editor
    2. In this file must be added, between the opening tag <texts> and the closing tag </texts>, as many rows <text cuepoint="0.00" name="Title Slide"></text> as the number of slides of the lesson to be shown.
      The root attributes of the tag <texts>, “time” and “title” are the duration time in second of audio file and the title of course respectively.
      For each row inserted, the player will show, in progressive order, the slide images (e.g.: 1.jpg; 2.jpg; 3.jpg; …) that are in the “slide” folder (see step 2).
    3. For each row inserted must be specified the timing, defined in seconds, when each slide must be shown, giving a value to the attribute “cuepoint” (0.00) with the needed one (e.g.: 25.0).
      Each slide image (e.g.: 1.jpg; 2.jpg; 3.jpg; …) will be shown at the given second specified for the attribute “cuepoint” in the row related to that slide.
    4. For each row inserted must be specified the title of the related slide, giving a value to the attribute “name” (Title of the Slide) and writing the appropriate one.
    5. For each slide, the value of the attribute “name”, in the related row, will be shown as title of the slide in the index (see Figure 1). Thus, the slide image 1.jpg in the “slide” folder will be shown with the title given to the attribute “name” and at the second defined for the attribute “cuepoint” in the first row (e.g.: <text cuepoint="0.00" name="Title Slide nr 1"></text>); the slide image 2.jpg will be shown with the title given to the attribute “name” and at the second defined for the attribute “cuepoint” in the second row (e.g.: <text cuepoint="60.00" name=" Title Slide nr 2"></text>); and so on.
    6. Save the “cuepoints.xml” after these modifications
  5. Set the “audio” file
    1. Create and copy the audio file of the whole lesson in a .mp3 format, the file must be named “audio.mp3”. Please note that the Player is case sensitive so pay attention to the file name and use always the lowercase
  6. Create again the package by compressing all the folders and files in a .zip format
  7. Upload the .zip archive to the FIWARE Academy, following the indications reported in the proper manual

Custom Look & Feel

This section describes how to customize the look & feel of the HTML player in order to address specific needs of brand presentation. As far as this player is based on HTML and CSS all the customization updates can be applied directly to the player package files.

The structure of files and folders is shown in the next picture where the two main points were to perform changes are highlighted:

  • images of the header at the top of web page;
  • CSS files for colours and layout.
HTML Player - header and style files


Header Images

It is possible to update the header of the course player by replacing the current logo with a new one, taking into account that also the related image at the right side might be updated. The files to replace are logo.png and pattern.png; they are located into the folder /images/header/.

Custom header

As presented in the previous image, the logo.png image is the one located on top-left corner. To directly replace the logo image it is necessary to respect the original image dimensions:

  • height: 58px
  • width: 400px max

The same applies for pattern.png image. This image is located on top-right corner. The dimensions must be:

  • height: 58px
  • width: 250px max

The total width of the header is about 1100px so it is possible to adapt the dimensions (width) for both logo and pattern images.

CSS

To change colours and layout it is possible to edit the style.css file located into the /css/ folder. Some examples are given below.

To change the background colour of the header, the tag to customize is:

header{
  background-color: rgb(72, 185, 201);
}


To change the background of the playback bar:

.playhead {
  position: absolute;
  height: 12px;
  background: #002D67;
  width: 0;
}


To change the close button at the top-right corner:

.close_button a {
  background-color: rgba(0, 45, 103, 0.81);
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  border-radius: 2px;
  color: #f1f1f1;
  font-family: "NeoTechRegular";
  font-size: 17px;
  font-weight: bold;
  padding: 0 3px;
}

Many other tags are available in the style.css file for further customizations (fonts, colours, positions).

Course Builder

Introduction

The course builder is a web application to easily create courses for the FIWARE Academy. The application is available online at this URL http://builder.edu.fiware.org/.

How to access

Course Builder is provided with different options for user authentication. You can configure the method in config.php file setting the $authenticationmode variable with the correct value. The provided ones are;

  • DB: uses JDBC connection to store and authenticate the users
  • FUSIONFORGE: use a fusion forge user repository
  • KEYROCK: use the Identity Manager implemented by the General Enabler KeyNote

Login

Login

To access the Course Builder application, available at http://builder.edu.fiware.org/, type "Username" and "Password" in the login form and click on the "Enter" button to login.

User database and user profiles

The Course Builder uses an internal database to profile users and store the data uploaded for creating the courses and also to connect users each other for collaborations. The application has two user profiles available:

  1. the manager and,
  2. the administrator.

The manager profile can manage courses, namely:

  • create new courses;
  • delete the existing courses;
  • add and edit slides to the courses;
  • display in real time the preview of the courses;
  • download the courses in ZIP format.

The administrator profile can manage both courses and users. The management of courses implies the same actions of the manager profile. As for the management of users, the administrator can also add, edit or delete the users registered to the Course Builder application. The next figure shows the home page after the login. On the left side there are two "sub menus", "courses" and "users", and on the top a "horizontal menu". The two sub menus have dedicated functionalities to manage courses and users respectively.

Main features


Note: the “functionalities linked to the “users” sub-menu are available only to administrator profiles (the figure shows an example of home page for an administrator profile logged in), to and it’s not available to the manager profile.

Finally, through the horizontal menu any user (manager and administrator) can:

  • change the password;
  • logout.

Logout

You can logout from the web application by using the "Logout" link in the horizontal menu.

Logout

Specificity of each provided method

This section is reserved to users who manage the Course Builder installation. To configure in detail each method you must edit the file member<method_name>.php

DB authentication method

In config.php file you have to set DB as value for $authenticationmode. This variable is used to load the class defined in memberDB.php file. Inside the authentication function you can see the DBMS used is the same used for internal user profile and data management.

FusionForge authentication method

In config.php file you have to set FUSIONFORGE as value for $authenticationmode. This variable is used to load the class definded in memberFUSIONFORGE.php file. Inside the authentication function you can specify the URL of web server descriptor (WSDL file) provided by FusionForge server.
If you need to connect to FusionForge throw a proxy you can use the authentication method FUSIONFORGEBEHINDPROXY and check proxy authentication parameter in memberFUSIONFORGEBEHINDPROXY.php file

LDAP authentication method

In config.php file you have to set LDAP as value for $authenticationmode. This variable is used to load the class definded in memberLDAP.php file. Inside the authentication function you can specify the URL of Lightweight Directory Access Protocol server you need to use.

If you need specific configuration you can override the method in according with GPLv3 licence.

IDM authentication method

In config.php file you have to set KEYROCK as value for $authenticationmode. This variable is used to load the class definded in memberKEYROCK.php file. Inside the authentication function you can specify the URL of web server descriptor (WSDL file) provided by KeyRock General Enabler.
If you need to connect to DIM throw a proxy you can use the authentication method KEYROCKBEHINDPROXY and check proxy authentication parameter in memberKEYROCKBEHINDPROXY.php file

Customize the authentication method

Course Builder use the Abstract Pattern method to implement a specific authentication method. The abstract class is memberABSTRACT.php that has just the authentication method declared as abstract. This means that if you need your specific method you have to follow these steps:

  1. copy memberMOCK.php file and rename using the name of you method (eg: memberMYMETHOD.php)
  2. edit new file and write the code you need in section // 1st - authentication. You have some example in the same folder you find MOCK.
  3. edit config.php file and change the
    $authenticationmethod
    variable with value MYMETHOD.

Now you are ready to use your authentication method.

Example using external DB

Let's start from DB method and adapt the new class to use an external DB to authenticate the user.

  • Copy the memberDB.php file and rename as memberDBEXT.php.
  • Edit the file and modify the body of authentication method so the class uses another connection for authentication

 /*
  * Overriding of method Authentication()
  * This make Member customizable at all for each authentication method
  */
 protected function Authentication ($username, $password) {
 	//1st - authentication
 	//1st - authentication
 	$connection = new mysqli('dbmshost', 'dbmsusername', 'dbmsuserpwd', 'dbmsdatabase');
 
 	$qry = "Select * from USERTABLE where USERNAME='$username' and PASSWORD='".md5($password)."'";
 	$result = $this->_connection->query($qry);
 
 	if(!$result || $result->num_rows <= 0) {
 		$this->HandleError("Login error. Username or Password doesn't match on remote DB!");
 		return false;
  	}
	 //2nd step - more info from local DB
	 ...
 }

  • set in config.php the $authenticationmethod='DBEXT'.

Now you are ready to authenticate to the new DBMS.

How to work

Create a new course

A user can create a new course by using the "insert new course" link from the "courses" sub-menu on the left of the page. By clicking on the "insert new course" link a form will appear. Type the "Title" of the course and upload the pdf file by using the "PDF file" field.

This file will be used when users viewing the course want to print it.

Create a course

The course produced has a print feature that need the pdf file to be loaded. You can load it even after you complete the course. Click on Insert button to create the container of new course that you will fill with the content of slides.

The next figure shows that the course was successfully created and inserted.

Create a course with successfully

List courses

Click on the edit or add slide to course link in the COURSES menu of the main page. In the next page you will see the list of courses you created.

List of owned courses

In the table you see these columns:

  • title - the title of the course
  • created - the creation time of the course
  • author - the owner of the course
  • permission - if you can (r)ead or (w)rite the course
  • delete - to delete the course

Click on the File:delete.gif icon to delete the course. Please note that after that you will lose everything related to that course.

Delete course

Edit a course

Click on the course you want to edit among the listed courses and the edit page of that course will appear.
Here you can change the Title and the pdf file used to print the course.
Here you can read some information about that pdf such as last update and size.

Course overview

Note: use the File:Course_builder_edit_course_slide_section_back_button.png button to return to the list of courses.

Sharing the course

When you create a course you can share it with other users. You can select which are the users to share it with and you can also choose to give to each of them the permission to edit it.

First click on file:share.gif icon an then manage the users list.

Sharing course

For each user in the list you can choose to share course with it or not and choose if the user can just read or edit course.

The users you share the course to will see in their list of courses your course (and the permission you give).

Managing the slides

The slide section allows to manage slides in course. The properties available for each slide are Order, Name, Image, Audio, Move, Edit and Delete.

Add slide

Some actions can be performed directly in the row of the table:

  • File:image.gif shows the picture loaded as slide
  • File:audio.gif makes you listening the audio associated to the slide
  • File:up.gif moves the slide one step upper
  • File:down.gif moves the slide one step lower
  • File:edit.gif opens the page to edit the slide
  • File:delete.gif deletes the slide

Additional actions can be performed by using the buttons File:Course_builder_edit_course_slide_section_addslide_button.png, File:Course_builder_edit_course_slide_section_preview_button.png and File:Course_builder_edit_course_slide_section_downalodZIP_button.png.

If no slide are available (for example when you have just created the new course), the buttons File:Course_builder_edit_course_slide_section_preview_button_disabled.png and File:Course_builder_edit_course_slide_section_downloadZIP_button_disabled.png are disabled.

Let's see each feature.


Add Slide

Click on File:Course_builder_edit_course_slide_section_addslide_button.png button.

Add slides to course


You have to insert needed information

  • Name: the name you want to give to the slide
  • JPG Image [670x500 px]: an image file in Jpeg format with size of 670 px for width and 500 px for height (for a good view in the course);
  • Audo MP3 or Text: you can choose an audio file in MP3 format for explaining the slides or you can write your own description that will be converted in audio using a TTS service of the Course Builder.

Note: before adding the slide must be prepared all the JPG images (670x500px) by using an editor to resize the image.
If you want to create your own Audio file using TTS, visit http://www.fromtexttospeech.com.

When the form is ready click on File:Course_builder_edit_course_slide_section_addslide_button.png to save the slide.
If something goes wrong a message will appear reporting it (depending on the type of error, sometimes the slide will be saved as a slide of the course).

Add slides to course

By clicking on File:Course_builder_edit_course_slide_section_back_button.png you will be shown the course detail page.

The edit course page with some slides

Note: once that the slides are added to the course, the “preview” and “download ZIP” buttons become available.

Preview

This feature creates the coruse and shows you how it is. It opens a new page where the course will start.

Start the preview

Download ZIP

It creates a zip file containing the course. You have to deploy it inside the page where you want to share the course.

Download ZIP

Note: the ZIP file will have the same name of the related course; any white space will be replaced with the underscore ("_") character.

Manage users

The manage users section is available only to users having an administrator profile. This section is available from the "sub menu" users on the left and allows the administrator to insert, edit and delete users within the Course builder application.

Insert users

The administrator can insert (register) a new user in the Course Builder application by using the "insert new user" link in the "users" sub-menu. By clicking on "insert new user" a form will appear with some mandatory fields to be compiled:

  • first name - the first name of the new user
  • last name - the last name of the new user
  • username - the username
  • password - the password
  • re-password - re-type the password
  • type - the profile of the new user (usually manager role)

The next figure shows the "insert new user" form.


Insert new user

After having filled-in all required fields, click on the "Insert" button to add the new user to the list of users of the Course Builder application.

Edit users

The administrator can edit information about any user by using the "edit user" link in the "users" sub-menu. By clicking on “edit user” will be displayed a list of all users registered within the Course Builder application. The list of users table shows the username, the name and the type of the users as shown in following figure.

Edit user

To edit a user and change related information use the “username” field in the table, which is linkable. Select the user to be edited and click on the “username” link, a form will appear where to update information about the selected user, as shown in the next figure.

Edit user

Once that needed information about the selected users have been updated, push on the "Edit" button to save data and update the new information.

Delete users

The administrator can delete a user from the Course Builder application by using "delete user" link in the "users" sub-menu. By clicking on the "delete user" link will be displayed a list of all users registered within the Course Builder application. The list of users table shows the username, the name and the type of users as shown in the following figure.

Delete user

To delete a user form the list, select the user and click on the related “username” field, which is linkable, a popup will appear to ask for confirmation before deleting.

Delete user confirmation

Note: the user can be deleted from the Course Builder application only if that user has no associated courses. Trying to delete a user who is owner of one or more courses will produce this error: "User cannot be deleted!". Before deleting any user associated to one or more courses, must be previously deleted all courses associated to that user.


Delete user error

Architecture

This document describes the general architecture of the Course Builder application, developed within the FIWARE project.

Design

The underlying idea of the Course Builder application is to ease the creation of courses to be published to the FIWARE Academy.

A simple block diagram (or model) of the Course Builder is shown in the next picture.

Block diagram

In this model:

  • Inputs represent all information about the course that has to be created (like texts, images, audios);
  • Output is the package of the course to be published.

Features

The most important features concerning the Course Builder architecture are:

  • to have an application easily accessible by any user;
  • to get an user friendly interface for creating courses from the scratch in an easy way;
  • to edit and update the courses.

The solution

The Course Builder is a dynamic web application built on the Apache Web Server and PHP. This web application allows to access via web browser and by means of any type of client (PCs, Tablets, Smartphones, and so on). To access in the Course Builder see the How to access section. In order to provide the edit and update functionalities to users, it is necessary to use a database (in this case a MySQL was used). Finally, in order to create a packager (in Zip format) to publish the course to the FIWARE Academy, the ZIP functionality has been used. This feature is already available in the PHP modules, within the PHP installation.

Note: to handle (or add) the audio files some specific libs are required. In this application was used getid3 PHP API, available at http://getid3.sourceforge.net.

The architecture of the Course Builder is shown in the next figure.

Architecture

The web application requires the authentication by using username/password. To get the credentials, please see the How to access section in the Course Builder.

To get more information about the usage please see the Course Builder.

Installation of Course Builder application

The Course Builder is a web application developed using php that creates a package containing your presentation of the course as a slideshow.

The Course Builder needs the following inputs:

  • one picture for each slide of the course
  • a text description or an audio file explaining the content of each slide

What the Course Builder gives as an output is a package containing:

  • a static html application with javascript and css for browsing the course
  • a list of pictures with your slides
  • an audio file for each slide.

Environment

Course Builder needs a web server installed with PHP extension and a database where to store the data collected for producing the course. Moreover it needs a TTS (Text to Speech) system.

Tested proposal

The recommended configuration is:

  • Host OS: Ubuntu Server 14.04 64bit
  • Web server: Apache Server provided by APT service
  • PHP engine: PHP v5 provided by APT service
  • TTS System: Docker tts tool
  • Optional tool: PhpMyAdmin provided by APT service

Set up an environment

If you don't have it, install an Ubuntu server 14.04 64bit distribution. Then, open the console and type sudo apt-get update. When your system is up to date, open a console and install the packages you need:

  • Apache Server:
sudo apt-get install apache2
Then we have to set up the server name (we will use localhost) to prevent apache errors on starting up.
Create the configuration file in the "available" section
echo "ServerName localhost" | sudo tee /etc/apache2/conf-available/servername.conf
Enable it by creating a symlink to it from the "enabled" section
sudo a2enconf servername
Restart the server
sudo service apache2 restart
  • PHP extensions:
sudo apt-get install php5 libapache2-mod-php5 php5-mcrypt php5-curl
for some reasons the mcrypt module need to be explicitly enabled.
sudo php5enmod mcrypt
  • MySQL:
apt-get install mysql-server php5-mysql
Once it is installed it is a good idea reset the root password following this guide.

Optionally

  • PhpMyAdmin: apt-get install phpmyadmin
that install the web app in
/etc/phpmyadmin
Check if /etc/apache2/apache2.conf Apache Config file contains references to phpmyadmin, if not, then append the line Include /etc/phpmyadmin/apache.conf.

Install Docker

For first, check for any update. apt-get update After that, you can start to install wget
apt-get install wget
and then download and install the Docker
wget -qO- http://get.docker.com | sh
If you are behind a proxy you should use this command to add the apt-key to the apt-repository. Then the command changes in
wget -qO- https://get.docker.com/gpg | sudo apt-key add -

If you want to verify Docker installation run
docker run hello-world

To start TTS service type
docker run -d -p 59125:59125 fic2/fatts

And if you need to change the door to talk to it use
docker run -d -p TYPETHEPORT:59125 fic2/fatts

Install Lame MP3 Encoder

Lame is needed to merge TTS file with audio files provided by the users. As you can see in the official Lame documentation, in your server console you need just to type
apt-get install lame libmp3lame0

Install Course Builder Application

Download the package fiware-course-builder-0.3.0.zip file from fiware forge files page.
Unzip it into /var/www/course_builder.
Copy course_builder.conf file to /etc/apaches/conf-available folder. Check the file and modify the configuration if needed and then enable the configuration
sudo a2enconf course_builder
At the end reload apache configuration
sudo service apache2 reload

Configure PHP

Some default values of PHP interpreter need to be changed to increase session memory. Edit the file /etc/php5/apache2/php.ini and have these parameters:
memory_limit = 128M
post_max_size = 64M
upload_max_filesize = 64M

Initialize the Database

Extract from Course Builder zip file elearning.sql on your computer. Browse to http://servername:serverport/phpmyadmin/ and log-in using a privileged account for creating database (root account will work but for security reason is better to use someone else).

Login page of PhpMyAdmin web application

When you are authenticated, search in the toolbar the sheet "Database" and then create a new one.

Create database in PhpMyAdmin

Then switch to the "Import" page.

Import button in toolbox

In the "Import" page use the "Choose" button and browse to elearning.sql file. Go on to the end of import operation.

Choose file button in import page

Configure Apache

In order to set the Course Builder as the root application within this installation, edit
/etc/apache2/sites-available/000-default.conf
and replace the line DocumentRoot /var/www/html with /var/www/course_builder.
Verify that log file parameter is pointing to /var/log/apache2.

Configure Course Builder application

Edit application file config.php inside folder /var/www/course_builder/conf and set up these elements:

  • database connection
  • upload file destination path
  • url to reach dockner service
  • path to lame application
  • authentication method of users

Here is an example of config.php file:

<?php
/*
 * DATABASE
 */
$host = "localhost";
$dbuname = "root";
$dbpwd = "";
$database = "course_builder";
 
/*
 * Upload file destination path
 */
define("UPLOAD_DIR_ROOT","/var/www/course_builder/uploads/");
 
/*
 * Docker url
 */
$url_docker= "http://192.168.59.103:59125";
 
/*
 * La me configurations
 */
$path_lame = "/usr/bin/lame"; //path lame
$bitrate = 144; //8,16,24,32,40,48,56,64,80,96,112,128,144,160
$mode = "j"; //m/s/j/f/a
 
/*
 * Other configuration specific for Course Builder.
 */
$pause = 2; //pause in seconds between two audio files
 
/*
 * This is the suffix to add to the page memberauthusing***.php
 * to customize most the authentication criteria.
 * SEE: memberABSTRACT.php and other meber$authenticationmethod.php"
 * Now available are: DB FUSIONFORGE KEYROCK
 */
$authenticationmethod="KEYROCKBEHINDENGPROXY";
?>

Authentication of users in Course Builder

The authentication of users in Course Builder is designed to be implemented by using the Abstract Factory pattern. The abstract class is written inside memberABSTRACT.php file and it provides the implementation of every method but Authentication. This method is implemented by the concrete class that manages username and password in the needed user repository. The name of concrete class is composed by a prefix and a suffix: the suffix defines the method (eg: memberDB.php). You can use a provided method and implement your own in a different class file and changing the $authenticationmethod variable value in config.php file.

Authentication methods provided

You can use one of the methods provided insight the coursebuilder package such as:

  • DB: this method checks the user using a database
  • FusionForge: this way provides a method for authentication inside FusionForge user repository
  • FusionForge behind a proxy: use this method if your Course Builder has to cross a proxy to reach FusionForge
  • KeyRock GE: this implementation uses the Identity Manager provided by the Generic Enabler KeyRock
  • KeyRock GE behind a proxy: if you need to reach KeyRock and you are behind a proxy

FIWARE Academy platform

This section of the How-To describes the steps to be followed for publishing a course into the FIWARE Academy.

The publication of training material in the FIWARE Academy is restricted to:

  • partners of the FI-PPP programme;
  • users registered to the FIWARE Academy Platform.

Create a New Course

First, log into the FIWARE Academy by using the "Login" link at the right top of the home page.

Important: Please note that the authentication method is based on the FIWARE LDAP and to obtain the grants to create and publish new courses you have to send an email to fiware-elearning[at]lists[dot]fiware[dot]org.
In this email it's required to specify:

  • which is the FIWARE Chapter you are publishing for;
  • the FI-PPP project in case you are not a FIWARE partner.

Once logged-in to the platform with “Author” grants, to create a new learning course select the menu item "Available Courses" in the home page.

Select Available Courses



Select the course category, for which the course must be created, among those listed in the page. Please note that the FIWARE Academy shows and allows you to access all course categories. You can create a course in any category but editing for update features are available only for those courses you created or you are a "Contributor".

Select Course Category



Once selected the desired category, Click on Manage courses button in top right corner.

Manage courses



On new page, on right column, just under the selected category name, click on link "Create new course"

Create new course



The platform will show you a form where you have to enter all required info for the course settings to create the new course (mandatory fields are marked by asterisk). Insert full name and short name of the course. If the course is on a Generic Enabler implementation it's suggested to compose the names as "<Generic Enabler name> (<implementation name>)". Leave the "Visible" field to "Hide" since you don't have completed your course.

Course general info



Click on the question mark icon, near each field, to access the online guide and read more instructions and information. Do not change the value in the "Format" field, which is set by default to "Topics format" typology. Set the value of "Allow guest access" field to "Yes" in order to enable the access to the course also to not registered users. Select the Maximum upload size of a package that can be for example a SCORM course or a video. Then check all others field and change them if is necessary.

New Course configurations



Press the "SAVE AND DISPLAY" button, to save these settings for the course and proceed to manage course content. "Save and return" otherwise.

Save Changes



You will see a view about enrolled users on this course that you have to ignore and pass clicking on "PROCEED TO COURSE CONTENT" button.

Proceed to course content



Once the new course settings are saved, the platform shows a new page divided into a number of "Topic" (the number of topics can be changed/set-up in the initial form for creating the course). To each topic can be assigned activities and/or resources. It's a good practice to delete all empty/unused Topic entries. It's possible to add them again if needed, and the layout of the course has a better look.

Edit Topics List



The most relevant icons are detailed in the table below.

Icon Description
Add: to o access the form to insert new activities and/or resources for the topic
Move: to move the related topic in the list
Update: to access the form and set-up the values for the topic
Highlight: to highlight the related topic
Hide/Show: to toggle the visibility of the related topic
Delete: to delete the related topic



Click the "+ Add an activity or resource" button. You can add new activities or resources by selecting the desired one among those available in the left column list.

  • When you select an activity (or a resource), the related description is shown in the section on the right side of the page
  • Press the "Add" button to confirm and add the selected resource
  • For each activity (or resource) added, the platform will show you a specific related form to set-up the required parameters to load that activity.

SCORM Package

In the following example is shown how to load a new activity that is a "SCORM package" typology.

Add SCORM Resource



All mandatory fields (marked by the asterisk) must be filled-in. The SCORM package must be uploaded in a .zip format. All configuration parameters of this activity must be defined. Click on the question mark icon, near each field, to access the online guide and read more instructions and information.

It's suggested to follow a common approach for the configuration of the "Display settings" in order to create a homogeneous user experience.

Once all configuration parameters are defined, to confirm and add the new activity belonging to "SCORM package" typology, press the button "Save and return to course" or "Save and display".

Save SCORM Settings



URL

In order to publish a link (internal or external to the FIWARE Academy platform), select "URL" option under "Resources" section of "Add an activity or resource" dialog.

Select URL Resource



Insert the proper Name and Description and flag the "Display description on course page" option in case you want to publish the description text, in the topic box, under the URL Name.

The "URL Content" field is used to specify the actual location to open.

To determine how the URL is displayed it's possible to select among different values of the "Display" option. The two suggested values are:

  • Open: Only the URL is displayed in the browser window;
  • In pop-up: The URL is displayed in a new browser window without menus or an address bar (in this ase it's possible to adjust the size of the pop-up window).

The Automatic one do not always work as expected.

URL Options



Save the configuration and check the activity or go back to the course page.

Video

In order to publish a video, select "File" option under "Resources" section of "Add an activity or resource" dialog. In case of long video, it's suggested to split it, by topic, in parts no longer than 10 minutes each and use the sections of a course to rebuild the entire sequence. In this way it's also possible to provide a direct access to a specific part by reading the list of sections that compose the course.

Select File Resource



Name and description are mandatory as usual. Upload the file using the dedicated interface.
It is recommended to upload files in mp4 format.

Add File



Recommended option setting for the Display property is: In pop-up. In this way can be specified the proper width and height values.

Once all configuration parameters are defined, to confirm and add the new activity belonging to "File" typology, press the button "Save and return to course" or "Save and display".

Additional options on how to publish and embed a video can be found from the official documentation of Moodle: Working with Media:Video.

YouTube Video

To publish a video from YouTube, use the URL Resource item. Retrieve the embedded version of the video from YouTube page (e.g. www.youtube.com/embed/zCaoF7ssu2c) and paste it as "URL Content" value. In this case is highly suggested to use the In pop-up value as "Display" option.

RSS feed box

The RSS Box is a component that enables to retrieve a public RSS feed and to publish it in the page of the course. This component will contain a link to the external resources provided by the RSS feed. As component, it can be located in the side columns of the page of the course.

The steps to be followed to add an RSS feed box are described below.

  1. Log into the FIWARE Academy portal and browse in order to select the course
  2. Turn the Editing mode on
  3. Locate the Add a block panel at the bottom left column and select Remote RSS feed option.
    Course page in Edit mode
  4. The new block appears above the “Add a block” one.
  5. Move the block to desired position clicking on first grey icon.
    Moving block in page positions
  6. A pop-up with available position will be displayed.
    Chose block position
  7. Choose the position you want to move the block.
  8. To configure the content to show in the News Feed click on the configuration button.
  9. Once in the configuration page, add RSS feeds by clicking the “Add/edit feeds” link.
    RSS Feed module specific configuration
  10. The list of already configured feeds is presented.
    Previously configured feeds are listed
  11. Click on the "Add a new feed" button in order to define the details for the new feed to add:
    • Feed URL (mandatory)
    • Custom title
      RSS Feed as appears in the course page
  12. Once the desired feeds are added to the configuration of the component, go back to the main configuration page and select the feeds to display (multiple choices enabled).
    Configuring a remote feeds block
  13. Save the changes and Turn off the edit mode of the course page. The feeds are retrieved and displayed in the box accordingly with the configuration of the component.
    Feeds are retrieved and displayed in the box

StackOverflow tag link

In order to increase the number of users over the support tools and consequently to improve the level of support (also between users) it is recommended to create a dedicate Topic where to publish the direct link to the StackOverflow tag related to the Generic Enabler implementation.

It has been agreed that the pattern to follow for StackOverflow tags is: fiware-[GEi name].

An example related to the Orion Context Broker in: http://stackoverflow.com/questions/tagged/fiware-orion

  1. Create a new Topic with the proper title and description as it's possible to see in the next picture that shows the final result:
    StackOverflow Tag Topic
  2. Editing the Topic, it has to be created a URL resource in order to publish the link. The next picture shows an example of edit of this resource:
    Add StackOverflow Tag link

Once the topic that points to the StackOverflot tag is created, it is highly recommended to add, at the end of every official reply to a question in StackOverflow, a link to the FIWARE Academy entry related to the Generic Enabler.

Assign the Contributor role

Users having "Author" grants can assign the "Contributor" role to other user, so to allow them to work on a specific course.
To assign the "Contributor" role, log-in to the FIWARE Academy platform and follow the steps listed below: Select the menu item "Available Courses" from the main menu (top blue bar). Select and access the course for which you have "Author" grants and for which you want to assign the "Contributor" role to a specific user.
In "Administration" menu at the left side of the page, inside "Users", select the menu item: "Enrolled users".

Select Enrolled Users



The next steps that the Author has to follow are slightly different if the user is already subscribed to the course or not.

User not subscribed to the course

Press the "Enrol User" button.

Enrolled Users



Click to open the "Assign roles" drop down menu and select the "Contributor" option.
Click on the "Enrolment options" label, if you want to give a duration and define the start/end date of the enrolment.
Press the "Enrol" button, near the user you want to assign "Contributor" role.
Press the "Finish enrolling users" button.

Enrol Contributor



After this, the chosen user will be shown in the list having the "Contributor" role and will be able to work on the specific course he was authorized for as Contributor.

Contributor User



User subscribed to the course

Users having "Author" grants can assign the "Contributor" role to other users, so to allow them to work on a specific course. Starting from the Enrolled User page, press the "+" (plus) button, which is in the "Roles" column related to the user to whom you want to assign the "Contributor" role.

Add User Role



Select the "Contributor" label.

Select Contributor Role



Revoke the Contributor role

Users having "Author" grants can at any time revoke the "Contributor" role previously assigned to other users. To revoke the "Contributor" role, you have to log-in to the FIWARE Academy platform and follow the steps listed below.
Select the menu item "Available Courses".
Select and access the course for which you have "Author" grants and for which you want to revoke the "Contributor" role to a specific user.
Click on the menu item: "Users", listed in the "Settings" menu and search for and select the menu item: "Enrolled users".
Click on the "X" button, near the "Contributor" role related to the user for whom you want to revoke the "Contributor" role to a specific user.

Remove Contributor



Press "Remove" button and confirm the revocation.

Confirm Contributor Removal



Please note:

  • The revocation of "Contributor" role to a user does not mean to unsubscribe that user from the course. By using the "+" (plus) button, which is in the "Roles" column related to each user, that user can be given again the "Contributor" role at any time.
  • Users can be removed from the list and unsubscribed at any time, by using the "X" button, which is in the "Enrolment methods" column.
Remove Enrolled User



Editing "Course summary" field

An useful field for who is interested into a course is the field "Course summary" where the author or contributor should describe the course intents and give a easy abstract about course content.
To edit this field you must browse to the course you want edit and in the "Administration" menu click on "Edit settings" label.
It opens a new view where you can change lots of fields about course informations. In the "Description" section you can edit the "Course summary" too.

Editing Course summary

Course Availability [DEPRECATED]

Once performed all the steps to create and define the new course, it must be made available in the list of courses, in order to allow other users to access it. To make the course available:

  • Click on the menu item "Edit settings", in the menu "Settings" (left column);
  • Search for the "Availability" field and set the value to "This course is available to students";
  • Confirm this setting by pressing the "Save changes" button of the page.
Enable Course Visibility



To end the editing activities on a course, press the "Turn editing off" button of the page.

Turn Editing Off



To start editing again the activities on a given course, press the "Turn editing on" button of the page.

Course Evaluation for Efficient Training

The training material created and published to the FIWARE Academy is evaluated on the basis of the criteria listed below. Bearing in mind that the courses are publicly available, any user interested in using FIWARE must easily understand whether a given course does fit the user's need or not. Thus, in order to have an efficient training offering, by means of the FIWARE Academy, the following criteria must be addressed while creating and/or updating a training course.

NB.
Formal (F) requirements are the minimum set of usual criteria to be followed for creating/updating a training course. Formal criteria are namely related to the structure of the course and to its efficient output.
New Quality Assurance (QA) requirements were added. On the basis of QA criteria the published courses will get the “Not Good/Sufficient/Good” label by the QA team.


  1. The course title has to contain the GE/GEis name (if related to a GE).
    * Description: The course title must be explicitly referred to the GE. E.g.: “GE Name (GE Implementation Name)”.
    * Type: Mandatory | F
  2. The GE version must be evident and the course has to be updated to the latest version.
    * Description: Specify in the course which is the GE version to which the course refers to. Make sure that the course is up to date with the latest GE version.
    * Type: Mandatory | QA
  3. Each lesson has to clearly define its purpose and explaining its contents in exhaustive way.
    * Description: Each lesson (topic) must be self-consistent and clearly describe its purpose: what does the lesson teach? Which audience or community of users could be interested to this lesson?
    * Type: Recommended | QA
  4. The course must have an introduction about the GE/the context with a summary of the course itself.
    * Description: A clear introduction explaining what
    * Type: Mandatory | F
  5. The course must have an introduction about the GE/the context with a summary of the course itself.
    * Description: The introduction should describe the context and or the GE, and the scope of the course. It has to explain the purpose and the structure of the whole course
    * Type: Mandatory | QA
  6. An overview lesson giving a high level description of the Architecture must be present.
    * Description: An overview lesson on the general context is required.
    * Type: Mandatory | F
  7. An overview lesson giving a high level description of the Architecture must be present.
    * Description: The overview lesson has to describe at a high level the component or GE object of the course, the reference context, its architecture, its functionalities.
    * Type: Mandatory | QA
  8. Specific technical lessons are required, on main functionalities having dedicated external resources.
    * Description: The course must be organized with specific technical lessons on specific topics with dedicated external resources (video, audio, slides, docs, etc.). A description of each lesson (topic) is required.
    * Type: Mandatory | F
  9. Specific technical lessons are required, on main functionalities having dedicated external resources.
    * Description: The course must be organized with dedicated lessons describing single or group of functionalities, on specific topics, explaining how to implement them and to work with them. Each lesson has to include dedicated resources, declaring their type (video, audio, slides, docs, etc.).
    * Type: Mandatory | QA
  10. Video, Audio, Slides presentations must be not too long.
    * Description: The duration of each audio and or video resource included in the course must be about 10-15 minutes. It’s not acceptable to present the entire course in a unique video or slide presentation.
    * Type: Mandatory | QA
  11. Each lesson must have a meaningful title and the same for each (external) resource added to the lesson.
    * Description: Each lesson (topic) created must have a significant title (it’s not acceptable to read “topic 1”, “topic 2”, or “lesson 1”, “Lesson 2”, etc.). Each external resource included must have a meaningful title too.
    * Type: Mandatory | F
  12. External links must be available and have to contain updated information.
    * Description: Check any external link added to the course and verify that it does work and does contain information up to date.
    * Type: Mandatory | QA
  13. A short summary for displaying info (i) is required.
    * Description: The summary of the course (field “description”) must be present giving a short overview of the course.
    * Type: Mandatory | F
  14. A short summary for displaying info (i) is required.
    * Description: The summary/info (i) section (field “description”) must contain a brief statement on the topic/content (GE) the course deals with and a short summary on the course itself (its goals and structure). The summary must be useful to understand whether it is what the user is searching for.
    * Type: Mandatory | QA
  15. Lessons should contain external resources consisting of videos and/or (audio)slides.
    * Description: It is strongly recommended to use multimedia content, such as audio, video, slides, etc to give support to those willing to make use of the training course. Try to avoid to publish lessons having only written text or documentation explaining the topic.
    * Type: Recommended | QA
  16. The course should make available Use Cases, Examples and Exercises.
    * Description: Within the course it is recommended to introduce dedicated lessons or resources to describe specific Use Case stories related to the GE and reference context, as well as dedicated examples or exercises for implementation.
    * Type: Recommended | QA
  17. Availability of installation procedures, pre-requirements, and basic configurations.
    * Description: Within the course should be clearly mentioned references to any installation procedures, pre-requirements, and basic configurations.
    * Type: Recommended | QA
  18. Availability of technical support, discussion forum, “more info”.
    * Description: Add to the course: (a) links to forums; (b) contact email for technical support; (c) useful links to get more information.
    * Type: Recommended | QA


Additional small issues can be reported directly to the course editor (e.g. use the last FIWARE logo in slides; use the updated version of the SCORM player).
Please note that some criteria may have same definition but meaning different checks from a formal and a QA review (see the description).

Architecture

The architecture of the FIWARE Academy is described in this section, starting from the picture below where the most important components are represented.

Architecture

Moodle is the main component of this architecture and is installed in a Linux virtual machine that is running in a VM server farm. The Moodle service is exposed to the users through an Apache web server. This choice helps to manage the different web domains that point to the contents of the training platform.

The Repository is the storage area for all the uploaded objects (e.g. web seminar packages, videos, presentations). This Repository is configured as an external file system that can be expanded accordingly to the capacity needs.

All the components adopted are Open Source and were installed without any structural modifications. Most of the work was devoted to set up specific configurations of the system, as described in the next chapter.

Configuration

This section describes the most relevant configurations of the FIWARE Academy platform implemented in order to address technical and functional needs.


Categories

The training courses in the FIWARE Academy are mainly organized by technology (under the FIWARE top level category) and by operation (under the FIWARE Ops top level category).

The content under the FIWARE category is organized by Chapters, as done also in the FIWARE Catalogue. In this way, it's easier for users to browse and find the training material they are interested in.

The home page of the FIWARE Academy presents a collapsed version of the entire content structure that stops at the second level of depth (Chapters in the case of FIWARE branch). In brackets the number of available courses for each second level. Here below a screen-shot that shows how this categories structure is published.

Categories

From the top level menu (horizontal bar) the “Courses” entry, opens a page with the complete list of categories and courses; this page provides direct access to each category or course using the dedicated icons.

Available Courses

Both lists, the one in the home page and the one in the Available Courses page, present the contents accordingly to the permissions of the current user. Guest users can only see publicly available courses, while Authors and Contributors can also see hidden entries that they are allowed to work with.

Users Management

All the training courses are intended to be publicly available, thus end users are not required to create a personal account in the FIWARE Academy. At the same time, there is a set of configured roles that enables to properly manage the maintenance of the platform, the editing and the publication of the courses.

  • Administrator: this is the role used to manage the overall configuration of the platform and to define the permissions for the other roles; create the structure of categories used to publish the training material; assign the author role to users; access the activity log for monitoring the activities on the platform. The number of users that have this role is kept restricted.
  • Author: the author role is assigned to the users that need the permissions to create and manage all the preferences of a training course. Usually this role is associated with a specific category (e.g. a FIWARE Chapter) so that the author can create contents under that category and not elsewhere where this permission is not set.
  • Contributor: this role was created in order to define a user that supports the author in a specific course. The author itself can set who are the contributors for a course. The contributors can access to edit only the courses they are allowed to but they cannot edit all the courses under the same category.
  • Registered: the platform enables the user to auto-register. There aren't specific actions associated to this kind of role because of all the training material is intended to be published without restrictions.
  • Guest: this is the implicit role assigned to all the users that browse the platform in an anonymous mode (not logged in). This role enables all users to access to all the publicly available training courses.

All the users registered in the FIWARE Academy are stored in the default location provided by the platform itself (local database).

Content Storage

The various types of media content that can be uploaded into the FIWARE Academy platform are stored in a dedicated virtual drive (Repository) as represented in the architecture diagram. This solution allows to easily resizing the capacity of the storage in order to follow the actual demand by the authors.

Statistics

In order to monitor the usage of the FIWARE Academy a well known system was configured to track user navigation and other interesting information that are used to better tune the promotional activities to increase the fruition of the platform and the user experience design. The native configuration feature, available from the administration menu (Site Administration – Appearance – Additional HTML), enables to easily add and modify scripts to collect information. Here below are reported some diagrams taken, at the time of writing, from the analytic tool that highlight the increasing traffic (Sessions), and interest (Users) over time.

Sessions by Week
Users by Week

URLs

Academy platform is available to URL http://edu.fiware.org

Service Availability

The entire service (VM and Repository) is included in a disaster recovery strategy, based on periodic backups that prevent the data loss.

In detail the strategy is:

  • Full backup – weekly;
  • Incremental backup – daily;
  • Full backup retention of one month.

Install your Academy

Academy is based on moodle CMS. You can find here www.moodle.org. Now we based academy on version 2.9.2. You will need to install mysql server 5.5.10 or above and enable some php modules. You will be warned about modules you mast and modules you should during installation phases.

Minimum required installation check

For specific help please refere suggested moodle help pages.
After that you will wait some minutes while installer will create and populate database. When database is ready you will continue for last configurations.
About advanced moodle installation and configurations, please refer to moodle documentation.

Modules you need to activate

If you want use LDAP authentication, you need to activate the LDAP module and configure it. Please, refer to moodle documentation about installing and configure this module.

Change Admin Password

If you need to change Admin Password you can do it in 2 way: using the moodle way, editing the Admin user profile, or using a SQL statement in mysql. You need the salt you have in your config.php file and the id of the admin user; then, in a mysql console use the statement

UPDATE mdl_user SET password = MD5(CONCAT('new password','password salt copied from config.php')) where id = 'id of user admin'

Installing FIWARE Theme

Download academy FIWARE theme release from github or from forge files page.
If you download it from github, you should extract the "fiware" folder and then compress it in a zip file you will use to install. If you download package from forge you can use the package you got.
Log in in moodle as Administrator user (admin or user with same privileges) and open "Install plugin" page from "Plugins" menu in "Site administration" section.

Install theme from zip file

Select the zip theme file you downloaded and click on "Install plugin from the ZIP file" button. If an error about plugin type detection appeared, select "Theme" in "Plugin Type" field.

Choose Theme plugin type if requested

If validation Step passed, you could continue installing the plugin clicking on "Install plugin".

Plugin validation passed

Now you will asked to update information into database.

Plugin validation passed

After all a very long page will be displayed about new configurations for frontpage and lots of default values. If you don't have nothing to change, you can jump to the bottom and click on "Save changes" button. If any fields are required you will ask.
Now fiware theme is installed but needs to be selected. You can do it in "Theme selector" page of "Aparence">"Theme" menu of "Site administration" section.

Theme selection

Click on "Change theme" button of Default Section and choose FIWARE theme using the "Use theme" button.

ANNEX: Flash Web Seminar Player [DEPRECATED]

This guide is based on the package that contains the Web Seminar Player based on Flash technology and SCORM (http://scorm.com, Shareable Content Object Reference Model, the most important and widespread standard to build e-learning software) compliant. This player is available from the FIWARE Private project of the FIWARE forge and can be downloaded (credentials required) from:

fiware-scorm-packager

This user guide illustrates all technical steps needed in order to integrate informative content through the Web Seminar Player, Flash based.

Furthermore, the following features/controls are available by default:

  • Help;
  • Minimize;
  • Notes;
  • Print;
  • Usage commands.
Web Seminar Player Interface (Flash Player)

Versions

This part contains the list of available versions, reporting for each one the major changes and the steps to update a course made with the previous version.

Note: when opening a course, either from the eLearning platform or from a local file, and pressing the Start button, this alert message could be shown: "Connection to the tracking platform failed". This is not a problem for accessing the course, this only means that the SCORM information exchange between browser and server will not work due to compatibility issues. This SCORM information is collected for statistical reasons and will be used to report, for example, how many times a course has been accessed.
Starting from v1.2.0 this message has been removed in order to simplify the interaction with the user.

1.2.0
This version contains the updated version of the FIWARE theme and initial check for SCORM support is silent and do not notify the user.
To update a v1.0.1 to v1.2.0 must be replaced (do not override) the "engine" folder using the one taken from v1.2.0 package.

1.0.1
This version contains a bug-fix for the behavior of the left side menu.
To update a v1.0 to v1.0.1 must be replaced the "engine" folder using the one taken from v1.0.1 package.

1.0
First relase.

Project Folder

The root directory has a tree structure, as follows:

  • The "engine" folder, containing all files related to the Player and its support environments.
  • A dedicated folder for each lesson (e.g. TU01_LO01 in the next figure), containing all those files strictly related to the specific learning object.
  • The "imsmanifest.xml" file, which is the document defining the macro-structure of the learning course, based on SCORM standard.
  • A HTML file to launch each lesson (e.g. TU01_LO01.htm in the next figure), which runs the Player on your local machine.
Structure of the root folder

Lesson Folder

Each lesson (learning object) has a dedicated folder containing files strictly related to the specific learning object; this folder includes the following sub-folders:

  • "contents": folder containing the .xml file (sco.xml) defining the structure of the lesson;
  • "slide": folder containing the slides of the lesson in an image format file;
  • "print": folder containing the .pdf file to print the content of the lesson (e.g.: TU01_LO01.pdf);
  • "text": folder containing the xml file defining the title of each slide and visualization timing (e.g.: G1_M01_U01_S01.xml);
  • "video": folder containing the file with the audio track related to the lesson, in a .flv format (the file name is: video.flv).

The folder of each lesson contains also the "AC_RunActiveContent.js" and the "object.htm" file, which must not be deleted or modified.

Structure of the lesson folder

Audio Track

This section reports information on how to create the audio track to be used within the course. As already explained, it is required to create a specific file to be stored in the course package as video.flv. The instructions depend on the operating system that you are using.

Windows:
The assumption is to start having separated mp3 files for every slide of your presentation. To create the final audio track, in a single shot, it's possible to use Freemake Audio Converter (http://www.freemake.com/free_audio_converter/). The steps to be followed are:

  • open all the mp3 files;
  • flag the setting to concatenate all the mp3 files;
  • convert them in AAC format (use default settings);
  • rename the AAC file to video.flv and store it in the package.

Linux:
Starting from the final audio track in mp3 (single parts already concatenated) it's possible to create the AAC file using SoundConverter (http://soundconverter.org/). Once created, rename the AAC file to video.flv and store it in the package.

Slides

The slides used during the presentation are visible from the player and it's possible to download them from the dedicated button "Print" available from the user interface of the player.
It is suggested to create one version of the slides without header (title, logo, ...) and footer as images for the player, in order to maximize the area for presenting contents; while another version with header and footer as pdf file for the printable option.

Ten Steps to Prepare the Package

This user guide is linked to the .zip package containing the whole structure in order to create a lesson by means of the Web Seminar Player.

To create a lesson the steps listed below must be followed:

  1. Unzip the package "fiware-scorm-packager-[X.Y].zip"
  2. Open the folder "TU01_L01"
  3. Open the folder "contents"
    1. Open the "sco.xml" file, by using an xml editor
    2. Write the title of the teaching unit in the row nr. 5
    3. Write the title of the lesson in the row nr. 8
    4. Save the “sco.xml“ file after these modifications
  4. Open the folder “slide” (sub-folder of "TU01_L01")
    1. Copy in this folder the slides related to the lesson. Images must be:
      • saved in a .jpg format. Width: 670 pixels; height: 503 pixels; resolution: 72 dpi; colour representation: RGB
      • named by using a numerical sequence (e.g.: n°.jpg) to give the sequential order in which the slides will be shown during the lesson (e.g.: 1.jpg; 2.jpg; 3.jpg; ...)
      • the file extension must be lowercase (.jpg). The player is case sensitive.
  5. Open the folder "video" (sub-folder of "TU01_L01")
    1. Copy in this folder the file with the audio component of the whole lesson in a .flv format, the file must be named "video.flv"
  6. Open the folder "text" (sub-folder of "TU01_L01")
    1. Open the "G1_M01_U01_S01.xml" file by using a xml editor
      • In this file must be added, between the opening tag <texts> and the closing tag </texts>, as many rows <text cuepoint="0.00" name="Title Slide"></text> as the number of slides of the lesson to be shown. For each row inserted, the player engine will show, in progressive order, the slide images (e.g.: 1.jpg; 2.jpg; 3.jpg; ...) that are in the "slide" folder (see step 4).
      • For each row inserted it must be specified the timing (in seconds), when each slide must be shown, giving a value to the attribute "cuepoint" (0.00) with the needed one (e.g.: 25.00). Each slide image (e.g.: 1.jpg; 2.jpg; 3.jpg; ...) will be shown at the given second specified for the attribute "cuepoint" in the row related to that slide.
      • For each row inserted it must be specified the title of the related slide, giving a value to the attribute "name" (Title of the Slide) and writing the appropriate one. For each slide, the value of the attribute "name", in the related row, will be shown as title of the slide in the index (see Figure: Web Seminar Player Interface).
      • For example the slide image 1.jpg in the "slide" folder will be shown with the title given to the attribute "name" at the second defined for the attribute "cuepoint" (e.g. in the first row: <text cuepoint="0.01" name="Title Slide nr 1"></text>); the slide image 2.jpg will be shown with the title given to the attribute "name" at the second defined for the attribute “cuepoint” (e.g. in the second row: <text cuepoint="60.00" name=" Title Slide nr 2"></text>); and so on.
      • Save the “G1_M01_U01_S01.xml” after these modifications
  7. Open the "imsmanifest.xml" file (in the root folder) by using an xml editor
    1. Write the title of the learning course in the row nr. 5
    2. Write the title of the teaching unit in the row nr. 7
    3. Write the title of the lesson in the row nr. 9
    4. Save the "imsmanifest.xml" file
  8. Open the folder "print" (sub-folder of "TU01_L01")
    1. Copy in this folder the print document, in a .pdf format, containing the content of the lesson, the file must be named "TU01_LO01.pdf"
  9. Create again the package by compressing all the folders and files in a .zip format, please note that the "imsmanifest.xml" file must be in the root directory of the [course package].zip
  10. Publish the course in the [course package].zip archive to the eLearning platform, following the indications reported in the proper manual.

At any time during the course creation it's possible to test it locally opening the TU01_LO01.htm file located in the root folder.

Note: The eLearning platform enables to upload files of no more than 100M. It is suggested to split the course and upload the different packages as Topics under the same course configuration.

FAQ

Q: I can't run the course locally because the Flash player is blocking it for "potentially unsafe operation".
A: This is Flash player configuration. It's possible to change it by opening http://www.macromedia.com/support/documentation/en/flashplayer/help/settings_manager04.html the configuration web page and by setting the "always allow" option.

Q: When I open a course (locally or from the eLearning platform), after the loading step, I get this message "Connection to the tracking platform failed". What's the problem?
A: You're using a browser that's not supported by the Web Seminar Player for exchanging SCORM messages. This do not impact in your access to the course, just click on "Proceed without tracking".

Q: When I upload the course package (.zip) into the platform I get the message "Incorrect file package - missing imsmanifest.xml or AICC structure". What should I have to do?
A: You have to carefully read the manual :-) ... The imsmanifest.xml file has to be located in the root of the archive and not in an internal folder. If you build your course into a folder "MyCourse" you have to package the content of this folder and not the "MyCourse" folder itself. Starting from v1.2.0 this message has been removed.

Q: When I play the course (locally and from the platform), I don't see some slides (white page) even if the track audio and the transitions work as expected.
A: Check the file name of the images into the slide folder. They must be all lowercase, name and extension (e.g. 1.jpg, 2.jpg ...).


Personal tools
Create a book