Evaluando propuestas

Mejoras plataforma Webrtc para Coneecta.com

Publicado el 28 Marzo, 2020 en Programación y Tecnología

Sobre este proyecto

Abierto

<< Check the english version at the end >>

Coneecta es un proyecto de e-learning que busca conectar a usuarios para intercambiar conocimiento. Los objetivos principales son: facilitar la interacción entre los usuarios y servir de intermediario para garantizar el cumplimiento de los acuerdos profesionales a los que éstos lleguen.
Para conocer más detalles, sugiero revisar: https://coneecta.com/es/que-es-coneecta

Coneecta ofrece un sistema de videoconferencia integrado para que los usuarios realicen sus actividades directamente en la plataforma sin necesidad de utilizar una herramienta secundaria para ello.

Este sistema está basado en WebRTC y es precisamente la parte del proyecto que queremos mejorar. Comencemos entonces por una descripción, a grandes rasgos, de lo que tenemos actualmente funcionando...

El sistema de videoconferencias de Coneecta es una instalación de EasyRTC con un cliente javascript adaptado a las necesidades del proyecto.

A nivel de server se cuenta con una instalación de CoTURN básica que da soporte a varias salas independientes, múltiples usuarios conectados en ellas y la posibilidad de intercambio de diferentes streaming (webcams y screen sharing).

La instancia está configurada para funcionar únicamente sobre stun, las conexiones que requieren de servicio turn no están habilitadas. La razón de esta configuración no es técnica sino de costes de negocio y por lo pronto permanecerá así a menos que se dé con alguna alternativa rentable.

La funcionalidad de compartir pantalla dentro de una videoconferencia se ha incorporado mediante una extensión de Chrome basada en una librería de código abierto (https://chrome.google.com/webstore/detail/coneectacom-%C2%B7-screen-shar/bggmcndpkllkaenbhnpdahbocopmbalm?hl=es)

La versión actual de todo este ecosistema garantiza el soporte sobre Chrome en Desktop de forma total en las versiones más recientes. Para el resto de navegadores y dispositivos no están garantizadas las funcionalidades.

El cliente web de WebRTC está en el dominio rtc.coneecta.com y se utiliza siempre desde un iframe de una página en el dominio coneecta.com. Esta configuración podría cambiarse si se argumentan bien sus pros y contras. La única necesidad al respecto es que los Servers de WebRTC signalling y STUN vivan en rtc.coneecta.com (máquina diferente a la de coneecta.com) para garantizar la independencia en el uso del ancho de banda.



En el fichero adjunto se detallan los objetivos que perseguimos con el proyectos de mejoras y una lista de requerimientos mínimos.

Esperamos tu propuesta !
Gracias.

english version
------------------------------
hi, we are looking for a person who can help us with the analysis and implementation of some improvements that we want to make on our current webrtc platform. Coneecta is an e-learning project that seeks to connect users to exchange knowledge, facilitate the interaction between they and serve as an intermediary to ensure compliance with the professional agreements they reach. For more details see this: https://coneecta.com/es/que-es-coneecta (only in spanish)

Coneecta offers an integrated videoconferencing system for users to carry out their activities directly on the platform without using a secondary tool for it.
This system is based on WebRTC and is precisely the part of the project that we want to improve/upgrade.

The Coneecta videoconferencing system is an EasyRTC installation with a javascript client adapted to the needs of the project. At the server level there is a basic CoTURN installation that supports several independent rooms, multiple users connected in them and the possibility of exchanging different streaming (webcams and screen sharing).

Screen sharing functionality within a video conference has been incorporated through a Chrome extension based on an open source library (https://chrome.google.com/webstore/detail/coneectacom-%C2%B7-screen-shar/bggmcndpkllkaenbhnpdahbocopmbalm?hl=es)

The current version of this entire ecosystem guarantees support for the full features only for Desktop Chrome browsers, for the rest of browsers and devices the functionalities are not guaranteed.

The WebRTC web client is in the rtc.coneecta.com domain and is always used from an iframe of a page in the coneecta.com domain. This setting could be changed if its pros and cons are well argued. The only need in this regard is that WebRTC Signaling and STUN Servers live on rtc.coneecta.com (a machine other than coneecta.com) to ensure independence in bandwidth usage.


The objective of the project is to replace or adapt the current system to:
- Expand compatibility guarantees with other browsers and devices.
- Enable the functionality of sending files via WebRTC.
- Avoid the current problems before the interruption of a streaming screen sharing using the browser option instead of the JS application's own button.

- Improve the interactions of the elements on the screen, the actions to minimize video, restore video, full screen.
- Study the possibility of preparing a new version of the client on Angular or React.

Categoría Programación y Tecnología
Subcategoría Programación Web
¿Cuál es el alcance del proyecto? Cambio mediano
¿Es un proyecto o una posición? Un proyecto
Actualmente tengo Tengo las especificaciones
Disponibilidad requerida Según se necesite
Integraciones de API Otros (Otras APIs)
Roles necesarios Programador

Plazo de Entrega: No definido

Habilidades necesarias