🚀 Guía de Integración: Wobe Cloud

Wobe Cloud es una solución integral para desarrolladores que permite implementar Login Unificado (SSO) y Almacenamiento en la Nube (NoSQL) sin necesidad de gestionar servidores propios o bases de datos complejas.

⚠️ Notas sobre el uso de Wobe Cloud Storage

Wobe Cloud está diseñado para llevar configuraciones, progresos e historiales de forma multiplataforma.

1. Registro de tu Aplicación

Antes de empezar, da de alta tu servicio en el Panel de Developers:

2. Autenticación (SSO)

Para que un usuario entre a tu app con su cuenta de Wobe, redirígelo a: https://wobeaccounts.pages.dev/?Service=TU_ID&Redirection=TU_URL&auto=false

Verificar el Código de Acceso

Una vez que el usuario te entregue el token, valídalo mediante una petición GET: https://ludavideo-backend.vercel.app/wobe-auth?action=verify&token=EL_CODIGO&service_id=TU_ID

Respuesta: Si es correcto, el servidor devolverá el nombre del usuario (ej: luciano).

3. Almacenamiento en la Nube (Cloud Storage)

Wobe maneja los datos de forma anidada por cada aplicación.

A. Guardar o Actualizar datos (SET)

Realiza una petición POST al endpoint: https://ludavideo-backend.vercel.app/wobe-auth?action=storage

Cuerpo (JSON):

JSON


{

  "method": "SET",

  "service_id": "TU_ID",

  "appPass": "TU_APPPASS",

  "usuario": "nombre_usuario",

  "data": { 

    "notes": [...],

    "config": { "tema": "oscuro" }

  }

}


Nota: El campo data debe ser un objeto JSON puro, no un string.

B. Recuperar datos (GET)

Envía un POST con el mismo formato pero cambiando el método a "GET".

Estructura de la respuesta: El servidor siempre devuelve los datos dentro de la propiedad .data:

JSON


{

  "status": "success",

  "data": {

    "notes": [...],

    "config": { "tema": "oscuro" }

  }

}


Si el usuario no tiene datos previos, data será un objeto vacío {}.

4. Seguridad y Buenas Prácticas

5. Ejemplo de Implementación (JavaScript)

JavaScript


// Guardar notas

async function syncCloud(notas) {

  await fetch(URL, {

    method: 'POST',

    headers: { 'Content-Type': 'application/json' },

    body: JSON.stringify({

      method: "SET",

      service_id: "TU_ID",

      appPass: "TU_CLAVE",

      usuario: "USUARIO_DEL_USUARIO",

      data: { notes: notas }

    })

  });

}

6. Solicitar datos de servicios de terceros

Si por algún motivo quieres que tu app pueda ver cuanto elo tiene el usuario en Wobe Chess o su historial en LUDAVIdeo? Esto es totalmente posible con el parámetro ?RequestService=Servicio como, por ejemplo, si quieres acceder a la cantidad de elo que tiene el usuario en Wobe Chess y el nombre de tu servicio es LUDAVIdeo la URL seria ?Service=ludavideo&Redirection=free.ludavideo.ct.ws&RequestService=Wobe%20Chess haciendo que al usuario le salga una nueva pantalla permitiéndole ver los datos que compartirá con tu app. Pero tienes que ser cuidadoso con esto porque tienes que escribir el nombre del servicio tal y como esta guardado (Como aparece en Wobe Accounts) y además si la app Wobe Chess devuelve "elo" y tu app busca "Elo" no podras ver el elo de cada usuario. Existe un diccionario de cómo se guardan los datos en apps oficiales de Wobe pero es posible que tengas que consultar al desarrollador de otra app si quieres que tu app acceda a los datos del usuario en esa app.