Videoconferencia en WordPress

La forma más fácil que he encontrado para integrar una videoconferencia dentro de WordPress con un sistema de código abierto es a través de Jitsi. En dos sencillos pasos:
– Con el plugin BuddyMeet lo instalamos  y activamos.
– Y luego con un shortcode como este:

[buddymeet room=NOMBRE_DE_LA_REUNION subject='NOMBRE O TITULO DE LA REUNION']
Ya tienes integrada la videoconferencia en tu web.

Jitsi es un proyecto de código abierto con un conjunto de herramientas para poder realizar videoconferencias, entre las que destaca Jitsi Meet, una herramienta multiplataforma y gratuita, que permite realizar videoconferencias, sin limite de usuarios, sin necesidad de crear una cuenta, y de forma segura. 
El proyecto empezó en 2003 y esta financiado por la empresa 
Atlassian.

Qué ofrece Jitsi Meet

En las videoconferenciass de Jitsi Meet no hay límite de participantes, el limite está en lo que permita la potencia y el ancho de banda del servidor donde se alojen las conferencias. Al ser un proyecto de código abierto, lo puedes descargar desde su web para utilizarlo en tu servidor.
Pero también se pueden crear reuniones de videoconferencia el los servidores que aloja Jitsi.

Para usar Jitsi Meet  no es necesario crear una cuenta, lo que quiere decir que no tendrás que dar datos personales para usarlo. En su filosofía de privacidad y transparencia, es código es abierto, y está alojado en su perfil de Github de forma pública para que cualquiera pueda revisarlo.

Características de Jitsi Meet

  • Las salas (reuniones) están abiertas por defecto para cualquier persona que sepa su nombre.  Pero también se permite poner contraseñas para evitar que entre alguien que conozca el nombre de la sala.
  • Los usuarios son anónimos por defecto. Pero existe la opción de ponerse un nombre para ser identificado e incluso si rellenamos el email se vincula con tu Gravatar.
  • Las llamadas pueden ser de vídeo o de voz. Se crea dirección url personalizada,  cada conferencia tendrá un número de teléfono para poder unirse a ella sin necesitar estar frente a un ordenador.
  • Se puede utilizar directamente desde el navegador sin instalar nada. Además, el vídeo y el sonido son de alta definición, (Opus y VP8, compatible WebRTC).
  • Se puede grabar la videconferencia con Dropbox.
  • Permite retransmitirla en directo en YouTube.
  • Podemos compartir la pantalla, para vídeos o presentaciones.
  • Tiene chat de texto, para que se pueda escribir al tiempo que alguien este hablando.
  • La función «levantar la mano», para hablar ordenadamente.
  • Puedes silenciar a todos mientras otro habla.
  • Tenemos un contador de estadísticas para saber cuánto tiempo está hablando cada participante,
  • Permite elegir los medios de entrada. Si tenemos varias cámaras conectadas en el ordenador o las cámaras del móvil.
  • Tiene una función para emborronar el fondo de pantalla.
  • Hay una extensión para Chrome a través de la que se puede integrar con los calendarios de Google Calendar y Office 365, de manera que tengas la posibilidad de programar reuniones.

Como usar Jitsi Meet

Para utilizar Jitsi Meet en un ordenador entramos en la web meet.jit.si  solo tienes que escribir el nombre de la sala (nombre de la reunión),  clicamos en GO, y si  no existe, se crea, y si existe te unes a ella.
Se genera una dirección del estilo meet.jit.si/nombre_de_la_reunion, si esa dirección se la pasas a un contacto y la pega en su navegador directamente entra a la reunión, así de fácil 
Funciona en Chrome, Mozilla, Opera, pero no funciona en Safari, y hay aplicación disponible tanto para Android como para IOS. En la aplicación móvil, se puede entrar en una reunión que ya existe o crear una sala (reunión). 

A continuación antes de entrar en la reunión, nos pedirá permiso para utilizar el micrófono y la webcam de tu ordenador. Pulsamos en ‘Permitir’ para conceder los permisos. 

Jitsi Meet de código abierto

Jitsi Meet, como se indica en GitHub utiliza Licencia Apache 2.0. lo que implica que es posible el uso comercial, modificación, distribución, uso de patentes y uso privado del servicio.
Por lo tanto podemos modificar el código y realizar nuestras propias instalaciones, en nuestros servidores.

Jitsi Meet API

Jitsi Meet cuenta con una API, y en su documentación nos dice que se puede usar la API de Jitsi Meet para incrustar Jitsi Meet en nuestra  aplicación. E incluso para  integrar la implementación disponible en meet.jit.si , pero si hacemos esto nos piden que NO se quite el logotipo de jitsi.org de la esquina superior izquierda.
Por lo tanto a través de esta API podemos integrarlo en nuestro WordPress. 

BuddyMeet el plugin para WordPress

