D3.1.4.1 FIWARE Academy USer guide

D3.1.4.1 FIWARE Academy USer guide
Private Public Partnership Project (PPP)
Large-scale Integrated Project (IP)
D.31.4.1 FIWARE Academy User Guide
Project acronym: FI-Core
Project full title: Future Internet - Core
Contract No.: 632893
Strategic Objective: FI.ICT-2011.1.7 Technology foundation: Future Internet Core Platform
Project Document Number: ICT-2013-FI-632893-WP31- D.31.4.1 FIWARE Academy User Guide
Project Document Date: 2015-09-30
Deliverable Type and Security: R /PU
Author: E-IIS
Contributors: Davide Dalle Carbonare (E-IIS), Lorenzo Eccher (E-IIS), Pasquale Vitale (E-IIS)
Future Internet Core Platform
1 Preface
1.1
Executive summary
This User Guide documents to the users about the FIWARE Academy, the features offered by its tools and
how they can be used and exploited. This deliverable is associated to the D.31.2.1 – FIWARE Academy
SW Release, and it’s referred to the SW tools delivered within the FIWARE Academy for FIWARE Release
4.
1.2
Intended Audience
This document provides information on the FIWARE Academy platform, its architecture and its tools to
create, edit and update training courses to the FIWARE Academy, thus it is useful to anyone interested in
creating, updating and publishing courses to the FIWARE Academy.
1.3
Structure of this Document
This User Guide provides information to produce training courses for the FIWARE Academy
(edu.fiware.org). This Guide is publicly available through the FIWARE wiki through at the page “Working
with the FIWARE Academy” where the content is continuously updated.
The sections “Web Seminar Player” and “Course Builder” describes how to create, update and edit
courses to the FIWARE Academy.
The section FIWARE Academy Platform explains how to publish a course, set the content of training
course, manage the contributors to the course, the Architecture and the Configuration of the platform.
The ANNEX contains the guide for the previous deprecated Flash Web Seminar Player used to create
courses SCORM compliant to be published to the FIWARE Academy.
1.4
Keyword list
FIWARE, FIWARE GEs, FIWARE Academy, Training courses, eLearning platform.
D31.4.1 - FIWARE Academy User Guide
2
Future Internet Core Platform
1.5
Change History
Release Major changes description
Date
Editor
V1
Adapted content from the wiki to the doc
23/09/2015 Laura Pucci (E-IIS)
format. Preface.
V2
First review
24/09/2015 Davide Dalle Carbonare (E-IIS)
V3
Reviewed by TID
25/09/2015 Miguel Carrillo Pacheco (TID)
V4
Final version addressing comments from TID
Davide Dalle Carbonare (E-IIS),
29/09/2015
and text formatting
Laura Pucci (E-IIS)
1.6
1
Table of Contents
Preface .................................................................................................................................................. 2
1.1
Executive summary ....................................................................................................................... 2
1.2
Intended Audience ........................................................................................................................ 2
1.3
Structure of this Document........................................................................................................... 2
1.4
Keyword list ................................................................................................................................... 2
1.5
Change History .............................................................................................................................. 3
1.6
Table of Contents .......................................................................................................................... 3
2
Introduction .......................................................................................................................................... 7
3
Web Seminar Player .............................................................................................................................. 8
3.1
Versions ......................................................................................................................................... 9
3.2
Project Folder ................................................................................................................................ 9
3.3
Custom files for the eLearning course ........................................................................................ 10
3.4
Seven steps to prepare the package ........................................................................................... 11
3.5
Custom Look & Feel .................................................................................................................... 12
3.5.1
Header Images .................................................................................................................... 13
3.5.2
CSS ....................................................................................................................................... 13
D.31.4.1 FIWARE Academy User Guide
3
Future Internet Core Platform
4
Course Builder ..................................................................................................................................... 15
4.1
Introduction ................................................................................................................................ 15
4.2
How to access.............................................................................................................................. 15
4.2.1
Login .................................................................................................................................... 15
4.2.2
User database and user profiles .......................................................................................... 16
4.2.3
Logout ................................................................................................................................. 17
4.2.4
Specificity of each provided method................................................................................... 17
4.2.4.1
DB authentication method.................................................................................................. 17
4.2.4.2
FusionForge authentication method................................................................................... 17
4.2.4.3
IDM authentication method ............................................................................................... 18
4.2.5
Customize the authentication method ............................................................................... 18
4.2.5.1
Example using external DB .................................................................................................. 18
4.3
How to work ................................................................................................................................ 19
4.3.1
Create a new course ............................................................................................................ 19
4.3.2
List courses .......................................................................................................................... 20
4.3.3
Edit a course ........................................................................................................................ 21
4.3.4
Sharing the course .............................................................................................................. 21
4.3.5
Managing the slides ............................................................................................................ 22
4.3.5.1
Add Slide ............................................................................................................................. 22
4.3.5.2
Preview................................................................................................................................ 24
4.3.5.3
Download ZIP ...................................................................................................................... 25
4.4
Manage users .............................................................................................................................. 26
4.4.1
Insert users .......................................................................................................................... 26
4.4.2
Edit users ............................................................................................................................. 27
4.4.3
Delete users......................................................................................................................... 27
4.5
Architecture ................................................................................................................................ 29
4.5.1
Design .................................................................................................................................. 29
4.5.2
Features ............................................................................................................................... 29
4.5.3
The solution ........................................................................................................................ 29
4.6
Installation of Course Builder application ................................................................................... 30
4.6.1
Environment ........................................................................................................................ 31
D.31.4.1 FIWARE Academy User Guide
4
Future Internet Core Platform
5
4.6.1.1
Tested proposal ................................................................................................................... 31
4.6.2
Set up an environment ........................................................................................................ 31
4.6.3
Install Docker ....................................................................................................................... 32
4.6.4
Install Lame MP3 Encoder ................................................................................................... 33
4.6.5
Install Course Builder Application ....................................................................................... 33
4.6.5.1
Configure PHP ..................................................................................................................... 33
4.6.5.2
Initialize the Database ......................................................................................................... 34
4.6.5.3
Configure Apache ................................................................................................................ 36
4.6.5.4
Configure Course Builder application ................................................................................. 36
4.6.6
Authentication of users in Course Builder .......................................................................... 37
4.6.6.1
Authentication methods provided ...................................................................................... 37
FIWARE Academy platform ................................................................................................................. 38
5.1
Create a New Course ................................................................................................................... 38
5.1.1
SCORM Package .................................................................................................................. 45
5.1.2
URL ...................................................................................................................................... 48
5.1.3
Video ................................................................................................................................... 50
5.1.3.1
YouTube Video .................................................................................................................... 52
5.1.4
RSS feed box ........................................................................................................................ 53
5.2
Assign the Contributor role ......................................................................................................... 59
5.2.1
User not subscribed to the course ...................................................................................... 60
5.2.2
User subscribed to the course ............................................................................................. 63
5.2.3
Revoke the Contributor role................................................................................................ 63
5.3
Course Availability ....................................................................................................................... 65
5.4
Course Evaluation for Efficient Training ...................................................................................... 67
5.5
Architecture ................................................................................................................................ 68
5.6
Configuration .............................................................................................................................. 69
5.6.1
Categories............................................................................................................................ 69
5.6.2
Users Management ............................................................................................................. 72
5.6.3
Content Storage .................................................................................................................. 73
5.6.4
Statistics .............................................................................................................................. 73
5.6.5
URLs..................................................................................................................................... 74
D.31.4.1 FIWARE Academy User Guide
5
Future Internet Core Platform
5.6.6
6
Service Availability .............................................................................................................. 74
ANNEX 1 - Flash Web Seminar Player [DEPRECATED] ......................................................................... 75
Versions ................................................................................................................................................... 76
Project Folder .......................................................................................................................................... 76
Lesson Folder .......................................................................................................................................... 77
Audio Track.............................................................................................................................................. 77
Slides ....................................................................................................................................................... 78
Ten Steps to Prepare the Package ........................................................................................................... 78
FAQ .......................................................................................................................................................... 80
D.31.4.1 FIWARE Academy User Guide
6
Future Internet Core Platform
2 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.
D.31.4.1 FIWARE Academy User Guide
7
Future Internet Core Platform
3 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:
https://github.com/fiware-academy/player/
The last version available is:
https://github.com/fiware-academy/player/archive/fiware-academy-course-player-0.3.1.zip
 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.
