Graphlogic-latam
  • Getting Started
    • 🚀Guía de documentos
    • 📑Tutoriales de bots
      • 📋Creación de un robot de encuestas sencillo
      • ☔Creación de un bot con integración del servicio meteorológico
      • 🗣️Crear un bot con reconocimiento de voz
    • ❓PREGUNTAS FRECUENTES
    • 📔Qué preparar antes de crear tu Bot
      • 🔘Definir el objetivo y la funcionalidad necesaria
      • 💾Preparar los datos para el robot
      • 🧍Estilo de comunicación y humanización del bot
    • 📕Qué es Graphlogic.ai
    • 🗓️Historia de los comunicados
    • ▶️Cómo empezar a utilizar la Plataforma
      • 👨‍🦱Cuenta de usuario de la plataforma
        • 👨‍🦱Registro y autorización
        • 🏢Cuenta de usuario y empresa
        • 👨‍👨‍👦Funciones y gestión de usuarios en la empresa
        • 💵Suscripción y pago
  • 💻Vista general de las pestañas de la plataforma
    • 📁Pestaña Panel de control (Carpetas)
    • 📊Ficha Recursos
  • 🛠️Cómo crear tu Bot
    • 💡Proyecto: creación, edición, clonación y supresión
    • 🧾Agente y sus versiones
    • 🕵️‍♂️Agente: creación, edición y supresión
    • 📗Creación de un agente en Excel
    • 🔁Agente: exportación, importación, clonación y sustitución
    • 🗳️Visión general de BotBuilder y sus pestañas
      • 🗒️Pestaña Diseñador de agentes
      • 🎴Pestaña Intentos
      • 📖Pestaña Vocabularios
      • ↗️Ficha Solicitudes externas
      • ⬇️Fuentes de datos de preguntas y respuestas
    • 🚧Cómo construir el guión de un Agente
      • 🗃️Creación y tipos de ranuras y sub ranuras
      • 🎚️Desplazamiento y clonación de ranuras y ramas de script
      • 🧾Navegación por el árbol de guiones
      • 🖊️Cómo crear y configurar las franjas horarias
        • ▶️Inicio de un guión | Ranura de inicio
        • ⬇️Correos y notificaciones | Ranura para solicitudes entrantes
        • ⌚Activación del chatbot con un temporizador | Ranura del temporizador
        • 🛎️Correos en WhatsApp | Ranura de notificación
        • 📎Envío de archivos a usuarios bot | Ranura para archivos adjuntos
        • 📃Respuestas de texto | Ranura de texto
        • ⬆️External Request slot (Sending Requests to APIs from script)
        • 🗣️Transferencia del diálogo al operador | Cambiar ranura de modo de chat
        • 🧎Esperar el mensaje del usuario Bot | Esperar el espacio de reacción
        • 📚Bifurcación del script en función de las condiciones| Ranura de regla de transición y subranura de c
        • 7️⃣Botones en los mensajes del bot | Ranura de menú de botones +Subranuras de botones y Fallback
        • 🧏‍♂️Comprobación del formato de los datos introducidos por el usuario del bot| Ranura Expresión regular
        • 💡Reconocimiento de intenciones | ranura NLU + subranuras Intent y Fallback
        • 🤸‍♂️Transiciones a partes aleatorias del guión | Ranura de salto
        • 📑Recogida de datos del usuario Bot | Slot Llenado de slot
        • 💾Crear y guardar variables de contexto | Ranura de memoria
        • 📘Reconocimiento de entidades | Ranura para sinónimos
        • 🔄Implementación de bucles en un script | Repetición de slotGraphlogic.ai documentación
        • 🪩Reconocimiento de idiomas
        • 👩‍💻Generar una respuesta basada en una fuente de datos |Q&A
    • 🗨️Reconocimiento del lenguaje natural en los agentes
      • 🗣️Reconocimiento del lenguaje natural
      • 📈Las 5 intenciones principales
      • 🔒Reconocer entidades | Vocabularios
    • ✒️Sintaxis
    • ↕️Orquestación de agentes
    • ☎️Transferencia a un operador
    • 📌Opción de punto de guardado
    • ↘️Estado de la comunicación. Opción Continuar conversación
  • 🔀Cómo utilizar el contexto del chat en su agente
    • 🔡Variables de contexto
    • ✅Variables de contexto del sistema
    • 🖥️Variables de contexto del canal
    • 🚹Variables de contexto del usuario
  • ✅Cómo formar con éxito a su agente
    • ✅Requisitos para el éxito de la formación de agentes
    • 📋Probar el script del Agente
    • 👨‍💻Comprobación y mejora del reconocimiento de agentes: selección del umbral de confianza
    • ⚙️Formación adicional del Agente desde la pestaña Análisis
  • ⚛️Cómo desplegar su Agente en los canales
    • 🤖Publicar un proyecto
    • 🖥️Despliegue del proyecto en los canales
    • 🗨️Mensajeros
      • Telegram
      • 360Dialog (WhatsApp)
      • 360Dialog (nube)
      • Viber
      • Line messenger
      • VK Teams
      • 📇Widget
      • Facebook Messenger
    • 👨‍💻Plataformas omnicanal
      • Jivo
      • Chat2Desk
      • Bitrix24
      • Livetex
      • Edna Chat Center
      • Edna Pulse
      • Webim (External Bot API 1.0)
      • Webim (API de bots externos 2.0)
      • Omnidesk
    • Mensajeros de empresa
      • Microsoft Teams
    • API de mensajería
      • Chat API
      • 🗣️API del buzón de voz
        • API de voz
    • Compatibilidad con Markdown en los canales de fin de agente
  • Uso de agentes
    • Límites
  • 📈Cómo comprobar Analytics para sus Agentes
    • Ficha Análisis y filtros
    • Historial del chat
    • Informe del contexto del chat
    • Informe de estadísticas de slot
    • Informe Stop Slots
    • Informe de uso del proyecto
  • 🧷Información complementaria
    • 🖥️Capacidades funcionales y no funcionales de la Plataforma
    • Otros
      • 🏅Buenas prácticas en el diseño de diálogos
      • 💻Requisitos del sistema para trabajar con la consola de usuario
      • 📚Recursos
    • Solicitud de agrupación de diálogos
  • Integración de canales
  • 🔑Copia de los recursos e infraestructuras necesarios
  • 📝Tarea de incorporación
