Un proyecto de acciones empaqueta todas tus acciones en un solo contenedor. Tú publica este proyecto en Actions on Google para que Asistente de Google sepa cómo detectarlo e invocar tus experiencias conversacionales.
Usa los siguientes componentes de bajo nivel para compilar tu proyecto de acciones:
La configuración y los recursos definen los metadatos del proyecto y recursos, como íconos de proyectos. Google usa esta información para publicar tus acciones al directorio del Asistente, de modo que los usuarios puedan descubrirlas e invocarlas de ellos.
Los intents representan una tarea que se realizará, como algunas una entrada del usuario o un evento del sistema que necesita procesamiento. El tipo más común de que usarás son las intents de usuario. Estos intents te permiten declarar el entrenamiento frases que el CLN (comprensión del lenguaje natural) expande de forma natural para incluir muchas más frases similares. La CLN usa la agregación de estas frases para entrenar un modelo de lenguaje que el Asistente use entrada. Durante una conversación, si alguna entrada del usuario coincide con el idioma del intent el entorno de ejecución de Asistente envía el intent a tu acción para que pueda procesarlo y responder al usuario.
Los tipos te permiten extraer datos estructurados de las entradas del usuario. De anotando frases de entrenamiento con tipos, la CLN puede extraer datos relevantes, datos por ti, de modo que no tengas que analizar entradas abiertas.
Las escenas procesan intents y son los principales ejecutores de lógica para tus Acciones. Llenado de ranuras, evaluar la lógica condicional, mostrar mensajes al usuario e incluso llamar a servicios web externos para en la lógica empresarial. En combinación con los intents, las escenas te brindan una forma poderosa detectar entradas del usuario o eventos del sistema específicos y llevar a cabo lógica.
Las instrucciones definen las respuestas estáticas o dinámicas que usas para responder a los usuarios.
Los webhooks te permiten delegar trabajo adicional a los servicios web (entrega), como validar datos o generar instrucciones. Tus acciones comunicarse con tu entrega a través de un protocolo webhook basado en JSON.
El lienzo interactivo te permite crear contenido y experiencias inmersivas con aplicaciones web que utilizan HTML, CSS y JavaScript.
Crea un proyecto
Debes crear un proyecto en la Consola de Actions antes de poder desarrollar para Asistente de Google Para crear un proyecto, sigue estos pasos:
- Ve a la Consola de Actions.
- Haz clic en Proyecto nuevo.
- Ingresa un nombre para el proyecto y haz clic en Crear proyecto.
- En la pantalla What kind of Action do you want to build?, selecciona la categoría que mejor represente a tu proyecto y haz clic en Next.
- En la pantalla How do you want to build it, selecciona una forma de compilarlo. y haz clic en Comenzar compilación. Por ejemplo, puedes comenzar con una cadena proyecto o con una muestra.
Crea un proyecto del SDK de Actions local
Una vez que hayas creado un proyecto de acciones en la Consola de Actions, podrás hacer lo siguiente: y inicializa un proyecto en tu entorno de desarrollo local.
Para inicializar un proyecto del SDK de Actions desde un proyecto de acciones existente, sigue estos pasos: estos pasos:
- Crea un directorio vacío para el proyecto de acciones en tu sistema de archivos local.
- En este directorio vacío, crea un directorio
sdk
. - Cambia el directorio de trabajo al directorio
sdk
de la terminal.
Comienza con un proyecto vacío
Si quieres comenzar desde el proyecto vacío que acabas de crear en la consola,
ejecuta gactions pull --project-id <my-project-id>
.
$ mkdir myAction $ cd myAction $ mkdir sdk $ cd sdk $ gactions pull --project-id my-project-id Pulling your project files from Draft for a project id: "my-project-id" ✔ Done. You should see the files written in path/to/myAction/sdk
Comienza con un proyecto de muestra
Si quieres comenzar desde un proyecto de muestra, ejecuta gactions init <sample name>
.
$ mkdir actions-test $ cd actions-test $ mkdir sdk $ cd sdk $ gactions init question Writing sample files for question. ✔ Done. Please checkout the following documentation - https://developers.google.com/assistant/conversational/build on the next steps on how to get started.
Definir la información del proyecto
La configuración y los recursos de tu proyecto definen información sobre tu proyecto, como compatibilidad con funciones y plataformas, configuraciones regionales admitidas, nombre visible, descripción, logotipos y mucho más. En la siguiente tabla, se describen la configuración y los recursos principales que usted proporciona. Actions on Google usa esto específica para implementar y publicar tu proyecto en el Asistente de la aplicación.
Nombre | Descripción |
---|---|
Información del directorio | Proporciona información para que Actions on Google pueda publicar tu proyecto en el directorio del Asistente. Incluye metadatos y descripciones sobre tu proyecto y tus recursos de imagen para logotipos e imágenes de banners. |
Segmentación geográfica | Establece las configuraciones regionales en las que están disponibles tus Acciones. |
Capacidades de la superficie | Configura las superficies en las que están disponibles tus acciones. |
Datos de la empresa | Especifica la información de contacto de tu empresa. |
Verificación de marca | Conecta un sitio web o una app para Android de tu propiedad para obtener beneficios adicionales como nombres de invocación reservados y vínculos a sitios web en tus Acciones. |
Lanzamiento | Configura diferentes versiones de prueba y producción para tu acción. para las pruebas y la producción. |
Vínculos de Asistente | Permite que los usuarios invoquen tus acciones desde tus propiedades web. |
Para definir la información del proyecto:
Define la configuración global para tu proyecto de Acciones en
sdk/settings/settings.yaml
. Consulta la referencia de Configuración. documentación para los valores admitidos.En el siguiente fragmento, se muestra un archivo
sdk/settings/settings.yaml
de ejemplo:accountLinking: enableAccountCreation: true linkingType: GOOGLE_SIGN_IN category: GAMES_AND_TRIVIA projectId: my-project-id ...
Define parámetros de configuración que pueden variar en función de la configuración regional del usuario (por ejemplo, frases de invocación en diferentes idiomas) en un archivo
sdk/settings/<locale>/settings.yaml
. y reemplaza locale por la configuración regional objetivo.Consulta la LocalizedSettings documentación de referencia de los valores admitidos.
El siguiente fragmento es un ejemplo de configuración en inglés definido en un Archivo
sdk/settings/en/settings.yaml
:localizedSettings: developerEmail: developer@developers.com developerName: Developer Name displayName: My Display Name fullDescription: full description of the action largeBannerImage: https://path/to/large/banner privacyPolicyUrl: http://path/to/privacy/policy sampleInvocations: - Talk to My Display Name shortDescription: short description of the action smallLogoImage: https://path/to/small/logo voice: female_1 ...
Agrega recursos
Puedes almacenar recursos como archivos de imagen, archivos de audio y cadenas en tu
acciones en el proyecto y hacer referencia a ellos desde los archivos de configuración (por ejemplo, instrucciones
definiciones o condiciones) con la variable $resources
definida por el sistema.
Los recursos del proyecto se almacenan en resources/
, y cada tipo de recurso se
se les asignó una carpeta en el directorio.
Puedes localizar los recursos mediante la creación de carpetas específicas de la configuración regional en el recurso.
de tipo carpeta. Por ejemplo, puedes almacenar versiones en español de tus cadenas en
resources/strings/es/<filename>.yaml
Imágenes
Los archivos de imagen se almacenan en resources/images/
y puedes hacer referencia a ellos
con $resources.images.<name of the image file without file extension>
.
Las extensiones de archivo permitidas son las siguientes:
gif
png
jpg
jpeg
Por ejemplo, si la versión en inglés del logotipo pequeño se guarda en
resources/images/en/square.png
y la versión en inglés del banner grande es
guardados en resources/images/en/landscape.jpg
respectivamente,
sdk/settings/en/settings.yaml
del ejemplo anterior se convertiría en lo siguiente:
localizedSettings: developerEmail: developer@developers.com developerName: Developer Name displayName: My Display Name fullDescription: full description of the action largeBannerImage: $resources.images.landscape privacyPolicyUrl: http://path/to/privacy/policy sampleInvocations: - Talk to My Display Name shortDescription: short description of the action smallLogoImage: $resources.images.square voice: female_1 ...
Archivos de audio
Los archivos de audio se almacenan en resources/audio/
y puedes hacer referencia a ellos
con $resources.audio.<name of the audio file without file extension>
.
Las extensiones de archivo permitidas son las siguientes:
mp3
mpeg
Por ejemplo, puedes hacer referencia a grabaciones de audio a partir de instrucciones:
candidates: - first_simple: variants: - speech: your speech response content: media: mediaType: audio mediaObjects: - name: media name description: media description url: $resources.audio.intro
Strings
Las cadenas se almacenan en resources/strings/
como archivos .yaml
. Cada archivo contiene
un mapa de claves de cadenas y valores asociados, que pueden ser cadenas individuales o listas
de cadenas. Puedes hacer referencia a los valores usando
$resources.strings.<name of the image file without file extension>.<key>
para valores de una sola cadena o para obtener un valor aleatorio de una lista, y
$resources.strings.<name of the image file without file extension>.<key>.<numerical index>
para un valor de cadena específico dentro de una lista.
Por ejemplo, usar cadenas de recursos para localizar cadenas,
sdk/settings/en/settings.yaml
del ejemplo anterior podría ser la siguiente:
localizedSettings: developerEmail: developer@developers.com developerName: $resources.strings.appinfo.developerName displayName: $resources.strings.appinfo.displayName fullDescription: $resources.strings.appinfo.fullDescription largeBannerImage: $resources.images.landscape privacyPolicyUrl: $resources.strings.appinfo.privacyPolicyUrl sampleInvocations: - $resources.strings.invocations.sample shortDescription: $resources.strings.appinfo.shortDescription smallLogoImage: $resources.images.square voice: female_1 ...
Cómo probar proyectos en el simulador
La Consola de Actions proporciona un simulador para obtener una vista previa de tus acciones. El el simulador te permite ver la información de depuración, configurar las capacidades del dispositivo, simular la configuración regional y más.
Sigue estos pasos para probar un proyecto:
- Ejecuta
gactions deploy preview
para implementar tu acción para obtener una "vista previa" y habilita las pruebas en el simulador. - Abre la URL en el resultado del comando para acceder al simulador.
$ gactions deploy preview Deploying your project files to your Actions console preview for a project id: "my-project". This may take a few minutes. Sending configuration files Waiting for server to respond. ✔ Done. You can now navigate to the Actions Console simulator to test your changes: http://console.actions.google.com/project/my-project/simulator?disableAutoPreview