Configurar las actualizaciones del progreso de cumplimiento - Amazon Lex

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Configurar las actualizaciones del progreso de cumplimiento

Cuando se llama a la función de Lambda de cumplimiento para una intención, el bot no envía una respuesta hasta que se completa la función. Si la función de Lambda tarda más de unos segundos en completarse, el usuario puede pensar que el bot no responde. Para solucionar este problema, puede configurar su bot para que envíe actualizaciones al usuario mientras se ejecuta la función de Lambda de cumplimiento, de modo que el usuario sepa que el bot sigue trabajando en su solicitud.

Cuando añade actualizaciones de cumplimiento a una intención, el bot responde al inicio de esta y periódicamente mientras esté en curso. Cuando configura la respuesta de inicio, puede especificar un retraso antes de que el bot envíe la respuesta. Con esto, puede respaldar los casos en los que el cumplimiento no finalice con relativa rapidez. Cuando configura una respuesta de actualización, debe especificar la frecuencia con la que desea que se envíen las actualizaciones. También configura un tiempo de espera para limitar el tiempo de ejecución de la función de cumplimiento.

También puede añadir respuestas posteriores al cumplimiento a un bot. Esto permite al bot enviar una respuesta diferente en función de si el cumplimiento se realiza correctamente, si no se cumple o si se agota el tiempo de espera.

Las actualizaciones de cumplimiento solo se utilizan cuando se interactúa con un bot mediante la operación StartConversation. Puede usar la actualización posterior al cumplimiento cuando interactúe con el bot mediante las operaciones StartConversation, RecognizeText y RecognizeUtterance.

Actualizaciones de cumplimiento

Las actualizaciones de cumplimiento se envían mientras la función de Lambda cumple una intención. Al activar las actualizaciones de cumplimiento, proporciona una respuesta inicial que se envía al principio del cumplimiento y una respuesta de actualización que se envía periódicamente mientras el cumplimiento está en curso.

Cuando especifica una respuesta de actualización, también especifica un tiempo de espera que determina cuánto tiempo puede funcionar la función de cumplimiento. Puede especificar un tiempo de espera de hasta 15 minutos (900 segundos).

Si desactiva las actualizaciones de cumplimiento configurando active en falso en la consola o mediante la operación CreateIntent o UpdateIntent, no se utilizará el tiempo de espera especificado para las actualizaciones de cumplimiento y, en su lugar, se utilizará el tiempo de espera predeterminado de 30 segundos.

Si se agota el tiempo de espera de la función de cumplimiento, Amazon Lex V2 realiza una de estas tres acciones:

  • La respuesta posterior al cumplimiento está configurada y activa: devuelve la respuesta de tiempo de espera.

  • La respuesta posterior al cumplimiento está configurada y no activa: devuelve una excepción.

  • La respuesta posterior al cumplimiento no está configurada: devuelve una excepción.

Iniciar respuesta

Amazon Lex V2 devuelve la respuesta de inicio cuando se llama a la función de cumplimiento de Lambda durante una conversación de streaming. Por lo general, indica al usuario que cumplir con la intención lleva algún tiempo y que debe esperar. La respuesta de inicio no se devuelve cuando se utilizan las operaciones RecognizeText o RecognizeUtterance.

Puede especificar hasta cinco mensajes de respuesta. Amazon Lex V2 elige uno de los mensajes para reproducirlo al usuario.

Puede configurar un retraso entre el momento en que se llama a la función de Lambda y el momento en que se devuelve la respuesta de inicio. La respuesta de inicio no se devuelve si la función de Lambda completa su trabajo antes de que se complete el retraso.

Puede usar el conmutador active de la consola o la estructura FulfillmentUpdatesSpecification para activar y desactivar la respuesta de inicio. Si active es falsa, no se reproduce la respuesta de inicio.

Actualizar la respuesta

Amazon Lex devuelve la respuesta de actualización periódicamente durante la conversación de streaming cuando la función de cumplimiento se está ejecutando. La respuesta de actualización no se reproduce cuando se utilizan las operaciones RecognizeText o RecognizeUtterance. Puede configurar la frecuencia con la que se reproduce la respuesta de actualización. Por ejemplo, puede reproducir una respuesta de actualización cada 30 segundos mientras se ejecuta la función de cumplimiento para que el usuario sepa que el proceso se está ejecutando y que debe seguir esperando.

Puede especificar hasta cinco mensajes de actualización. Amazon Lex V2 elige uno mensaje para reproducirlo al usuario. El uso de varios mensajes evita que las actualizaciones sean repetitivas.