Powered by GitBook
On this page
  • Objeto e información general
  • Creación y configuración de ranuras
  • Atributos de los Slot
  • Retraso en el envío de la solicitud
  • Solicitudes externas
  • Funcionamiento de los Slot
  1. Cómo crear tu Bot
  2. Cómo construir el guión de un Agente
  3. Cómo crear y configurar las franjas horarias

External Request slot (Sending Requests to APIs from script)

PreviousRespuestas de texto | Ranura de textoNextTransferencia del diálogo al operador | Cambiar ranura de modo de chat

Last updated 2 months ago

Objeto e información general

La ranura de petición externa está diseñada para integrar el Agente con sistemas informáticos externos a través del protocolo HTTP (REST API o GraphQL, por ejemplo). Al procesar esta Ranura en el Script, se ejecuta una petición HTTP a la API del sistema externo, así como se recibe y procesa una respuesta a esta petición.

Creación y configuración de ranuras

Atributos de los Slot

La ranura de solicitud externa no contiene ajustes para la solicitud HTTP que envía; contiene una solicitud externa de recursos de la empresa, y la solicitud externa contiene todos los ajustes necesarios para enviar la solicitud y procesar la respuesta.

  1. Nombre - el nombre de la Ranura, que se mostrará en el Árbol de Escenarios. La longitud máxima de un valor de campo es de 40 caracteres.

  2. Solicitud - Solicitud externa de recursos de la empresa. Funciona la búsqueda incremental sin distinción entre mayúsculas y minúsculas de una consulta en la lista.

  3. Botón MOSTRAR SOLICITUD EN UNA NUEVA PESTAÑA: al hacer clic en el botón, la solicitud externa seleccionada en el campo se abre en la siguiente pestaña del navegador.

Retraso en el envío de la solicitud

El usuario puede configurar una Petición Externa para retrasar el envío de una Petición Externa - esperar algún tiempo antes de que la petición sea enviada. Para ello, es necesario especificar una cabecera especial er-delay en las cabeceras de la petición en la sección Cabeceras con el valor igual al retraso en el envío de una solicitud externa en segundos. Requisitos para el valor er-delay:

  • números enteros - de 0 a 60

  • los números superiores a 60 se tratan como 60

  • los números fraccionarios, los números negativos y los no numéricos se tratan como 0

⁠Ejemplos:

  1. Falta la cabecera er-delay corresponde a una espera de 0 segundos

  2. er-retraso: 10 corresponde a una espera de 10 segundos

  3. er-delay: 0 corresponde a una espera de 0 segundos

  4. er-delay: 100500 corresponde a una espera de 60 segundos

  5. er-retraso: -100500 corresponde a una espera de 0 segundos

  6. er-delay: valor no entero corresponde a una espera de 0 segundos

