Descripción general del SDK de Actions (Dialogflow)

Actions on Google te permite extender la funcionalidad de Asistente de Google con Acciones. Las acciones permiten que los usuarios realicen tareas mediante una interfaz de conversación que puede variar desde un comando rápido para encender algunas luces o una conversación más larga, como jugar un juego de preguntas y respuestas.

El SDK de Actions es un método para desarrollar la entrega de conversaciones sin usar Dialogflow. Cuando usas el SDK de Actions, debes usar un paquete de acción para asignar los intents a su entrega. También debes proporcionar patrones de búsqueda en el paquete de acción para definir frases de ejemplo que podrían decir los usuarios.

CLI de gactions

Cuando desarrollas con el SDK de Actions, usa la interfaz de línea de comandos (CLI) gactions para probar y actualizar el proyecto de Actions. La CLI de gactions también te ayuda a crear y administrar el paquete de acciones para tu acción de conversación.

Cómo crear acciones en tu paquete de acciones

Para crear acciones en tu paquete de acción, se asignan intents a la entrega. Una acción define un punto de entrada para iniciar conversaciones con un identificador único llamado intent. Los intents se asignan a entregas, que procesan el intent.

Por ejemplo, supongamos que deseas compilar un proyecto que contenga acciones para comprar algunos bienes, verificar el estado de los pedidos y mostrar algunas ofertas diarias. Para definir los intents que se activan, di:

  • "Hey Google, habla con ExampleAction".
  • "Hey Google, habla con ExampleAction para comprar zapatos".
  • "Hey Google, habla con ExampleAction para verificar mi pedido".
  • "Hey Google, habla con ActionAction para mostrarme las ofertas de hoy".

El archivo JSON del paquete de acción podría verse de la siguiente manera:

{
  "actions": [
    {
      "name": "MAIN",
      "intent": {
        "name": "actions.intent.MAIN"
      },
      "fulfillment": {
        "conversationName": "ExampleAction"
      }
    },
    {
      "name": "BUY",
      "intent": {
        "name": "com.example.ExampleAction.BUY",
        "parameters": [{
          "name": "color",
          "type": "org.schema.type.Color"
        }],
        "trigger": {
          "queryPatterns": [
            "find some $org.schema.type.Color:color sneakers",
            "buy some blue suede shoes",
            "get running shoes"
          ]
        }
      },
      "fulfillment": {
        "conversationName": "ExampleAction"
      }
    },
    {
      "name": "ORDER_STATUS",
      "intent": {
        "name": "com.example.ExampleAction.ORDER_STATUS",
        "trigger": {
          "queryPatterns": [
            "check on my order",
            "see order updates",
            "check where my order is"
          ]
        }
      },
      "fulfillment": {
        "conversationName": "ExampleAction"
      }
    },
    {
      "name": "DAILY_DEALS",
      "intent": {
        "name": "com.example.ExampleAction.DAILY_DEALS",
        "trigger": {
          "queryPatterns": [
            "hear about daily deals",
            "buying some daily deals",
            "get today's deals"
          ]
        }
      },
      "fulfillment": {
        "conversationName": "ExampleAction"
      }
    }
  ],
  "conversations": {
    "ExampleAction": {
      "name": "ExampleAction",
      "url": "https://www.example.com/ExampleAction"
    }
  }
}

Compila e implementa un webhook de entrega

Cuando se invoca una acción en tu proyecto, Actions on Google llama a tu entrega a fin de iniciar una conversación con los usuarios para completarla.

En cada solicitud a tu webhook de entrega, recibes la entrada del usuario como una string de texto. Por lo general, para procesar el intent, debes analizar la entrada de texto y mostrar una respuesta. Este intercambio se lleva a cabo hasta que la conversación de tu acción finaliza.

Sube tu paquete de acción

Una vez que crees el paquete de acción y, luego, implementes su entrega, puedes subir el paquete de acciones a la Consola de Actions. La Consola de Actions usa proyectos de acción para agrupar la acción conversacional con metadatos como su estado de revisión y nombre visible en el directorio de Asistente. El proyecto también te permite definir metadatos sobre tu acción, así como administrar y hacer un seguimiento de ella a través del proceso de aprobación.

Cuando tengas un proyecto, puedes subir el paquete de Acciones que defina todas tus acciones con la CLI de gactions.

Envía tu proyecto para su aprobación y ponlo a disposición de los usuarios

Ejemplos

Para explorar los proyectos completados, consulta las muestras del SDK de Actions de Node.js y Java.