Websocket

El Social Service es un servidor que gestiona las amistades dentro de Decentraland. Utilizando la plataforma Matrix, sirve como la fuente autoritativa para manejar las actualizaciones de Friendships, como requests, accepts, rejects, cancels y deletes.

Casos de uso

El Social Service aborda los siguientes casos de uso relacionados con las amistades:

  • Solicitar una Friendship

  • Aceptar una Friendship Request

  • Rechazar una Friendship Request

  • Cancelar una Friendship Request

  • Eliminar un Friend

  • Listar todos mis friends

  • Listar mutual friends entre yo y otro usuario

Contexto

Antes de la introducción del Social Service, los datos de amistad se almacenaban y recuperaban directamente desde Matrix. Esto provocaba varios problemas con los flujos de trabajo de amistad e información poco fiable. Además, implementar nuevas funciones era desafiante. Dado que Matrix maneja principalmente funciones de chat, el Social Service actúa como un proxy, aplicando la lógica de negocio necesaria antes de interactuar con Matrix.

Arquitectura

Historial de versiones

  1. Primera versiónarrow-up-right: Inicialmente, el Social Service era una API REST que solo ofrecía endpoints GET para listar todos los friends y conexiones mutuas. Carecía de funciones relacionadas con updates o el envío de requests.

  2. Segunda versiónarrow-up-right: Esta versión introdujo updates en el flujo de amistad. Para abordar estos cambios, se implementó un servidor WebSocket RPC. Este servidor maneja mensajes esenciales, manteniendo conexiones abiertas con los clientes para proporcionar actualizaciones oportunas. Las conexiones WebSocket también facilitan funciones como seguimiento de presenciaarrow-up-right dentro del Social Service.

URLs

Dominio .zone

Servidores del entorno de desarrollo para pruebas y al usar testnets.

Dominio .org

Servidores del entorno de producción y al usar mainnet.

Usar el Javascript Client

Para usar el Javascript Client, por favor consulte https://github.com/decentraland/social-rpc-client-js#using-the-clientarrow-up-right

Implementaciones de cliente de referencia

Última actualización