Solicitudes externas

Una Solicitud Externa es un objeto de Recursos de la Compañía, es decir, es accesible desde todos los Agentes de una determinada Compañía. Puede añadir, modificar, ver o eliminar una solicitud en la pestaña Solicitudes externas.

Funcionamiento de los Slot

Proceso de ejecución de la ranura de solicitud externa:

  1. Definición de una Solicitud Externa a ejecutar;

  2. Montaje de la URL final de una Solicitud Externa;

  3. Colección de cabeceras de solicitud;

  4. Montaje del cuerpo de la solicitud;

  5. Enviar una solicitud;

  6. Recepción de una respuesta y registro de Variables Contextuales.

    1. Tiempo de espera de una respuesta a una solicitud externa - 30 segundos

    2. Si el tamaño del cuerpo recibido en respuesta a una petición externa es superior a 5 KB, pero inferior a 100 KB, {"error": "el cuerpo recibido es superior a 5kb, puede analizarlo en la configuración de la petición externa, pero no se copiará en raw_response"} se escribe en raw_response;

    3. Si el tamaño del cuerpo recibido en respuesta a una solicitud externa es superior a 100 KB, el cuerpo se sustituye por uno vacío.

      1. Lo siguiente está escrito en raw_response: {"éxito":false, "error": "el cuerpo recibido es demasiado grande, se permite un máximo de 100kb"}.

    4. Si el tamaño del cuerpo recibido en respuesta a una solicitud externa no es superior a 100 KB, se intentará analizar la respuesta de acuerdo con la configuración de análisis de la pestaña Respuesta.

i. Si, al intentar parsear, fue posible encontrar un valor en la ruta dada, la Variable de Contexto correspondiente será creada\actualizada

ii. Si, al intentar parsear, no fue posible encontrar un valor en la ruta especificada, la Variable de Contexto correspondiente no es creada\actualizada.

e. Se intentará analizar una respuesta a una solicitud para cualquier código de respuesta de solicitud si se especifican los ajustes de análisis en la pestaña Respuesta

f. Cuando se procesa una respuesta a una solicitud, el código de respuesta de la solicitud se escribe en la variable response_status_code:

i. Si no es posible completar la solicitud, se escribirá el código 400

ii. Cuando expire el tiempo de espera de 30 segundos, se escribirá el código 408

iii. Si no hay respuesta del servidor, se registrará el código 499

g. En función de los resultados de la ejecución de la Solicitud Externa, se crea la variable request_success, que registra el resultado de la ejecución de la solicitud - éxito (True) o fracaso (False):

i. Si es imposible completar la solicitud o no hay respuesta del servidor, se escribirá False en request_success

ii. Si el código de respuesta es >=400, se escribirá False en request_success

iii. Si el código de respuesta es 200, pero no hay (incluyendo un {} BODY vacío) o un cuerpo inválido para este tipo de respuesta esperada, si se espera que la respuesta sea analizada (hay entradas en la pestaña Response), se escribirá False en request_success

iv. En los demás casos, se escribirá True en request_success: la solicitud se ha completado correctamente.

h. A partir del resultado de la ejecución de una Solicitud Externa, se crea la variable raw_response con el formato {"resultado de la ejecución de la solicitud", "cuerpo de la respuesta"}, ejemplo:{”success”:true,”temperature”:”-7.3”,”feels_like”:”-14.3 ”}.

i. La variable consta de dos partes:

  1. La primera parte contiene el resultado de la solicitud "success":true o "success":false, que es un duplicado de la variable raw_response (el resultado depende de las condiciones descritas en el apartado 5)

  2. La segunda parte contiene el cuerpo de la respuesta:

    1. Si tiene éxito, el cuerpo de la respuesta contiene el resultado del análisis especificado por la configuración de la pestaña Respuesta:

⁠b. Si no tiene éxito, el cuerpo de la respuesta contiene el texto del error recibido del sistema externo

ii. si no se ha podido enviar la solicitud al sistema externo, el valor del error se escribe en raw_response

iii. si se ha enviado correctamente una solicitud a un sistema externo, pero no se ha recibido ninguna respuesta, se escribe el valor no response en raw_response

i. Al recibir .xml de un sistema externo, la respuesta se escribe como una línea.

j. Al recibir un {} vacío BODY de un sistema externo, se escribe una cadena vacía en el cuerpo de la respuesta.

🛠️
🚧
🖊️
⬆️