Servicio web Publicar resultados de asignación
VoiceCheck consume un servicio web que expone el sistema host para publicar los resultados, que esencialmente es una importación de datos. Este mensaje se puede enviar varias veces para una asignación dada. Se envía cada vez que un usuario envía los resultados por medio de la interfaz gráfica de usuario (IGU) de VoiceCheck. Incluye los resultados de cualquier paso que tenga un estado de “completo” o “no corresponde” al momento del envío y que no se hayan enviado antes al sistema host.
Para utilizar esta funcionalidad de exportación, el sistema host debe implementar un servicio web REST o SOAP de acuerdo con los detalles que se indican a continuación. VoiceCheck incluye clientes de servicios web REST y SOAP que pueden consumir un servicio compilado de acuerdo con las siguientes especificaciones. Para SOAP, el documento WSDL PostAssignmentResults.wsdl incluido en el paquete de producto, detalla el contrato que debe implementar el servicio SOAP. Para REST, se incluye un ejemplo de WADL en el paquete de producto como una referencia para los implementadores que desarrollan un servicio REST.
Tenga en cuenta que para REST, la especificación es ligeramente más flexible que lo que se detalla en el WADL de ejemplo. En realidad, ni siquiera es necesario utilizar un WADL, siempre y cuando el servicio tenga un comportamiento como se especifica a continuación.
Servicio web REST
URL: Completamente flexible, se puede decidir de acuerdo con cada implementación del servidor.
La URL puede especificar http o https. El cliente de VoiceCheck usa el transporte correspondiente al protocolo especificado. Configure la URL como el punto final del servicio en Administración > Configuración del sistema de la interfaz de usuario.
Ejemplo: <http o https>://<server>/assignmentResults
Autenticación: La autenticación HTTP básica es compatible, pero no obligatoria. Active la autenticación para el cliente de VoiceCheck mediante la selección de la casilla Requiere autenticación en la página Administración > Configuración del sistema de la interfaz de usuario.
Método: PUBLICAR
Tipo de contenido: application/xml;charset=UTF-8
El cliente de VoiceCheck siempre envía el contenido de los resultados con este tipo de contenido, de tal manera que la implementación del servidor host debe aceptar este tipo de contenido.
Cuerpo del mensaje: XML como se indica en el esquema en WADL, cuyos elementos se describen en las siguientes tablas.
Respuesta: Si es correcto, estado HTTP 204 (sin contenido) con un cuerpo vacío. También es aceptable que el servicio devuelva estado HTTP 200 (correcto), con o sin un cuerpo. Si el cliente de VoiceCheck recibe un cuerpo, este se ignorará.
Cuando arroja contenido, el servidor debe usar el tipo de contenido: application/xml;charset=UTF-8
Cualquier código de estado HTTP distinto a 200 o 204 se considera un error. Cuando sea posible, el sistema host debe arrojar un cuerpo para los errores que contienen un elemento faultInfo. La información en el elemento faultInfo se utilizará para proporcionar detalles adicionales acerca del error para el usuario de la IGU. Consulte Manejo de fallas de datos de asignación para obtener más información.
Servicio web SOAP
WSDL: Debe compilar un servidor que implemente PostAssignmentResults.wsdl como lo estipula Honeywell. Los detalles de la siguiente entrada describen los elementos de datos en este WSDL.
Punto final de servicio: Completamente flexible, se puede decidir de acuerdo con cada implementación del servidor.
La URL puede especificar http o https. El cliente de VoiceCheck usa el transporte correspondiente al protocolo especificado. Configure la URL como el punto final del servicio en la página Administración > Configuración del sistema de la interfaz de usuario.
Ejemplo: <http o https>://<server>/AssignmentResultsService
Autenticación: La autenticación HTTP básica es compatible, pero no obligatoria. Active la autenticación para el cliente de VoiceCheck mediante la selección de la casilla Requiere autenticación en la página Administración > Configuración del sistema de la interfaz de usuario.
Manejo de fallas: Es posible que el servidor arroje alguna falla de SOAP. Si el servidor arroja la falla WebServiceException que se especifica en el WSDL, el mensaje incluido en WebServiceException se mostrará como parte del mensaje de error en la IGU de VoiceCheck. El resto de las fallas desencadenará un mensaje de error genérico en la IGU.
Detalles de la entrada
Resultados de asignación: encabezado | |||
---|---|---|---|
Propiedad | Tipo | Obligatorio | Definición |
siteName | cadena | sí | El nombre del sitio. |
assignmentId | cadena | sí | La propiedad assignmentId que se envió desde el sistema host a VoiceCheck en el mensaje Crear asignación. |
workId | cadena | sí | La propiedad workId que se envió desde el sistema host a VoiceCheck en el mensaje Crear asignación. |
usuario | cadena | sí | El usuario de la IGU de VoiceCheck que envió los resultados. |
timeSubmitted | datetime | sí | La hora en que el usuario envió los resultados al sistema externo. Tipo de dato: esquema XML tipo xs:dateTime. Formato: valor de cadena xs:dateTime válido que indica la hora en UTC: YYYY-MM-DDThh:mm:ss.sssZ Ejemplo: 2014-06-14T19:27:33.152Z |
metadata | lista de pares de clave-valor | no | Una lista de información de paso adicional acerca de la asignación que se envió en el mensaje Crear asignación. |
sectionResults | lista de resultados de la sección | sí | Lista de resultados de la sección definidos en la siguiente tabla. |
Resultados de asignación: resultados de sección | |||
---|---|---|---|
Propiedad | Tipo | Obligatorio | Definición |
sectionId | cadena | sí | Un identificador de la sección que se envió desde el sistema host en el mensaje Crear asignación. |
stepResults | lista de resultados del paso | sí | Lista de resultados del paso definidos en la siguiente tabla. |
Resultados de asignación: resultados de paso | |||
---|---|---|---|
Propiedad | Tipo | Obligatorio | Definición |
sequenceCounter | cadena numérica | sí | La propiedad sequenceCounter enviada para el paso en el mensaje Crear asignación. |
stepId | cadena | sí | El identificador del paso que se realizó desde el VoiceForm. Este valor coincide con la propiedad stepId que se envió para el paso en el mensaje Crear asignación. |
usuario | cadena | sí | Técnico o nombre de usuario de Voice Inspection que realizó la última actualización del resultado. |
metadata | lista de pares de clave-valor | no | Una lista de información de paso adicional acerca del paso que se envió en el mensaje Crear asignación. |
startTime | datetime | sí | La fecha y hora cuando el operador del dispositivo inició el paso en la aplicación de voz. Tipo de dato: Esquema XML tipo xs:dateTime Formato: valor de cadena xs:dateTime válido que indica la hora en UTC: YYYY-MM-DDThh:mm:ss.sssZ Ejemplo: 2014-06-14T19:27:33.152Z Los resultados que genera el sistema, tales como un paso dependiente marcado como "no corresponde", no incluyen una hora de inicio. Puede que startTime y endTime no siempre reflejen el tiempo real dedicado en la realización del paso, debido a que la aplicación de voz proporciona funciones para los técnicos, como por ejemplo, omitir pasos y rehacer pasos. |
endTime | datetime | sí | La fecha y hora cuando el operador del dispositivo completó el paso en la aplicación de voz. Tipo de dato: esquema XML tipo xs:dateTime. Formato: valor de cadena xs:dateTime válido que indica la hora en UTC: YYYY-MM-DDThh:mm:ss.sssZ Ejemplo: 2014-06-14T19:27:33.152Z Puede que startTime y endTime no siempre reflejen el tiempo real dedicado en la realización del paso, debido a que la aplicación de voz proporciona funciones para los técnicos, como por ejemplo, omitir pasos y rehacer pasos. |
status | entero | sí | Un valor entero que describe el estado final del paso. Valores válidos: 2 = No corresponde 3 = Completo |
results | lista de cadenas | no | Una lista de resultados del paso. Cada resultado se especifica como un elemento de resultado que contiene una cadena. Cuando el estado es "2" (no corresponde), no se envían resultados (el XML no contiene ningún elemento de resultado). Cuando el estado es "3" (completo), pueden o no enviarse los resultados según el tipo de paso. Consulte la siguiente tabla "Resultados para pasos completados" |
Resultados para pasos completados | |
---|---|
Tipo de paso (desde VoiceForm) | Descripción |
Solo indicación | No se enviaron resultados. |
Listo | No se enviaron resultados. |
Notas | Se envió cero o más resultados. Se envía un resultado para cada transcripción que no está en blanco. Si todas las notas de un paso tienen transcripciones en blanco, no se envían resultados. |
Selección de listas múltiples | Se envió uno o más resultados. Se envía un resultado para cada selección realizada en la indicación. El valor de cada resultado será la clave del VoiceForm que representa la selección realizada. |
Valor float | Se envió un resultado. El resultado es el valor que dijo el usuario. |
Entrada de valor | Se envió un resultado. El resultado es el valor que dijo el usuario. |
Entrada de valor largo | Se envió un resultado. El resultado es el valor que dijo el usuario. |
Fracción | Se envió un resultado. El resultado es el valor que dijo el usuario. |
Fecha | Se envió un resultado. El resultado es el valor dicho por el usuario y formateado conforme al formato de fecha especificado en el VoiceForm. |
Fotos | Se envió uno o más resultados. Se envía un resultado para cada foto tomada. El valor de cada resultado será la URL que puede usar el sistema externo para recuperar la foto mediante el uso del servicio web Obtener foto. |
Número de pieza | Se envió un resultado. El resultado es el valor que dijo o eligió el usuario. |