sdk.start()
Firma
sdk.start(payload?: Record<string, unknown>): Promise<EventResult>Envía un evento started al servidor indicando que el jugador comenzó la partida. Solo se ejecuta una vez por sesión — las llamadas posteriores devuelven { skipped: true } sin hacer ninguna petición.
Parámetros
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
payload | object | No | Datos adicionales sobre el inicio de la partida (modo, dificultad, etc.). |
El SDK añade automáticamente game_slug al payload antes de enviarlo.
Valor de retorno
Promise<EventResult>:
interface EventResult { event_id?: string | number | null; // ID del evento en la BD (si fue registrado) reward?: null; // siempre null en start() skipped?: boolean; // true si ya se había llamado antes relayed?: boolean; // true si se envió por fallback postMessage}Cuándo llamarlo
Llama a start() cuando el jugador haga su primer gesto real — cuando haga clic en “Jugar”, no cuando cargue la página. Esto garantiza que la sesión solo existe cuando el jugador realmente inició.
document.getElementById('btn-jugar').addEventListener('click', async () => { await sdk.start({ dificultad: 'normal' }); iniciarPartida();});Ejemplos
Mínimo
await sdk.start();Con datos del modo de juego
await sdk.start({ modo: 'multijugador', dificultad: 'difícil', mapa: 'nivel_3',});Manejo de errores
try { await sdk.start();} catch (err) { // Muestra un mensaje amigable pero no bloquees el juego. // El servidor puede tener un error temporal. console.warn('No se pudo registrar el inicio:', err.message);}