Propiedades Activas
Control de Interfaz
Callbacks
Firmas de Callbacks
handleReportreport coincide con la estructura definida en tu JSON Schema template. Ejemplo de payload:
templateExtras: el SDK no renombra ni transforma campos. Se empareja con la prop templateExtras. Ver Acciones clínicas (Extras).
onEvent
eventSubscriptions (p. ej. ['recording.*', 'activity.*', 'report.*']). Sin suscripción no se entrega nada. Los payloads solo contienen enumerados, booleanos y números —nunca texto clínico ni identificadores—. Pensado para detectar inactividad y para mantener viva la sesión de tu sistema mientras el médico graba (recording.heartbeat). Ver Eventos de actividad.
Datos Contextuales
Curación de informes y pre-carga desde el EMR
Estas props impulsan dos funcionalidades de informes. Consulta sus guías dedicadas para el flujo completo.Eventos de actividad
Ver la guía completa, con el catálogo de eventos y las recetas de inactividad, en Eventos de actividad.
Indicador de Consentimiento
El indicador de estado de consentimiento en el encabezado no es una propiedad del componente. Se habilita desde la configuración de tu cuenta/perfil de Omniloy (contacta a support@omniloy.com para activarlo). Cuando está habilitado, el indicador refleja el camposignedConsent que proporcionas dentro de patientdata (ver Datos del Paciente) y muestra tres estados: consentimiento firmado, sin firmar, y uso de IA rechazado.
Activar esta opción hace algo más que mostrar el indicador. Si el paciente consta con signedConsent.aiUse en "refused", no se pueden grabar ni generar informes en esa consulta (grabación, dictado, informe y acciones clínicas); el chat sigue disponible, con el motivo visible para el médico. Si tu HIS no informa aiUse, nada cambia respecto al comportamiento actual.
Localización
El idioma por defecto es
"es" (Español). Si tu aplicación está dirigida a usuarios de habla inglesa, establece language="en" explícitamente.Contexto de analítica
Depuración
Personalización CSS
SofIA SDK se renderiza como un Web Component con Shadow DOM. Esto evita conflictos con los estilos de la aplicación host, pero también significa que el CSS global de la aplicación no afecta directamente a los elementos internos del SDK. Si necesita ajustar estilos internos concretos, inyecte una etiqueta<style> dentro del shadowRoot del componente una vez que el Web Component esté definido y montado:
#sofia o #sofia-component. En Angular, ejecute esta lógica en ngAfterViewInit. En AngularJS, puede llamarla después de configurar los atributos y callbacks del componente. Si el componente se crea de forma condicional, vuelva a ejecutar la función después de montarlo.
Recuperación Manual de Reportes
Además de recibir el reporte automáticamente, puedes solicitarlo bajo demanda desde tu aplicación. La propiedadset-get-last-report ejecuta un callback que te proporciona una función asíncrona. Debes almacenar esta referencia para usarla cuando necesites recuperar el último reporte generado.
Ejemplos de Uso
Configuración básica con datos del paciente
Las propiedades de datos van como atributos del elemento; los callbacks se asignan como propiedades JS:Modo solo chat (sin generación de reportes)
Para usar SofIA en modo solo chat, simplemente omita las propiedadestemplate y templateid. El botón de generar no aparecerá.
Configuración avanzada con callbacks
Propiedades Deprecadas
Notas Importantes
- patientdata: Debe contener solo información necesaria para el contexto clínico, siguiendo principios de minimización de datos.
- Estados: Los cambios en propiedades booleanas se reflejan inmediatamente en la interfaz.
- Localización: Cambiar el idioma afecta toda la interfaz del componente, incluyendo mensajes de error y etiquetas.
- Callbacks: Asigna los callbacks programáticamente como propiedades JS del elemento (ej.:
element.handleReport = fn). No pueden conectarse mediante atributos HTML ni nombres de función globales.