En el repositorio de WordPress tenemos el plugin BuddyMeet, que es un complemento del plugin BuddyPress que utiliza Jitsi Meet para permitir que los miembros de una comunidad participen en salas de videoconferencias.
Aparentemente necesitariamos tener BuddyPress para acceder a tener la funcionalidad de las videoconferencias embebidas en nuestra web. Pero no es así, BuddyMeet se comunica con  la API de Jitsi Meet, y con solo instalarlo y activarlo podremos con un shortcode crear nuestras videconferencias.
Como BuddyMeet esta pensado como un complemento del plugin BuddyPress, si este último no está instalado no veremos en nuestros menús de administración ninguna opción de configuración.
Si estuvieran los dos plugins activados en nuestro WordPress las opciones aparecerían dentro de los grupos de BuddyPress. permitiendo crear una sala donde todos los miembros de un grupo pueden encontrarse, o crearn salas bajo demanda, personalizar el tema o asunto  de la sala y el nombre/avatar de los participantes.
BuddyMeet utiliza por defecto el servicio meet.jit.si.  Pero si queremos utilizar una instalación de Jitsi Meet  alojada en nuestro servidor se puede configurar el dominio correspondiente a través del menú «Administrar» de un grupo BuddyPress. 
Tras la inicialización de una sala, BuddyMeet envía la siguiente información al servicio:

  • El nombre del grupo BuddyPress actual como subject (asunto) de la llamada (conferencia).
  • El nombre, el apellido y el avatar del usuario actualmente conectado

Pero BuddyMeet tambien lo podemos usar solo sin BuddyPress usando el shortcode y  personalización de todos los parámetros que admite Jitsi meet API.

Cómo usar el plugin BuddyMeet 

Podemos  usar el código corto, instalando y activando solo el plugin BuddyMeet
[buddymeet room = NOMBRE_DE_LA _SALA subject = ASUNTO_DE_LA_SALA]

Parámetros del shortcode de BuddyMeet 

  • videobackgroundblurdomain: El dominio de la instalación de Jitsi Meet. BuddyMeet usa por defecto el servicio gratuito meet.jit.si.
  • room: el identificador de la sala.
  • subject: El tema de la sala. Si está vacío, la habitación se muestra como el subject.
  • password: Una contraseña para la sala. El primero en ingresar a la sala establece esa contraseña y todos los demás participantes deben ingresarla.
  • show_watermark: Si se debe mostrar la marca de agua Jitsi.org o no. Recordemos que en la API nos piden que si usamos meet.jit.si nos piden que no la quitemos.
  • show_brand_watermark: Si se muestra o no una marca de agua de marca personalizada, eso es en el caso que tengamos Jitsi Meet en nuestro propio servidor.
  • brand_watermark_link: Dirección donde esta la marca de agua de marca personalizada para mostrar.
  • width: El ancho de la ventana incrustada.
  • height: La altura de la ventana incrustada.
  • start_audio_only: Comienzo de la reunión con el micrófono solo habilitado y la cámara apagada.
  • film_strip_only: Comienzo de la reunión en modo de tira de película solamente.
  • disable_video_quality_label: Deshabilita el indicador de calidad de video.
  • user: El usuario a mostrar
  • avatar: la url con el avatar para mostrar
  • background_color: Color de fondo de la ventana
  • default_language: El idioma predeterminado de la interfaz Jitsi Meet.
  • settings: Ajustes, podemos pasar un CSV con los ajustes de Jitsi Meet que queremos que estén disponibles. Para saber cuales son los ajustes consultaremos la documentación. Los parámetros
    • devices
    • language
    • moderator
    • profile
    • calendar
  • toolbar: Barra de herramientas: mediante  un CSV le pasaremos las con las opciones de la barra de herramientas de Jitsi Meet que queramos que estén habilitadas. Para conocer las opciones disponibles, consulte la documentación.
    • microphone: Botón de apagar / encender el micrófono
    • camera: Botón para apagar / encender la cámara
    • closedcaptions: Subtitulos.
    • mute-everyone: Silenciar al resto de participantes.
    • desktop: Opcion de Mosaico / Escritorio
    • fullscreen: Pantalla completa.
    • fodeviceselection: Selección de dispositivos
    • hangup: Botón para ‘colgar’ o fin de videconferencia.
    • profile: Perfil de usuario
    • info: Información
    • chat: Chat.
    • recording: Grabar videoconferencia en Dropbox.
    • livestreaming. Enviar la conferencia a un directo de Youtube.
    • etherpad: Estadísticas de conexión..
    • sharedvideo: Compartir un video de Youtube  con el resto de participantes
    • settings: Ajustes
    • raisehand: Levantar la mano.
    • videoquality: Calidad del video.
    • filmstrip: Formato película
    • invite: invitar
    • feedback
    • stats: Estadísticas 
    • shortcuts: Atajos de teclado.
    •  tileview: Titulo de la videoconferencia.
    • videobackgroundblur: Desenfocar el fondo (Beta).

Ejemplos de shortcodes de BuddyMeet 

[buddymeet room=NOMBRE_DE_LA_SALA 
subject=ASUNTO_O_TEMA_DE_LA_REUNION
show_watermark=false (para que no salga el logo de Jitsi)
default_language=spanish _
toolbar='livestreaming,sharedvideo,chat,raisehand,settings,microphone,camera,desktop,fullscreen,shortcuts,tileview,mute-everyone']

Ejemplo de shortcode de BuddyMeet para una sala con contraseña:

[[buddymeet room=2020-wp-meetup-94.252.100.140 password=1212 default_language=sp show_watermark=false width=100%]]

Ejemplo de un shortcode de BuddyMeet configurando CSV para el parámetro toolbar y el parámetro settings:

[buddymeet room=wordpresstoledo subject='WordPress Toledo Meetup Online' show_watermark=false
default_language=sp settings='devices,language,moderator,profile,calendar' toolbar='livestreaming,sharedvideo,chat,raisehand,settings,microphone,camera,desktop,fullscreen,shortcuts,tileview,mute-everyone']

Espero que os sirva para poder integrar videoconferencias en vuestros WordPress. Podemos tener reuniones grupales, con clientes, tambien para dar soporte ya que nos permite compartir nuestra pantalla. etc