Fosscord, una plataforma de comunicación abierta compatible con discord

Hace poco se dio a conocer el primer lanzamiento experimental de la parte del servidor del proyecto «Fosscord», que desarrolla una plataforma de comunicación abierta para organizar la comunicación en comunidades mediante chat, video y llamadas de voz.

Una diferencia importante con respecto a otros proyectos de código abierto con un propósito similar, como Revolt y Rocket.Chat, es la compatibilidad a nivel de protocolo con el mensajero Discord: los usuarios de Fosscord pueden comunicarse con personas que continúan usando el servicio discord.com.

Sobre Fosscord

El servidor que le permite implementar la plataforma en sus propias instalaciones incluye componentes con la implementación de una API HTTP compatible con Discord, una puerta de enlace basada en el protocolo WebSocket, una red de entrega de contenido, servidores RTC y WebRTC para organizar comunicaciones de voz y video, utilidades y una interfaz web para la gestión. MongoDB se utiliza como DBMS. Un proyecto separado estÔ desarrollando un cliente y un marco CSS para crear interfaces de estilo Discord.

El objetivo final del proyecto es crear un clon de Discord que sea totalmente compatible con versiones anteriores pero que proporcione funciones avanzadas. El cliente Fosscord podrĆ” reemplazar a los clientes oficiales de Discord, y el servidor Fosscord permitirĆ” ejecutar un servidor compatible con Discord en su propio hardware.

Fosscord tiene como objetivo ser un clon completo uno a uno de Discord, agregando mÔs funciones que se pueden usar como reemplazo del cliente oficial y aún así conectarse a discord.com y alojar instancias de servidor Fosscord privadas.

Fosscord tiene como objetivo brindar la mejor experiencia de usuario posible, al tiempo que es compatible con versiones anteriores de las funciones de Discord y agrega nuevas / mejora las antiguas mientras mantiene la privacidad del usuario con soporte de cifrado de extremo a extremo.

El soporte de Discord ayudarÔ a facilitar la transición de los usuarios a una plataforma abierta, simplificarÔ la migración de bots y brindarÔ la capacidad de mantener el mismo flujo de trabajo y entorno de comunicación; después de la migración, los usuarios aún pueden comunicarse con colegas que continúan usando Discord.

Entre las ventajas de la plataforma Fosscord, se destaca la capacidad de afinar todos los aspectos y limitaciones, una arquitectura descentralizada sin un solo punto de falla (se asume que un cliente puede conectarse a múltiples servidores al mismo tiempo), la capacidad de expandir la funcionalidad a través de complementos, cambiar la apariencia a través de temas y usar cifrado de extremo a extremo para negociaciones confidenciales, ademas de que para ampliar las capacidades del servidor, se proporciona soporte para bots.

De las demƔs caracterƭsticas que se destacan:

  • El cliente puede conectarse a varias instancias de servidor sin la necesidad de abrirlo varias veces.
  • El cliente debe ser extensible a travĆ©s de un plugin seguro y un sistema de temas con tienda propia.
  • El servidor debe ser extensible a travĆ©s de bots, al igual que la discordia, sin la necesidad de cambiar nada excepto el punto final de la API.
  • El proyecto es de código abierto para que todos puedan ver lo que estĆ” sucediendo bajo el capó y la comunidad puede mantenerlo y expandirlo.
  • Todo es configurable en la configuración del servidor y todos pueden agregar sus propias caracterĆ­sticas, para que no se oponga.

Finalmente si estƔs interesado en poder conocer mƔs al respecto, puedes consultar los detalles en el siguiente enlace.

Ademas es importante mencionar que el código del proyecto estÔ escrito en TypeScript utilizando la plataforma Node.js y se distribuye bajo la licencia AGPLv3. Las compilaciones de servidor listas para usar estÔn preparados para Linux, Windows y macOS.

ĀæComo instalar Fosscord en Linux?

Para quienes estƩn interesados en poder instalar esta excelente utilidad en sistema, pueden hacerlo obteniendo el ultimo paquete disponible desde el siguiente enlace.

En este caso al momento de la redaccion el paquete que obtenemos es el siguiente:

wget https://github.com/fosscord/fosscord-server/releases/download/v0.0.3/fosscord-server-linux.tgz

Basta con descomprimir el paquete y dar doble clic sobre el servidor para comenzar su ejecución y para acceder a este podemos hacerlo desde un navegador con la siguiente dirección http://localhost:3001.

Otro método de instalación es con ayuda del gestor de paquetes npm y podemos hacerlo de la siguiente manera:

git clone https://github.com/fosscord/fosscord-server
cd fosscord-server
cd bundle
npm run setup
npm run start:bundle