moodle - Irekisoft

Default template

Instalar Jitsi en Ubuntu 18 LTS e integrarlo en Moodle.

Estos días por culpa de la pandemia nos hemos visto con la necesidad de instalar a varios de nuestros clientes de forma urgente un servicio (open source) para que puedan realizar videoconferencias de forma sencilla. Anteriormente habíamos instalado para otro cliente la solución Big Blue Button + Moodle que nos consta le esta dando buen resultado, pero la instalación y su configuración resultan mas complicadas que la que venimos a explicar a continuación.

Alternativa excelente a Google Hangouts, Skype o Zoom.

Requisitos previos para la instalación de Jitsi: Tener una IP dedicada con los siguientes puertos disponibles 80 para el http, 443 para el https y los puertos UDP 10000:20000 para la transmisión de medios, canal de voz / vídeo.

1º Actualizar el sistema

sudo apt update
sudo apt upgrade -y && sudo shutdown -r now

2º Configurar el nombre de host de la máquina y el nombre de dominio completo (FQDN)

Es importante configurar el nombre de dominio completo desde el principio para poder instalar el certificado “Let’s Encrypt HTTPS” mas tarde.

sudo hostnamectl set-hostname videoconferencia

modificar el fichero /etc/hosts

sudo nano /etc/hosts

127.0.1.1 videoconferencia.midominio.com videoconferencia

Confirmamos que este primer paso lo hemos realizado bien con el comando:

hostname -f


3º Instalar el entorno OpenJDK de Java

apt install openjdk-11-jdk-headless

4º Instalar el servidor web Nginx

Con estos comandos instalaremos el servidor web y además habilitaremos su arranque:

sudo apt install -y nginx
sudo systemctl start nginx.service
sudo systemctl enable nginx.service

5º Instalar jitsi

Primero añadimos la llave gpg para la validación del repositorio:

wget -qO - https://download.jitsi.org/jitsi-key.gpg.key | sudo apt-key add -
Después añadimos el repositorio:
sudo sh -c "echo 'deb https://download.jitsi.org stable/' > /etc/apt/sources.list.d/jitsi-stable.list"

Actualizamos los repositorios:

sudo apt update -y

y procedemos a instalar jitsi:

sudo apt install -y jitsi-meet

Durante la instalación nos aparecerá una pantalla en la que nos pedirá el hostname, ahí pondremos nuestro FQDM que configuramos en el primer paso.
videoconferencia.midominio.com

Después sera el turno de configurar el certificado de seguridad SSL para poder realizar las conexiones seguras.
Dejamos la primera opción para que genere un certificado auto-firmado y proseguimos con la instalación.

Una vez terminada la instalación podemos ejecutar el siguiente script para la instalación de un certificado SSL gratuito de Let’s encrypt:

sudo /usr/share/jitsi-meet/scripts/install-letsencrypt-cert.sh

Durante el proceso se te pedirá un email en donde te llegara información relacionada con el certificado.

Una vez tengamos instalado el Jitsi podemos efectuar videoconferencias creando una sala y enviando invitaciones a la gente con la que queramos contactar.

Importante: En los centros que tienen Fortinet al encontrarse detrás de NAT es necesario añadir las siguientes lineas en el fichero: sip-communicator.properties

sudo nano /etc/jitsi/videobridge/sip-communicator.properties

Y añadimos las siguientes lineas cambiando el ultimo parámetro por nuestras Ips, la de la maquina local y la IP externa que le hayamos asignado:

org.ice4j.ice.harvest.NAT_HARVESTER_LOCAL_ADDRESS=<Local.IP.Address>
org.ice4j.ice.harvest.NAT_HARVESTER_PUBLIC_ADDRESS=<Public.IP.Address>

Vincular Jitsi en nuestro Moodle.

Para poder vincular Jitsi en nuestro Moodle tan solo necesitamos instalar el plugin Jitsi que podemos encontrar en la pagina oficial de Moodle.
https://moodle.org/plugins/mod_jitsi

Importante: Para poder utilizar el micrófono y la cámara es necesario que nuestro moodle tenga instalado un certificado SSL.

Para instalar el plugin podemos hacerlo de varias formas: Instalando como administrador desde

Administracion del sitio -> Extensiones -> Instalar módulos externos

o conectarnos por consola o ftp a la maquina donde tengamos el Moodle descomprimir el modulo descargado en la carpeta de mods e ir al apartado de Notificaciones donde tendremos la opción para actualizar la base de datos y dejar activo el plugin.

Una vez instalado en la sección de extensiones en módulos de actividades tendremos la opción de configurarlo.

Básicamente tendremos que poner la URL del servidor Jitsi que hemos instalado al principio de esta guía, en nuestro ejemplo este seria: videoconferencia.midominio.com

En caso de que no tengamos la posibilidad de instalarnos un servidor de jitsy siempre podemos usar uno externo:

Para no saturar el oficial (meet.jit.si) se puede emplear algún otro servidor alternativo, estos los hemos obtenido de un listado publicado por la cuenta de twitter de @librezale

calls.disroot.org​
jitsi.rit.im
vc.autistici.org
meet.mayfirst.org
meet.guifi.net
framatalk.org
jitsi.eus

En la pagina del plugin aparece que es compatible con las versiones de Moodle: 3.4, 3.5, 3.6, 3.7, 3.8
Por motivos de urgencia como ha sido el tema del coronavirus nos hemos visto en la necesidad de instalarlo en versiones anteriores de Moodle en concreto en versiones 3.1 y nos hemos encontrado con que no nos ha funcionado correctamente.
El problema ha sido que no nos cargaba el iframe donde tendría que aparecer la sala de videoconferencia, para resolverlo hemos tenido que editar del plugin el fichero sesion.php
El código original es:

if ($CFG->branch < 36) {
    echo "parentNode: document.querySelector('#region-main .card-body'),\n";
} else {
    echo "parentNode: document.querySelector('#region-main'),\n";
}

Sustituyendo ese código por esta única linea nos soluciona el tema.

echo "parentNode: document.querySelector('#region-main'),\n";

Ahora únicamente tendremos que ir a nuestro curso, editarlo y añadir una nueva actividad, en este caso seleccionaríamos Jitsi y elegiríamos la fecha en la que se realizaría la sesión de videoconferencia.


Necesita ayuda:

Si quieres contactar con nosotros no dudes en rellenar el siguiente formulario:

Nombre (requerido)

Apellido (requerido)

Empresa

Email (requerido)

Telefono (requerido)

En cumplimiento de la Ley Orgánica de Protección de Datos 15/1999, le informamos que los datos personales obtenidos mediante este formulario, así como su dirección de correo electrónico, han sido incorporados en un fichero del cual es responsable Irekisoft(ANDER NOVALES ISRAEL SANCHEZ C.B), con la finalidad de atender sus consultas y enviarle información relacionada con la entidad que pudiera ser de su interés. Irekisoft(ANDER NOVALES ISRAEL SANCHEZ C.B) se compromete a usar los datos recogidos mediante este formulario, únicamente para la finalidad anteriormente mencionada.
El interesado declara tener conocimiento del destino y uso de los datos personales recogidos mediante la lectura de la presente cláusula. El envío de este e-mail implica la aceptación de las cláusulas expuestas. Si lo desea puede ejercer los derechos de acceso, rectificación, cancelación u oposición de sus datos personales en el correo electrónico info@irekisoft.net o por escrito a la dirección C/Beurko viejo, 3 Pab 38 Of.7 48902 Barakaldo (Bizkaia).