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:
| Archivo | Qué es |
|---|---|
rimasun.js | El SDK: Rimasun.pantalla y Rimasun.Llamada. |
livekit-client.umd.js | Motor de medios (livekit-client 2.22.3). El SDK lo carga solo, con integridad SRI fijada. |
livekit-client.e2ee.worker.js | Worker del cifrado de extremo a extremo (solo si usa cifrado). El SDK verifica su hash antes de usarlo. |
ejemplo.html | Pá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ón | Por defecto | Descripción |
|---|---|---|
credencial | — | Respuesta de /v1/tokens: { token, url, sala, expira, calidad }. |
titulo, subtitulo | "" | Textos de la parte superior. |
conVideo | true | false para una llamada de voz. |
colorPrincipal, colorAcento | #2A3C58, #51BFD1 | Colores en hexadecimal. |
contenedor | document.body | Elemento 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. |
permitirInseguro | false | Acepta ws:// fuera de la red local. Solo pruebas. |
motor, motorIntegridad | carpeta del SDK | Otra ruta del motor y su hash SRI. |
nonce | el del <script> | Nonce de su CSP para la hoja de estilos (solo navegadores antiguos). |
depuracion | false | Registro 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ón | Descripció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.versionMotor | Versiones 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 aceptaws://alocalhost,*.localo 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