Si el usuario introduce datos mediante voz, DTMF o texto mientras se ejecuta la función de Lambda de cumplimiento, Amazon Lex V2 devuelve la respuesta de actualización al usuario.

Si la función de Lambda completa su trabajo antes de que finalice el primer período de actualización, no se devuelve la respuesta de actualización.

Puede usar el conmutador active de la consola o la estructura FulfillmentUpdatesSpecification para activar y desactivar la respuesta de actualización. Si active es falsa, no se devuelve la respuesta de actualización.

Respuesta posterior al cumplimiento

Amazon Lex V2 devuelve una respuesta posterior al cumplimiento cuando finaliza la función de cumplimiento. La respuesta posterior al cumplimiento se puede utilizar para cumplir cualquier intención, no solo para transmitir conversaciones. La respuesta posterior al cumplimiento permite al usuario saber que la función ha finalizado y el resultado obtenido.

Puede usar el conmutador active de la consola o la estructura PostFulfillmentStatusSpecification para activar y desactivar la respuesta posterior al cumplimiento. Si active es falsa, no se reproduce la respuesta.

Hay tres tipos de respuestas posteriores al cumplimiento:

  • Éxito: se devuelve cuando la función de Lambda de cumplimiento completa su trabajo correctamente. Si las respuestas posteriores al cumplimiento no están activas. Amazon Lex V2 realiza la siguiente acción configurada.

  • Tiempo de espera: se devuelve si la función de Lambda no completa su trabajo antes de que transcurra el período de tiempo de espera configurado. Si las respuestas posteriores al cumplimiento no están activas, Amazon Lex V2 devuelve una excepción.

  • Fallo: se devuelve cuando la función de Lambda devuelve el estado Failed de la respuesta o cuando Amazon Lex V2 detecta un error mientras se cumple la intención. Si las respuestas posteriores al cumplimiento no están activas, Amazon Lex V2 devuelve una excepción.

Puede especificar hasta cinco mensajes por tipo. Amazon Lex V2 elige uno de los mensajes para reproducirlo al usuario.

A diferencia de las respuestas de inicio y actualización de cumplimiento, las respuestas posteriores al cumplimiento se reproducen tanto para conversaciones de streaming como de no streaming.

También tiene la opción de anular estos mensajes configurando la función de Lambda para que devuelva un mensaje posterior al envío.

nota

Si la intención tiene una respuesta de cierre, se devuelve después de la respuesta posterior al cumplimiento.

Ejemplo posterior al cumplimiento

Para entender mejor la respuesta posterior al cumplimiento, tomemos, como ejemplo, un bot de ReservarViaje, creado para ayudar a planificar un viaje, con la intención ReservarVuelo, configurado con una función de Lambda de cumplimiento que reserva el vuelo del cliente con una aerolínea. Una vez que se han seleccionado los slots para ReservarVuelo, Amazon Lex V2 invoca la función de Lambda de cumplimiento. Durante este proceso de cumplimiento, puede producirse uno de los tres resultados siguientes:

  • Éxito: el vuelo se reservó correctamente.

  • Tiempo de espera: el proceso de reserva tarda más que el tiempo de ejecución de cumplimiento Lambda configurado (por ejemplo, si no se puede contactar con la aerolínea dentro del tiempo asignado).

  • Fallo: la reserva no se realiza correctamente por otro motivo.

Puede aprovechar la respuesta posterior al cumplimiento para ofrecer una respuesta más significativa a sus clientes en cada una de estas situaciones. Los ejemplos de cada situación son los siguientes:

  • Respuesta correcta: «Hemos podido reservar tu billete correctamente y te hemos enviado un correo electrónico de confirmación. No dudes en ponerte en contacto con nosotros utilizando la información de contacto proporcionada en ese correo electrónico si tienes alguna pregunta».

  • Respuesta de tiempo de espera agotado: «Debido al intenso tráfico en nuestros sistemas, la reserva de tu billete está tardando más de lo esperado. Tenemos tu solicitud pendiente y te hemos enviado un correo electrónico con el número de referencia correspondiente a esta solicitud. Una vez que reservemos el billete, te enviaremos una confirmación de la reserva. No dudes en ponerte en contacto con nosotros utilizando la información de contacto proporcionada en ese correo electrónico si tienes alguna pregunta».

    nota

    Si no configura un mensaje de tiempo de espera, Lex arroja un error 4XX correspondiente al caso de uso.

  • Respuesta errónea: «Lamentablemente, no hemos podido reservar tu billete. Te hemos enviado un correo electrónico con los detalles del problema que hemos encontrado al hacer la reserva».