D.31.4.1 FIWARE Academy User Guide
8
Future Internet Core Platform
Figure 1 - Player Web Seminar Interface (HTML Player)
3.1
Versions
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
3.2
Project Folder
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.
D.31.4.1 FIWARE Academy User Guide
9
Future Internet Core Platform
 A HTML file (course.html), which shows the course in the popup window.
 A favourite 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.
Figure 2 - Structure of the root directory
3.3
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).
D.31.4.1 FIWARE Academy User Guide
10
Future Internet Core Platform
3.4
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.1.zip”
2. Open the folder “slide”
i.
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”
i.
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
i.
Open the “cuepoints.xml” file by using a xml editor
ii.
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).
iii.
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.
iv.
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.
v.
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.
vi.
Save the “cuepoints.xml” after these modifications
5. Set the “audio” file
i.
Create and copy the audio file of the whole lesson in an .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
D.31.4.1 FIWARE Academy User Guide
11
Future Internet Core Platform
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
3.5
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.
Figure 3 - HTML Player - header and style files
D.31.4.1 FIWARE Academy User Guide
12
Future Internet Core Platform
3.5.1
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/.
Figure 4 - 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.
3.5.2
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;
D.31.4.1 FIWARE Academy User Guide
13
Future Internet Core Platform
}
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).
D.31.4.1 FIWARE Academy User Guide
14
Future Internet Core Platform
4 Course Builder
4.1
Introduction
The course builder is a web application to easily create courses for the FIWARE Academy. The application
is available via web browser at this link http://130.206.81.88/1
4.2
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:



