Rimasun Docs

SDK web 1.1.0

Un archivo, sin compilación ni npm. Funciona en Chrome, Edge, Firefox y Safari (escritorio y celular).

Instalar

Descargue el paquete SDK web (Mi cuenta → Descargas), verifique su firma y copie a su sitio, en la misma carpeta:

ArchivoQué es
rimasun.jsEl SDK: Rimasun.pantalla y Rimasun.Llamada.
livekit-client.umd.jsMotor de medios (livekit-client 2.22.3). El SDK lo carga solo, con integridad SRI fijada.
livekit-client.e2ee.worker.jsWorker del cifrado de extremo a extremo (solo si usa cifrado). El SDK verifica su hash antes de usarlo.
ejemplo.htmlPágina de prueba: pegue una credencial y entre a la sala.
<script src="/rimasun/rimasun.js"
        integrity="sha384-v7YIM4AQxHFw+TZD/h0Oulo/IQgI03vqyEGAwk6pdZus60mFJiZVZr1UrWySirke"
        crossorigin="anonymous"></script>

El hash integrity corresponde a rimasun.js 1.1.0. Si usa otra versión, calcúlelo como se explica en SRI.

Pantalla lista

Rimasun.pantalla({
  credencial: datosDelServidor,      // la respuesta de POST /v1/tokens que le entrega SU servidor
  titulo: "Dr(a). Ana Pérez",        // nombre de la otra persona
  subtitulo: "Cita N.º 310",
  alTerminar: function (segundos, motivo) { /* guardar la duración, etc. */ },
  alCerrar: function () { /* volver a su página */ }
});
OpciónPor defectoDescripción
credencial—Respuesta de /v1/tokens: { token, url, sala, expira, calidad }.
titulo, subtitulo""Textos de la parte superior.
conVideotruefalse para una llamada de voz.
colorPrincipal, colorAcento#2A3C58, #51BFD1Colores en hexadecimal.
contenedordocument.bodyElemento donde se dibuja.
alTerminar(segundos, motivo)—Al colgar o terminar la llamada.
alCerrar()—Al cerrar la pantalla.
cifrado—{ clave, worker, workerIntegridad }: cifrado de extremo a extremo. Ver E2EE.
permitirInsegurofalseAcepta ws:// fuera de la red local. Solo pruebas.
motor, motorIntegridadcarpeta del SDKOtra ruta del motor y su hash SRI.
nonceel del <script>Nonce de su CSP para la hoja de estilos (solo navegadores antiguos).
depuracionfalseRegistro detallado del motor en la consola. No en producción.

Devuelve { llamada, cerrar }. Comportamiento:

  • Llamada 1:1: termina sola cuando la otra persona sale.
  • «Compartir pantalla» aparece solo si el proyecto lo permite; «Girar» solo si el equipo tiene más de una cámara.
  • Si el navegador bloquea el sonido, aparece «Activar sonido».
  • Al cerrar o salir de la página se desconecta y apaga cámara y micrófono.

Interfaz propia

var ll = new Rimasun.Llamada({ terminarSiSalenTodos: true });
ll.on("cambio", pintar)          // cualquier cambio de estado, pistas o red
  .on("reloj", pintar)           // cada segundo en llamada (ll.duracion)
  .on("aviso", mostrar)          // problema no fatal (sin cámara, sin micrófono…)
  .on("fin", function (d) {});   // { segundos, motivo, error? }
ll.conectar(datosDelServidor, { conVideo: true });

// ll.estado: inactiva | conectando | esperando | enLlamada | reconectando | terminada | error
// ll.videoDe(ll.otro).attach() → <video>     ll.audiosDe(ll.otro) → pistas de audio
// ll.redDe(p): excelente | buena | debil | sinConexion | desconocida
// ll.alternarMicrofono(), ll.alternarCamara(), ll.cambiarCamara(), ll.alternarPantalla(),
// ll.activarSonido(), ll.colgar()      ll.cifrada: true si va con E2EE

Cada Rimasun.Llamada sirve para una sola llamada: para otra, cree una nueva.

Utilidades

FunciónDescripción
Rimasun.validar(credencial, { permitirInseguro })"" si sirve, o el motivo (formato, vencimiento, wss://, sala).
Rimasun.credencial(json)Normaliza la respuesta del servidor. El token no aparece en console.log ni JSON.stringify.
Rimasun.version, Rimasun.versionMotorVersiones del SDK y del motor fijado.

Requisitos

  • https (o localhost): sin eso el navegador no da cámara ni micrófono.
  • Servidor de medios por wss://. En desarrollo se acepta ws:// a localhost, *.local o IP privada.
  • Puertos UDP del motor abiertos en la red (o TURN/TCP configurado en su servidor de Rimasun).
  • Si su sitio tiene CSP, vea la CSP recomendada.

Rimasun · documentación en español · cambios por versión