es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

El bot Lex no debe aceptar únicamente números enteros.

He creado un bot de Amazon Lex que ofrece varios servicios:

  1. abrir un caso
  2. verificar estado
  3. estado vía email

intención de bienvenida

En la primera opción, abrimos un caso que requiere una razón por la cual se está abriendo un caso.
Mi bot recibe todos los valores como razones, incluso si el usuario ingresa un número, lo añade como razón.

El problema

Lo único que quiero hacer es evitar que mi bot acepte solo valores enteros. Si mi bot acepta razones como “laptop rota” o “problema de internet”, está bien.

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Para evitar que el bot de Amazon Lex acepte solo valores enteros como razones para abrir un caso, puede agregar un código de validación en la configuración del intento.

    Aquí tienes un ejemplo de cómo agregar un código de validación en la consola de Amazon Lex:

    1. Ve a la página de configuración del intento para el intento “Abrir un caso”.
    2. Desplázate hacia abajo hasta la sección “Inicialización y validación de Lambda”.
    3. Haz clic en el botón “Agregar un código de validación”.
    4. En el editor de código de validación, agrega el siguiente código:
    def validate_open_case(intent_request):
        reason = intent_request['currentIntent']['slots']['Reason']
        try:
            int(reason)
            return {'isValid': False, 'violatedSlot': 'Reason', 'message': 'Por favor proporciona una razón válida para abrir un caso.'}
        except ValueError:
            return {'isValid': True}
    
    1. Haz clic en el botón “Guardar” para guardar el código de validación.

    Este código verifica si el valor del slot “Reason” se puede convertir en un número entero. Si se puede convertir en un número entero, devuelve un mensaje de error de validación. Si no se puede convertir en un número entero, devuelve un mensaje de éxito de validación.

    Con este código de validación en su lugar, tu bot de Amazon Lex solo aceptará valores no enteros para el slot “Reason” al abrir un caso. Esto evitará que los usuarios ingresen accidentalmente números como razones para abrir un caso.

Comments are closed.