Instalação
Adicione o seguinte código HTML no local onde deseja que a Voa apareça no prontuário eletrônico:
<iframe
src="https://integration.voa.health/embed?patientId={PATIENT_ID}&doctorId={DOCTOR_ID}&consultationId={CONSULTATION_ID}&authToken={AUTH_TOKEN}&bearerToken={BEARER_TOKEN}&uiScale={UI_SCALE}&clinicalType={CLINICAL_TYPE}&output_style={OUTPUT_STYLE}&consultationType={CONSULTATION_TYPE}"
width="100%"
height="600"
frameborder="0"
allow="microphone"
id="voaIframe"
></iframe>
Substitua os seguintes parâmetros:
Autorização (utilize uma das opções abaixo):
{BEARER_TOKEN}
: Token de autenticação único para cada consulta;{AUTH_TOKEN}
: Token de autenticação único para a integração em específico;
Para mais detalhes sobre a autenticação, consulte a página de Autenticação do Iframe.
Consulta:
{PATIENT_ID}
: ID do paciente no sistema de prontuário;{DOCTOR_ID}
: ID do médico no sistema de prontuário;{CONSULTATION_ID}
: Identificador único do sistema de prontuário eletrônico;{UI_SCALE}
: Escala de UI contida no iframe. Veja as opções disponíveis abaixo;{CLINICAL_TYPE}
: Modelo de documento a ser gerado pela IA. Veja as opções disponíveis abaixo.{OUTPUT_STYLE}
: Formato de output de Anamnese. Veja as opções disponíveis abaixo.{CONSULTATION_TYPE}
: Tipo da consulta. Veja as opções disponíveis abaixo.
2. Comunicação via postMessage
Enviando mensagens para a Voa
Para enviar mensagens do prontuário eletrônico para a Voa, use:
const voaIframe = document.querySelector("iframe#voaIframe");
voaIframe.contentWindow.postMessage(
{
eventName: "voa.plugin.recorder",
eventData: {
"command": "stopRecording"
},
},
"https://integration.voa.health"
);
Recebendo mensagens da Voa
Para receber mensagens da Voa no prontuário eletrônico:
window.addEventListener("message", (event) => {
if (event.origin !== "https://integration.voa.health") return;
const { eventName, eventTimestamp, eventData } = event.data;
switch (eventName) {
case "voa.plugin.recorder":
// Lógica para lidar com informações do gravador
break;
case "voa.plugin.sequenceUpload":
// Lógica para lidar com o a transcrição de um trecho à medida que são disponibilizadas
break;
case "voa.plugin.fullTranscription": // Retorno da solicitação de "voa.plugin.fullTranscription"
// Lógica para lidar com o retorno da transcrição completa
break;
case "voa.plugin.generate": // Retorno da solicitação de "voa.plugin.generate"
// Lógica para lidar com o retorno solicitação para gerar documento
break;
}
});
Veja mais detalhes das mensagens em Tipos de mensagem
Last updated