4.2.1
DB: uses JDBC connection to store and authenticate the users.
FUSIONFORGE: uses a fusion forge user repository.
KEYROCK: uses the Identity Manager implemented by the General Enabler KeyNote.
Login
Figure 5 – Login
To access the Course Builder application, available at http://130.206.81.88/, type "Username" and
"Password" in the login form and click on the "Enter" button to login.
1
DNS name configuration is in progress.
D.31.4.1 FIWARE Academy User Guide
15
Future Internet Core Platform
4.2.2
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;
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.
Figure 6 - Login details
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.
D.31.4.1 FIWARE Academy User Guide
16
Future Internet Core Platform
Finally, through the horizontal menu any user (manager and administrator) can:


4.2.3
change the password;
logout.
Logout
You can logout from the web application by using the "Logout" link in the horizontal menu.
Figure 7 – Logout
4.2.4
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.
4.2.4.1
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.
4.2.4.2
FusionForge authentication method
In config.php file you have to set FUSIONFORGE as value for $authenticationmode. This variable is
used to load the class defined 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
D.31.4.1 FIWARE Academy User Guide
17
Future Internet Core Platform
FUSIONFORGEBEHINDPROXY
and
check
memberFUSIONFORGEBEHINDPROXY.php file.
4.2.4.3
proxy
authentication
parameter
in
IDM authentication method
In config.php file you have to set KEYROCK as value for $authenticationmode. This variable is used
to load the class defined 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.
4.2.5
Customize the authentication method
Course Builder uses 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.
4.2.5.1
Example using external DB
Let's start from DB method and adapt the new class to use an external DB to authenticate the user.
1.
2.
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');
D.31.4.1 FIWARE Academy User Guide
18
Future Internet Core Platform
$qry = "Select * from USERTABLE where
PASSWORD='".md5($password)."'";
$result = $this->_connection->query($qry);
USERNAME='$username'
and
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
...
}
3.
set in config.php the $authenticationmethod='DBEXT'.
Now you are ready to authenticate to the new DBMSHow to work.
4.3
How to work
4.3.1
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.
Figure 8 - 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.
D.31.4.1 FIWARE Academy User Guide
19
Future Internet Core Platform
The next figure shows that the course was successfully created and inserted.
Figure 9 - Create a course with successfully
4.3.2
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.
Figure 10 - 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 X icon to delete the course. Please note that after that you will lose everything related to
that course.
Figure 11 - Delete course
D.31.4.1 FIWARE Academy User Guide
20
Future Internet Core Platform
4.3.3
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.
Figure 12 - Course overview
Note: use the BACK button to return to the list of courses.
4.3.4
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 this icon and then manage the users list:
Figure 13 - 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).
D.31.4.1 FIWARE Academy User Guide
21
Future Internet Core Platform
4.3.5
Managing the slides
The slide section allows managing slides in course. The information available for each slide are Order,
Name, Image, Audio, Move, Edit and Delete.
Figure 14 - Add slide
Some actions can be performed directly in the row of the table:






