Note: You are currently viewing documentation for Moodle 3.9. Up-to-date documentation for the latest stable version of Moodle may be available here: EJSApp.

EJSApp: Difference between revisions

From MoodleDocs
No edit summary
No edit summary
 
(30 intermediate revisions by 3 users not shown)
Line 1: Line 1:
==The EJSApp Set of Plugins==
EJSApp are a set of plugins for Moodle that let you:
* To deploy applications written in [http://www.um.es/fem/EjsWiki/ Easy Java/Javascript Simulations (EjsS)]. Sisit the [https://gitlab.com/ejsS/tool gitlab project of EjsS] to get the latest version.
* To control user access to the deployed EjsS applications and distinguish between virtual labs (or simulations) and remote labs based on Java and/or Javascript.
* To personalize the simulations created with EjsS for each of your students.
* To backup and restore thanks to Moodle course backups.
* To use cloud storage for any data, image or state file created by the EjsS application.
* To create sessions for synchronous collaborative working with the Java applets created with Easy Java/Javascript Simulations.
* To manage and control the access to EjsS remote laboratories by means of a booking system that gets integrated into Moodle.
==EJSApp Activity==
==EJSApp Activity==


The EJSApp activity plugin allows users to embedd [http://www.um.es/fem/EjsWiki/ Easy Java Simulations (EJS)] applications (such as simulations, virtual and remote laboratories) into a Moodle course. This plugin works with version 2.0 or higher of Moodle.  
The EJSApp activity plugin allows users to embedd [http://www.um.es/fem/EjsWiki/ Easy Java/Javascript Simulations (EJS)] applications (such as simulations, virtual and remote laboratories) into a Moodle course. This plugin works with version 2.0 or higher of Moodle.  


EJSApp plugin can be downloaded from [https://moodle.org/plugins/view.php?plugin=mod_ejsapp Moodle Plugins Directory] and from [https://github.com/UNEDLabs/moodle-mod_ejsapp Github].
EJSApp plugin can be downloaded from [https://moodle.org/plugins/view.php?plugin=mod_ejsapp Moodle Plugins Directory] and from [https://github.com/UNEDLabs/moodle-mod_ejsapp Github].
Line 7: Line 18:
As with any customization, it is recommended that you have a good backup of your Moodle site before attempting to install contributed code. While those contributing code make every effort to provide the best code that they can, using contributed code nevertheless entails a certain degree of risk as contributed code is not as carefully reviewed and/or tested as the Moodle core code.  
As with any customization, it is recommended that you have a good backup of your Moodle site before attempting to install contributed code. While those contributing code make every effort to provide the best code that they can, using contributed code nevertheless entails a certain degree of risk as contributed code is not as carefully reviewed and/or tested as the Moodle core code.  


EJSApp is useful for adding simulations or remote laboratories into your Moodle courses, which is of especial interest for those of scientific or technical nature.  More information about EJS and EJSApp can be obtained at [http://www.um.es/fem/EjsWiki/Main/UsingEJSWithMoodle http://www.um.es/fem/EjsWiki/Main/UsingEJSWithMoodle].
EJSApp is useful for adding simulations or remote laboratories into your Moodle courses, which is of especial interest for those of scientific or technical nature.  More information about EjsS and EJSApp can be obtained at [http://www.um.es/fem/EjsWiki/Main/UsingEJSWithMoodle http://www.um.es/fem/EjsWiki/Main/UsingEJSWithMoodle].


===Installation===
===Installation===
* Code - Copy the files into your Moodle mod folder ($CFG->dirroot/mod)
If you download this plugin from github, you will need to change the folder's name to ejsapp. If you download it from Moodle.org, then you are fine.


'''WARNING:''' If you are updating ejsapp from a previous version, DO NOT replace/delete your old jarfiles directory inside your old ejsapp directory.
This is a module plugin for Moodle so you should place the ejsapp folder in your /mod folder, inside your Moodle installation directory.


'''IMPORTANT:''' For Unix Moodle servers (e.g., Linux and Mac systems), EJSApp requires that (i) the apache user is the owner of the "jarfiles" dir inside the "ejsapp" dir, and (ii) it has permissions to read, write and execute the jarfiles dir.                                        
This module enhances its functionality when used along with the ejsappbooking module and/or the ejsapp_file_browser, the remlab_manager, the ejsapp_collab_session blocks and the osp repository plugin. You can find and download them at https://moodle.org/plugins/browse.php?list=set&id=27, in the plugins section in the Moodle.org webpage or at https://github.com/UNEDLabs.
                                                                                               
The following points describe how to do it:                                                  
                                                                                               
1) go to the ejsapp dir:                                                                     
$ cd ejsapp                                                                                   
                                                                                               
2) Change the owner of the jarfiles dir to apache.                                            
For instance,                                                                                
2.a) in Linux CentOS, the apache user is "apache", so you should write                       
$ chown -R apache jarfiles                                                                   
2.b) in Linux OpenSuse, the apache user is "wwwrun", so you should write                     
$ chown -R wwwrun jarfiles                                                                   
                                                                                               
3) Change the permissions of the apache user:                                                
$ chmod -R 700 jarfiles   
 
* Database - Login in as a Moodle Administrator and go to the Administration notifications page to create the required EJSApp tables.


* Settings - During the previous step you will come across the setting configuration page for the EJSApp plugin. Default values might be valid for you. However, read the description of each parameter there and change any value you want. The README.txt file that comes along with the EJSApp plugin has even more information about these parameters.
* Settings - During the previous step you will come across the setting configuration page for the EJSApp plugin. Default values might be valid for you. However, read the description of each parameter there and change any value you want. The README.txt file that comes along with the EJSApp plugin has even more information about these parameters.


===Configuration===
===Configuration===
When installing ejsapp for the first time, you will need to set four variables:
When installing ejsapp for the first time, you will need to set six variables:


*''columns_width'': This is the total width occupied by your columns (in pixels) in your Moodle visual theme. This variable is used to resize the applet size when embedded in Moodle and the "Preserve original applet layout" options is set to no. Default configuration works well with the default theme and with many others based on the two columns format. However, other themes may require changes in this variable.
*''certificate_path'': This variable defines the absolute path to the trust certificate file, if you have one for signing your Java applets.


*''collaborative_port'': When the "EJSApp Collaborative Sessions" block is also installed, this variable sets the port used for establishing TCP connections in the collaborative sessions.
*''certificate_password'': This variable must contain the password of the trust certificate.


*''sarlab_IP'': This variable defines the IP(s) direction(s) of the SARLAB system(s) used for managing the access to the remote laboratories. If left empty, the plugin understands that SARLAB is not used.
*"certificate_alias": This variable stores the alias given to your trust certificate.
 
*''sarlab_port'': This variable defines the port(s) used to communicate with the SARLAB system(s). If left empty, the plugin understands that SARLAB is not used.


If you are not sure what values you should be setting for these parameters, use the ones by default.
If you are not sure what values you should be setting for these parameters, use the ones by default.
Line 56: Line 48:


===Related Plugins===
===Related Plugins===
The EJSApp activity plugin works autonomously and does not require any other plugin to be installed in your Moodle site. However, there are three more plugins (the EJSAppBooking activity plugin and the EJSAppFileBrowser and the EJSAppCollabSession block plugins) that add new features to the system and might enhance the use of your EJS applications embedded into Moodle.
The EJSApp activity plugin works autonomously and does not require any other plugin to be installed in your Moodle site. However, there are three more plugins (the EJSAppBooking activity plugin and the EJSAppFileBrowser and the EJSAppCollabSession block plugins) that add new features to the system and might enhance the use of your EjsS applications embedded into Moodle.


These additional plugins can also be downloaded from the [https://moodle.org/plugins/browse.php?list=set&id=27 EJSApp Set Webpage] at Moodle Plugins Directory and from [https://github.com/UNEDLabs Github].
These additional plugins can also be downloaded from the [https://moodle.org/plugins/browse.php?list=set&id=27 EJSApp Set Webpage] at Moodle Plugins Directory and from [https://github.com/UNEDLabs Github].
Line 62: Line 54:
===Contributor/Maintainer===
===Contributor/Maintainer===
The EJSApp activity plugin and the other three mentioned in the ''Related Plugins'' section are contributed and maintained by Luis de la Torre and Rubén Heradio, from the Spanish Open University (UNED).
The EJSApp activity plugin and the other three mentioned in the ''Related Plugins'' section are contributed and maintained by Luis de la Torre and Rubén Heradio, from the Spanish Open University (UNED).
==Remlab Manager==
This plugin allows managing remote labs. EJSApp can be used to upload EjsS applications that connect to real equipment for remote laboratory practices. For this, the Remlab Manager block offers many nice options to configure the maximum time students can work with each lab, check if the lab equipment is alive, send notifications to teachers when the lab is off and much more. Additionally, it allows using [https://irs.nebsyst.com ENLARGE] experiences.
===Installation===
This is a block plugin for Moodle so you should place the ejsapp_file_browser folder in your /blocks folder, inside you Moodle installation.
===Dependencies===
This module needs the ejsapp module to be of any use. It works with version 1.4 (or later) of EJSApp.
===Contributor/Maintainer===
The Remlab Manager block is contributed and maintained by Luis de la Torre, Rubén Heradio and Francisco José Calvillo, from the Spanish Open University (UNED).
==EJSApp Booking System==
This plugin allows adding a booking system to handle the connections to the remote laboratories developed using EjsS and added to a Moodle course using the ejsapp activity module.
===Installation===
This is a module plugin for Moodle so you should place the ejsappbooking folder in your /mod folder, inside you Moodle installation.
===Dependencies===
This module needs the ejsapp module to be of any use. It works with version 1.4 (or later) of EJSApp. It also requires the remlab_manager block.
===Contributor/Maintainer===
The EJSApp Booking System module is contributed and maintained by Luis de la Torre, Rubén Heradio and Francisco José Calvillo, from the Spanish Open University (UNED).


==EJSApp File Browser==
==EJSApp File Browser==
Line 70: Line 88:
===Installation===
===Installation===
This is a block plugin for Moodle so you should place the ejsapp_file_browser folder in your /blocks folder, inside you Moodle installation.
This is a block plugin for Moodle so you should place the ejsapp_file_browser folder in your /blocks folder, inside you Moodle installation.
===Dependencies===
This module needs the ejsapp module to be of any use. It works with version 1.3 (or later) of EJSApp.


===Contributor/Maintainer===
===Contributor/Maintainer===
Line 76: Line 97:
==EJSApp Collab Sessions==
==EJSApp Collab Sessions==


This plugin lets you to create sessions for collaborative working with Java applets created with Easy Java Simulations (EJS) and added to your Moodle course by means of the ejsapp module.
This plugin lets you to create sessions for synchronous collaborative work with Java applets created with Easy Java Simulations (EJS) and added to a Moodle course by means of the ejsapp activity module.


===Installation===
===Installation===
This is a block plugin for Moodle so you should place the ejsapp_file_browser folder in your /blocks folder, inside you Moodle installation.
This is a block plugin for Moodle so you should place the ejsapp_file_browser folder in your /blocks folder, inside you Moodle installation.
===Dependencies===
This module needs the ejsapp module to be of any use. It works with version 1.3 (or later) of EJSApp.


===Contributor/Maintainer===
===Contributor/Maintainer===
The EJSApp collaborative sessions block is contributed and maintained by Luis de la Torre and Rubén Heradio, from the Spanish Open University (UNED).
The EJSApp collaborative sessions block is contributed and maintained by Luis de la Torre and Rubén Heradio, from the Spanish Open University (UNED).
==OSP Repository==
This plugin lets you download any Easy Java (and Javascript) Simulations (EJS) application stored in the vast OSP-Compadre collection (http://www.compadre.org/osp) directly from your Moodle.
===Installation===
This is a repository plugin for Moodle so you should place the osp folder in your /repository folder, inside you Moodle installation.
===Dependencies===
This module DOES NOT need the ejsapp module. That being said, when used in combination with the EJSApp plugin, you will be able not only to access, search and download these applications but also to add them automatically to your Moodle courses as activities. Javascript simulations from the OSP library are only accesible with OSP 1.1 version of this plugin and only get well embedded when EJSApp 1.6 or superior is used.
===Contributor/Maintainer===
The OSP repository plugin is contributed and maintained by Luis de la Torre and Rubén Heradio, from the Spanish Open University (UNED).
==Video tutorials==
===What is EJSApp?===
A general vision of the EJSApp plugins and the ideas behind them.
{{MediaPlayer | url = http://youtu.be/RsRS_ERQs0c}}
===EJSApp: core plugins===
Presenting the EJSApp activity module and the EJSApp File Browser block.
{{MediaPlayer | url = http://youtu.be/Oql5h_ravGE}}
===Collaborative Web-labs===
Presenting the EJSApp Collab Session block and the synchronous collaborative experimental sessions feature of EJS.
{{MediaPlayer | url = http://youtu.be/DOOoq2rUJYE}} (Activate the subtitles!)
===Remote Labs and the EJSApp Booking System===
Keys for configuring your EjsS applications in Moodle as remote laboratories and using the EJSApp booking system.
{{MediaPlayer | url =  http://youtu.be/YGlTTMmkaC0}}
===What is UNEDLabs?===
A general view of UNEDLabs; a Moodle web portal of collaborative, virtual and remote laboratories.
{{MediaPlayer | url = http://youtu.be/QC6-bmW1Y4c}}
===Easy Java Simulations (EJS) and the ComPADRE library===
A brief description about EjsS and how to find and access hundreds of EjsS applications for free from the Open Source Physics (OSP) collection at the ComPADRE library.
{{MediaPlayer | url = http://youtu.be/6rUgWDkoZKM}}


==See also==
==See also==
Line 91: Line 154:
EJSApp Moodle forum discussion: https://moodle.org/mod/forum/discuss.php?d=217163
EJSApp Moodle forum discussion: https://moodle.org/mod/forum/discuss.php?d=217163


EJSApp video-tutorial 1: http://www.youtube.com/watch?v=1rAsnvHO2Po (More to come!)
UNILabs webpage (a Moodle site hosting a network of virtual and remote laboratories based on EjsS and EJSApp): http://unilabs.dia.uned.es/
 
EJSApp video-tutorial 2: http://www.youtube.com/watch?v=CzjAY2mWv-E (More to come!)
 
EJSApp video-tutorial 3: http://www.youtube.com/watch?v=cxLDXnTs5KE (More to come!)


UNEDLabs webpage (a Moodle site hosting a network of virtual and remote laboratories based on EJS and EJSApp): http://unedlabs.dia.uned.es/
Youtube channel: http://www.youtube.com/user/UNEDLabs


EJSApp tutorial: http://www.um.es/fem/EjsWiki/Main/UsingEJSWithMoodle
EJSApp tutorial: http://www.um.es/fem/EjsWiki/Main/UsingEJSWithMoodle


EJS webpage: http://www.um.es/fem/EjsWiki/
EjsS webpage: http://www.um.es/fem/EjsWiki/ and https://gitlab.com/ejsS/tool


[[Category:Contributed code]]
[[Category:Contributed code]]

Latest revision as of 17:37, 23 November 2019

The EJSApp Set of Plugins

EJSApp are a set of plugins for Moodle that let you:

  • To deploy applications written in Easy Java/Javascript Simulations (EjsS). Sisit the gitlab project of EjsS to get the latest version.
  • To control user access to the deployed EjsS applications and distinguish between virtual labs (or simulations) and remote labs based on Java and/or Javascript.
  • To personalize the simulations created with EjsS for each of your students.
  • To backup and restore thanks to Moodle course backups.
  • To use cloud storage for any data, image or state file created by the EjsS application.
  • To create sessions for synchronous collaborative working with the Java applets created with Easy Java/Javascript Simulations.
  • To manage and control the access to EjsS remote laboratories by means of a booking system that gets integrated into Moodle.

EJSApp Activity

The EJSApp activity plugin allows users to embedd Easy Java/Javascript Simulations (EJS) applications (such as simulations, virtual and remote laboratories) into a Moodle course. This plugin works with version 2.0 or higher of Moodle.

EJSApp plugin can be downloaded from Moodle Plugins Directory and from Github.

As with any customization, it is recommended that you have a good backup of your Moodle site before attempting to install contributed code. While those contributing code make every effort to provide the best code that they can, using contributed code nevertheless entails a certain degree of risk as contributed code is not as carefully reviewed and/or tested as the Moodle core code.

EJSApp is useful for adding simulations or remote laboratories into your Moodle courses, which is of especial interest for those of scientific or technical nature. More information about EjsS and EJSApp can be obtained at http://www.um.es/fem/EjsWiki/Main/UsingEJSWithMoodle.

Installation

If you download this plugin from github, you will need to change the folder's name to ejsapp. If you download it from Moodle.org, then you are fine.

This is a module plugin for Moodle so you should place the ejsapp folder in your /mod folder, inside your Moodle installation directory.

This module enhances its functionality when used along with the ejsappbooking module and/or the ejsapp_file_browser, the remlab_manager, the ejsapp_collab_session blocks and the osp repository plugin. You can find and download them at https://moodle.org/plugins/browse.php?list=set&id=27, in the plugins section in the Moodle.org webpage or at https://github.com/UNEDLabs.

  • Settings - During the previous step you will come across the setting configuration page for the EJSApp plugin. Default values might be valid for you. However, read the description of each parameter there and change any value you want. The README.txt file that comes along with the EJSApp plugin has even more information about these parameters.

Configuration

When installing ejsapp for the first time, you will need to set six variables:

  • certificate_path: This variable defines the absolute path to the trust certificate file, if you have one for signing your Java applets.
  • certificate_password: This variable must contain the password of the trust certificate.
  • "certificate_alias": This variable stores the alias given to your trust certificate.

If you are not sure what values you should be setting for these parameters, use the ones by default.

Languages

The EJSApp activity plugin is available in:

  • English (en_utf8)
  • Spanish (es_utf8)

If you would like to supply translations for other languages, please create an issue in the tracker and attach a zip file of the language files.

Related Plugins

The EJSApp activity plugin works autonomously and does not require any other plugin to be installed in your Moodle site. However, there are three more plugins (the EJSAppBooking activity plugin and the EJSAppFileBrowser and the EJSAppCollabSession block plugins) that add new features to the system and might enhance the use of your EjsS applications embedded into Moodle.

These additional plugins can also be downloaded from the EJSApp Set Webpage at Moodle Plugins Directory and from Github.

Contributor/Maintainer

The EJSApp activity plugin and the other three mentioned in the Related Plugins section are contributed and maintained by Luis de la Torre and Rubén Heradio, from the Spanish Open University (UNED).

Remlab Manager

This plugin allows managing remote labs. EJSApp can be used to upload EjsS applications that connect to real equipment for remote laboratory practices. For this, the Remlab Manager block offers many nice options to configure the maximum time students can work with each lab, check if the lab equipment is alive, send notifications to teachers when the lab is off and much more. Additionally, it allows using ENLARGE experiences.

Installation

This is a block plugin for Moodle so you should place the ejsapp_file_browser folder in your /blocks folder, inside you Moodle installation.

Dependencies

This module needs the ejsapp module to be of any use. It works with version 1.4 (or later) of EJSApp.

Contributor/Maintainer

The Remlab Manager block is contributed and maintained by Luis de la Torre, Rubén Heradio and Francisco José Calvillo, from the Spanish Open University (UNED).

EJSApp Booking System

This plugin allows adding a booking system to handle the connections to the remote laboratories developed using EjsS and added to a Moodle course using the ejsapp activity module.

Installation

This is a module plugin for Moodle so you should place the ejsappbooking folder in your /mod folder, inside you Moodle installation.

Dependencies

This module needs the ejsapp module to be of any use. It works with version 1.4 (or later) of EJSApp. It also requires the remlab_manager block.

Contributor/Maintainer

The EJSApp Booking System module is contributed and maintained by Luis de la Torre, Rubén Heradio and Francisco José Calvillo, from the Spanish Open University (UNED).

EJSApp File Browser

This plugin is a modification of the "Private Files" block of Moodle and lets Java applets, created with Easy Java Simulations (EJS) and added to a Moodle course by means of the ejsapp module activity, to store data files saved from these applets. It also includes a little AJAX feature that let users to refresh their files block without refreshing the entire page.

Installation

This is a block plugin for Moodle so you should place the ejsapp_file_browser folder in your /blocks folder, inside you Moodle installation.

Dependencies

This module needs the ejsapp module to be of any use. It works with version 1.3 (or later) of EJSApp.

Contributor/Maintainer

The EJSApp file browser block is contributed and maintained by Luis de la Torre and Rubén Heradio, from the Spanish Open University (UNED).

EJSApp Collab Sessions

This plugin lets you to create sessions for synchronous collaborative work with Java applets created with Easy Java Simulations (EJS) and added to a Moodle course by means of the ejsapp activity module.

Installation

This is a block plugin for Moodle so you should place the ejsapp_file_browser folder in your /blocks folder, inside you Moodle installation.

Dependencies

This module needs the ejsapp module to be of any use. It works with version 1.3 (or later) of EJSApp.

Contributor/Maintainer

The EJSApp collaborative sessions block is contributed and maintained by Luis de la Torre and Rubén Heradio, from the Spanish Open University (UNED).

OSP Repository

This plugin lets you download any Easy Java (and Javascript) Simulations (EJS) application stored in the vast OSP-Compadre collection (http://www.compadre.org/osp) directly from your Moodle.

Installation

This is a repository plugin for Moodle so you should place the osp folder in your /repository folder, inside you Moodle installation.

Dependencies

This module DOES NOT need the ejsapp module. That being said, when used in combination with the EJSApp plugin, you will be able not only to access, search and download these applications but also to add them automatically to your Moodle courses as activities. Javascript simulations from the OSP library are only accesible with OSP 1.1 version of this plugin and only get well embedded when EJSApp 1.6 or superior is used.

Contributor/Maintainer

The OSP repository plugin is contributed and maintained by Luis de la Torre and Rubén Heradio, from the Spanish Open University (UNED).

Video tutorials

What is EJSApp?

A general vision of the EJSApp plugins and the ideas behind them.

EJSApp: core plugins

Presenting the EJSApp activity module and the EJSApp File Browser block.

Collaborative Web-labs

Presenting the EJSApp Collab Session block and the synchronous collaborative experimental sessions feature of EJS.

(Activate the subtitles!)

Remote Labs and the EJSApp Booking System

Keys for configuring your EjsS applications in Moodle as remote laboratories and using the EJSApp booking system.

What is UNEDLabs?

A general view of UNEDLabs; a Moodle web portal of collaborative, virtual and remote laboratories.

Easy Java Simulations (EJS) and the ComPADRE library

A brief description about EjsS and how to find and access hundreds of EjsS applications for free from the Open Source Physics (OSP) collection at the ComPADRE library.

See also

EJSApp Set Moodle modules webpage: https://moodle.org/plugins/browse.php?list=set&id=27

EJSApp UNEDLabs Github repository: https://github.com/organizations/UNEDLabs

EJSApp Moodle forum discussion: https://moodle.org/mod/forum/discuss.php?d=217163

UNILabs webpage (a Moodle site hosting a network of virtual and remote laboratories based on EjsS and EJSApp): http://unilabs.dia.uned.es/

Youtube channel: http://www.youtube.com/user/UNEDLabs

EJSApp tutorial: http://www.um.es/fem/EjsWiki/Main/UsingEJSWithMoodle

EjsS webpage: http://www.um.es/fem/EjsWiki/ and https://gitlab.com/ejsS/tool