@ocularsolution/core
v0.2.0
Published
Núcleo agnóstico de framework para el SDK de Ocular Solution.
Downloads
450
Readme
@ocularsolution/core
Núcleo agnóstico de framework del SDK de videollamadas de Ocular Solution.
En la mayoría de los casos no necesita instalar este paquete directamente. Use el adaptador de su framework — este paquete llega como dependencia automática:
| Su stack | Paquete | |---|---| | React / Next.js |
@ocularsolution/react| | React Native / Expo |@ocularsolution/react-native| | Vue 3 / Nuxt |@ocularsolution/vue| | Astro |@ocularsolution/astro|
Qué contiene
OcularClient— máquina de estados del ciclo de vida del widget (idle → loading → ready → visible ⇄ hidden, +error), con eventos tipados.TypedEventEmitter— emisor de eventos con handlers aislados.- Interfaz
Transport— contrato que implementan los adaptadores (DomTransporten web,WebViewTransporten React Native) para comunicar el cliente con el widget.
Sin dependencias, SSR-safe (no accede a window/document), ~6 KB. Tipos TypeScript (.d.ts) incluidos.
Uso directo (avanzado)
Solo necesario si implementa un transport propio para un entorno no cubierto por los adaptadores:
import { OcularClient } from '@ocularsolution/core';
const client = new OcularClient({
widgetCode: 'SU_WIDGET_CODE', // aprovisionado por Ocular Solution
transport: miTransport, // implementación de la interfaz Transport
});
client.on('state:changed', ({ from, to }) => console.log(from, '→', to));
await client.load(); // resuelve cuando el widget señala ready
await client.show(); // abre la videollamadaEventos
| Evento | Payload |
|---|---|
| state:changed | { from, to } |
| widget:ready | — |
| call:joined / call:left | { callId, ... } |
| widget:message | { data } |
| error | { code, message, cause } |
Métodos
load(), show(full?), hide(reason?), toggle(), setLocale(locale), setCustomer(customer), showPopUp(show), align(position), destroy().
Protección de datos
setCustomer() permite asociar datos del usuario a la sesión. No envíe datos personales sin base legal y consentimiento.
© Ocular Solution. Soporte: a través de su canal de cuenta. Incidentes de seguridad: [email protected]