shows the picture loaded as slide
makes you listening the audio associated to the slide
moves the slide one step upper
moves the slide one step lower
opens the page to edit the slide
deletes the slide
Additional actions can be performed by using the buttons
,
and
.
If no slide are available (for example when you have just created the new course), the buttons
and
4.3.5.1
Click on
are disabled.
Add Slide
button.
D.31.4.1 FIWARE Academy User Guide
22
Future Internet Core Platform
Figure 15 - 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
to save the slide. If something goes wrong a message
will appear reporting it (depending on the type of error, sometimes the slide is saved anyway as a slide of
the course).
D.31.4.1 FIWARE Academy User Guide
23
Future Internet Core Platform
Figure 16 - Add slides to course
By clicking on BACK you will be shown the course detail page.
Figure 17 - 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.
4.3.5.2
Preview
This feature creates the course and shows you how it is. It opens a new page where the course will start
D.31.4.1 FIWARE Academy User Guide
24
Future Internet Core Platform
Figure 18 - Start the preview
4.3.5.3
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.
Figure 19 - 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.
D.31.4.1 FIWARE Academy User Guide
25
Future Internet Core Platform
4.4
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.
4.4.1
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.
Figure 20 - 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.
D.31.4.1 FIWARE Academy User Guide
26
Future Internet Core Platform
4.4.2
Edit users
The administrator can edit information about any user by using the "edit user" link in the "users" submenu. 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.
Figure 21 - 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.
Figure 22 - 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.
4.4.3
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.
D.31.4.1 FIWARE Academy User Guide
27
Future Internet Core Platform
Figure 23 - 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.
Figure 24 - 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.
Figure 25 - Delete user error
D.31.4.1 FIWARE Academy User Guide
28
Future Internet Core Platform
4.5
Architecture
This document describes the general architecture of the Course Builder application, developed within
the FIWARE project.
4.5.1
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.
Figure 26 - Block diagram
In this model:


4.5.2
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:



4.5.3
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
D.31.4.1 FIWARE Academy User Guide
29
Future Internet Core Platform
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.
Figure 27 – 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.
4.6
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
D.31.4.1 FIWARE Academy User Guide
30
Future Internet Core Platform

4.6.1
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.
4.6.1.1
Tested proposal
The recommended configuration is:





