Interacciones de la API

Si no usas una de las opciones de la integración, debes escribir el código que interactúa directamente con el usuario final. También debes interactuar directamente con la API de Dialogflow en cada turno de la conversación para enviar las expresiones del usuario final y recibir coincidencias de intent. En el siguiente diagrama, se muestra el flujo de procesamiento en el momento en el que se interactúa con la API.

Diagrama del flujo para la API
  1. El usuario final escribe o dice una expresión.
  2. Tu servicio envía esta expresión del usuario final a Dialogflow en un mensaje de solicitud de intent de detección.
  3. Dialogflow le envía un mensaje de respuesta de intent de detección a tu servicio. Este mensaje contiene información sobre el intent coincidente, la acción, los parámetros y la respuesta definida para ese intent.
  4. El servicio realiza acciones según sea necesario, como consultas a las bases de datos o llamadas externas a la API.
  5. Tu servicio le envía una respuesta al usuario final.
  6. El usuario final ve o escucha la respuesta.

Configuración y autenticación del proyecto

Antes de llamar a la API, debes configurar una autenticación y un proyecto de GCP. Puedes seguir los pasos detallados en la guía de inicio rápido para la configuración.

Compilación del agente

En la mayoría de los casos, debes usar la consola de Dialogflow ES (consulta la documentación, abre la consola) para compilar agentes. Puedes seguir los pasos detallados en la página de la guía de inicio rápido de la consola para compilar un agente. También puedes usar la API de Dialogflow para compilar agentes en situaciones avanzadas. En muchas páginas de conceptos, se hace foco en el uso de la consola para compilar agentes, pero también se proporcionan vínculos a los tipos de API relevantes.

REST, gRPC y bibliotecas cliente

Puedes acceder a la API de Dialogflow a través de REST, gRPC o una de las bibliotecas cliente proporcionadas. Para obtener más detalles sobre estas opciones, consulta la descripción general del uso de la API.

Sesiones

Una sesión representa una conversación entre un agente de Dialogflow y un usuario final. La sesión se crea al comienzo de una conversación y se usa para cada turno de la conversación. Una vez terminada la conversación, se deja de usar la sesión.

No se debe usar la misma sesión para conversaciones simultáneas con diferentes usuarios finales. Dialogflow mantiene los contextos activos en ese momento para cada sesión activa. Dialogflow almacena los datos de la sesión durante 20 minutos.

Cada sesión se determina como única por un ID de sesión que generó tu sistema. Para crear una sesión nueva, debes proporcionar un ID de sesión nuevo en una solicitud de detección de intent. Un ID de sesión es una string de 36 bytes de tamaño como máximo. Tu sistema se encarga de generar ID de sesión únicos. Pueden ser números aleatorios, identificadores de usuario final con hash o cualquier otro valor que te resulte conveniente generar.

Detecta intents

Cuando usas la API para interactuar, tu servicio interactúa directamente con el usuario final. Para cada turno de la conversación, el servicio envía expresiones del usuario final a Dialogflow mediante llamadas al método detectIntent o streamingDetectIntent del tipo Sessions. Dialogflow responde con información sobre el intent coincidente, la acción, los parámetros y la respuesta definida para ese intent. Tu servicio realiza acciones según sea necesario (por ejemplo, consultas a la base de datos o llamadas a la API externa) y envía un mensaje al usuario final. Este proceso continúa hasta que la conversación finaliza.

Puedes encontrar ejemplos de intents de detección que realizan llamadas en la página de la guía de inicio rápido de la API y en Guías prácticas.