4.6.2
Host OS: Ubuntu Server 14.04 64bit
Web server: [httpd.apache.org 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
available/servername.conf
Enable it by creating a symlink to it from the "enabled" section
/etc/apache2/conf-
sudo a2enconf servername<code>
Restart the server<code>
sudo service apache2 restart

PHP extensions:
<code>sudo apt-get install php5 libapache2-mod-php5 php5-mcrypt
php5-curl
for some reasons the mcrypt module need to be explicitly enabled.
D.31.4.1 FIWARE Academy User Guide
31
Future Internet Core Platform
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
4.6.3
Install Docker
For first, check for any update:
apt-get update
After
that,
you
can
start
to
install
[www.gnu.org/software/wget/
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
ok
D.31.4.1 FIWARE Academy User Guide
32
Future Internet Core Platform
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
4.6.4
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, an ubuntu distro you need just to type apt-get install lame libmp3lame0
4.6.5
Install Course Builder Application
Download the package fiware-course-builder-0.2.0.zip
Unzip it into /var/www/course_builder.
file
from
fiware
forge
files
page.
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
4.6.5.1
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
D.31.4.1 FIWARE Academy User Guide
33
Future Internet Core Platform
4.6.5.2
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).
Figure 28 - Login page of PhpMyAdmin web application
When you are authenticated, search in the toolbar the sheet "Database" and then create a new one.
D.31.4.1 FIWARE Academy User Guide
34
Future Internet Core Platform
Figure 29 - Create database in PhpMyAdmin
Then switch to the "Import" page.
Figure 30 - 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.
Figure 31 - Choose file button in import page
D.31.4.1 FIWARE Academy User Guide
35
Future Internet Core Platform
4.6.5.3
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.
4.6.5.4
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 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
D.31.4.1 FIWARE Academy User Guide
36
Future Internet Core Platform
/*
* 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";
?>
4.6.6
Authentication of users in Course Builder
The authentication of users in Course Builder is designed to be implemented by using the Abstract
Factory2 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 (e.g.: 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.
4.6.6.1
Authentication methods provided
You can use one of the methods provided insight the Course Builder package such as:





2
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
https://en.wikipedia.org/wiki/Abstract_factory_pattern
D.31.4.1 FIWARE Academy User Guide
37
Future Internet Core Platform
5 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:


5.1
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.
Figure 32 - Select Available Courses
D.31.4.1 FIWARE Academy User Guide
38
Future Internet Core Platform
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".
Figure 33 - Select Course Category
Once selected the desired category, first start the editing process by clicking on the menu item "Turn
editing on", shown by the "Settings" menu.
D.31.4.1 FIWARE Academy User Guide
39
Future Internet Core Platform
Figure 34 - Turn Editing On
Then press the "Add a new course" button in the same page.
Figure 35 - Add a 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>)".
D.31.4.1 FIWARE Academy User Guide
40
Future Internet Core Platform
Figure 36 - Course names
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. Use the "Availability" field to set whether your course must be shown or not
in the list of available courses. Please note that the default value is "not available".
D.31.4.1 FIWARE Academy User Guide
41
Future Internet Core Platform
Figure 37 - Edit Course Settings
Select the Maximum upload size of a package that can be for example a SCORM course or a video.
Figure 38 - Max Upload Size
D.31.4.1 FIWARE Academy User Guide
42
Future Internet Core Platform
Press the "Save changes" button, to confirm the chosen settings for the course.
Figure 39 - Save Changes
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 is possible to add them again if needed, and the layout of the course has a better look.
D.31.4.1 FIWARE Academy User Guide
43
Future Internet Core Platform
Figure 40 - Edit Topics List
The most relevant icons are detailed in the table below.
D.31.4.1 FIWARE Academy User Guide
44
Future Internet Core Platform
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.



5.1.1
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.
D.31.4.1 FIWARE Academy User Guide
45
Future Internet Core Platform
Figure 41 - Add SCORM Resource
All mandatory fields (marked with an 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.
D.31.4.1 FIWARE Academy User Guide
46
Future Internet Core Platform
Figure 42 - SCORM Resource Settings
It is suggested to follow a common approach for the configuration of the "Display settings" in order to
create a homogeneous user experience.
D.31.4.1 FIWARE Academy User Guide
47
Future Internet Core Platform
Figure 43 - SCORM display settings
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".
Figure 44 - Save SCORM Settings
5.1.2
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.
D.31.4.1 FIWARE Academy User Guide
48
Future Internet Core Platform
Figure 45 - 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
Figure 46 - URL Name and Description
D.31.4.1 FIWARE Academy User Guide
49
Future Internet Core Platform
The "URL Content" field is used to specify the actual location to open.
Figure 47 - URL Content
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 case it's possible to adjust the size of the pop-up window).
The Automatic one do not always work as expected.
Figure 48 - URL Options
Save the configuration and check the activity or go back to the course page.
5.1.3
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
D.31.4.1 FIWARE Academy User Guide
50
Future Internet Core Platform
possible to provide a direct access to a specific part by reading the list of sections that compose the
course.
Figure 49 - 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.
Figure 50 -Add File
D.31.4.1 FIWARE Academy User Guide
51
Future Internet Core Platform
Recommended option setting for the Display property is: In pop-up. In this way can be specified the
proper width and height values.
Figure 51 - Video Options
Additional options on how to publish and embed a video can be found from the official documentation
of Moodle: Working with Media:Video.
5.1.3.1
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.
D.31.4.1 FIWARE Academy User Guide
52
Future Internet Core Platform
Figure 52 - YouTube Video
5.1.4
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.
D.31.4.1 FIWARE Academy User Guide
53
Future Internet Core Platform
Figure 53 - Course page in Edit mode
4. The new block appears above the “Add a block” one.
Figure 54 - New block in course page
D.31.4.1 FIWARE Academy User Guide
54
Future Internet Core Platform
5. Move the block to desired position clicking on first grey icon.
Figure 55 - Moving block in page positions
6. The page reloads highlighting the options for the available places with dashed-line rectangles.
Figure 56 - Page showing available positions
7. Click on one of the rectangles to move the block there. The page reloads again with the block
moved to the new position.
8. To configure the content to show in the News Feed click on the configuration button.
D.31.4.1 FIWARE Academy User Guide
55
Future Internet Core Platform
Figure 57 - Configuring the module
9. Once in the configuration page, add RSS feeds by clicking the “Add/edit feeds” link.
Figure 58 - RSS Feed module specific configuration
10. The list of already configured feeds is presented.
D.31.4.1 FIWARE Academy User Guide
56
Future Internet Core Platform
Figure 59 - 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
Figure 60 - 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).
D.31.4.1 FIWARE Academy User Guide
57
Future Internet Core Platform
Figure 61 - 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.
D.31.4.1 FIWARE Academy User Guide
58
Future Internet Core Platform
Figure 62 - Feeds are retrieved and displayed in the box
5.2
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.
Figure 63 - Select Users
D.31.4.1 FIWARE Academy User Guide
59
Future Internet Core Platform
Select the menu item: "Enrolled users".
Figure 64 - 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.
5.2.1
User not subscribed to the course
Press the "Enrol User" button.
D.31.4.1 FIWARE Academy User Guide
60
Future Internet Core Platform
Figure 65 - 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
Press the "Finish enrolling users" button.
D.31.4.1 FIWARE Academy User Guide
user
you
want
to
assign
"Contributor"
61
role.
Future Internet Core Platform
Figure 66 - 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.
Figure 67 - Contributor User
D.31.4.1 FIWARE Academy User Guide
62
Future Internet Core Platform
5.2.2
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.
Figure 68 - Add User Role
Select the "Contributor" label.
5.2.3
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.
D.31.4.1 FIWARE Academy User Guide
63
Future Internet Core Platform
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.
Figure 69 - Remove Contributor
Press "Remove" button and confirm the revocation.
Figure 70 - 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.
D.31.4.1 FIWARE Academy User Guide
64
Future Internet Core Platform
Figure 71 - Remove Enrolled User
5.3
Course Availability
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.
D.31.4.1 FIWARE Academy User Guide
65
Future Internet Core Platform
Figure 72 - Enable Course Visibility
To end the editing activities on a course, press the "Turn editing off" button of the page.
D.31.4.1 FIWARE Academy User Guide
66
Future Internet Core Platform
Figure 73 - Turn Editing Off
To start editing again the activities on a given course, press the "Turn editing on" button of the page.
5.4
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 be helped in easily understanding whether a given course does fit the user's need or not.
Thus, in order to have an efficient training offering through the FIWARE Academy, it is strongly
recommended to follow these criteria while creating/updating training courses.







the course title is mandatory and has to contain the GE and Implementation names, e.g. "GE
Name (Impl. Name)";
use the last available Web Seminar course player;
a short summary (introduction) of the course is required and has to explain what is the purpose
of the whole course;
a meaningful title for each topic is required (for each resource added to the course);
a short description of each topic is required explaining what that resource is useful for (e.g. video
on how to install, webinar on how to use, ...);
publish video/presentations possibly no longer than 10 mins per topic. Starting from a long
recording, it's possible to rebuild the structure of the entire presentation using the sequence of
topics;
keep only relevant content in the videos (especially if recorded during webinars, remove useless
discussions, long silences, webinar setup operations, ...).
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).
D.31.4.1 FIWARE Academy User Guide
67
Future Internet Core Platform
5.5
Architecture
The architecture of the FIWARE Academy is described in this section, starting from the picture below
where the most important components are represented.
Figure 74 – 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.
D.31.4.1 FIWARE Academy User Guide
68
Future Internet Core Platform
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.
5.6
Configuration
This section describes the most relevant configurations of the FIWARE Academy platform implemented
in order to address technical and functional needs.
5.6.1
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.
Figure 75 – Categories
D.31.4.1 FIWARE Academy User Guide
69
Future Internet Core Platform
From the top level menu (horizontal bar) the “Available Courses” entry, opens a page with the complete
list of categories and courses; this page provides direct access to each listed course.
D.31.4.1 FIWARE Academy User Guide
70
Future Internet Core Platform
Figure 76 - Available Courses
D.31.4.1 FIWARE Academy User Guide
71
Future Internet Core Platform
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.
Top level categories (FIWARE and FIWARE Ops) have associated two different themes, in order to follow
the brand identity that was developed and established for them.
Figure 77 - FIWARE theme
Figure 78 - FIWARE Ops theme
5.6.2
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
D.31.4.1 FIWARE Academy User Guide
72
Future Internet Core Platform
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).
5.6.3
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
5.6.4
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.
D.31.4.1 FIWARE Academy User Guide
73
Future Internet Core Platform
Figure 79 - Sessions by Week
Figure 80 - Users by Week
5.6.5
URLs
The access to the main page of the FIWARE Academy is done via edu.fiware.org; in order to give access
to the FIWARE Ops category the dedicated URL edu.fi-xifi.eu was defined.
5.6.6
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.
D.31.4.1 FIWARE Academy User Guide
74
Future Internet Core Platform
6 ANNEX 1 - Flash Web Seminar Player [DEPRECATED]
This guide is based on the package that contains the Web Seminar Player based on Flash technology and
SCORM[1] 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.
Figure 81 - Web Seminar Player Interface (Flash Player)
D.31.4.1 FIWARE Academy User Guide
75
Future Internet Core Platform
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 behaviour 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 release.
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.
D.31.4.1 FIWARE Academy User Guide
76
Future Internet Core Platform
Figure 82 - 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.
Figure 83 - 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
D.31.4.1 FIWARE Academy User Guide
77
Future Internet Core Platform
final audio track, in a single shot, it's possible to use Freemake
(http://www.freemake.com/free_audio_converter/). The steps to be followed are:




Audio
Converter
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")
D.31.4.1 FIWARE Academy User Guide
78
Future Internet Core Platform
6.
7.
8.
9.
10.
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"
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
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
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"
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
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.
D.31.4.1 FIWARE Academy User Guide
79
Future Internet Core Platform
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
and by setting the "always allow" option.
[2]
the configuration web page
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 ...).
D.31.4.1 FIWARE Academy User Guide
80
Was this manual useful for you? yes no
Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Download PDF

advertisement