Héberger votre agent

La dernière étape de ce tutoriel consiste à héberger l'agent Dialogflow. App Engine est utilisé pour l'hébergement, car il est facile à configurer et s'adapte bien. La Dialogflow Messenger est utilisée pour l'interface utilisateur d'un agent.

Configuration du projet

Dans l'idéal, votre agent Dialogflow et l'instance App Engine qui appartiennent tous deux au même projet. Vous devez également activer l'API Cloud Build.

  1. Avant de créer l'instance, sélectionnez votre projet dans la console Google Cloud.

    Accéder au sélecteur de projet

  2. activer l'API Cloud Build pour le projet ;

    Activer l'API Cloud Build

Cofiguration de l'environnement

Vous devez installer et configurer certains éléments afin de développer une application Go pour App Engine. Suivez les étapes que vous n'avez pas encore effectuées à l'adresse Configurer votre environnement de développement

Créer le code du service Web

L'exemple de code de ce tutoriel est écrit en Go, mais vous pouvez utiliser n'importe quel langage compatible avec App Engine. Créez la structure de fichiers suivante n'importe où sur votre ordinateur local:

  • go-app/ : répertoire de votre service Go.
    • templates/: répertoire contenant vos modèles HTML Go.
      • index.html: modèle Go HTML.
    • app.yaml : paramètres de configuration du service
    • main.go : code de votre application

Les trois sections suivantes fournissent du contenu pour les trois fichiers.

Contenu du fichier index.html

Ce fichier de modèle HTML Go contient le code HTML de la page d'accueil. Renseignez ce fichier avec le contenu suivant:

<!DOCTYPE html>
<html lang="en-US">
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width">
    <title>Tutorial agent</title>
  </head>
  <body>
    <p>Open the chat window in the bottom right corner.</p>
  </body>
</html>

Contenu du fichier app.yaml

Il s'agit d'un fichier de configuration qui spécifie les paramètres d'environnement d'exécution de votre service. Vous pouvez faire référence au Document sur l'environnement d'exécution Go 1.12+ pour afficher la liste des versions Go compatibles. Renseignez ce fichier avec le contenu suivant:

runtime: go116  # or another supported version

Contenu du fichier main.go

Ce fichier contient le code de votre application. Renseignez ce fichier avec le contenu suivant:

// Package main is the main package
package main

import (
	"log"
	"net/http"
	"os"
	"text/template"
)

var templates *template.Template

func init() {
	templates = template.Must(template.New("").ParseGlob("templates/*"))
}

// indexHandler handles the homepage.
func indexHandler(w http.ResponseWriter, r *http.Request) {
	if r.URL.Path != "/" {
		http.NotFound(w, r)
		return
	}
	if err := templates.ExecuteTemplate(w, "index.html", nil); err != nil {
		log.Fatal(err)
	}
}

func main() {
	// Register the handlers
	http.HandleFunc("/", indexHandler)

	port := os.Getenv("PORT")
	if port == "" {
		port = "8080"
		log.Printf("Defaulting to port %s", port)
	}

	log.Printf("Listening on port %s", port)
	if err := http.ListenAndServe(":"+port, nil); err != nil {
		log.Fatal(err)
	}
}

Déployer votre service Web

Votre code est maintenant prêt à être déployé. Ces étapes utilisent la méthode Outil gcloud pour le déploiement:

  1. Assurez-vous que gcloud est configuré avec le même projet en tant qu'agent Dialogflow. Pour vérifier le projet:

    gcloud config get-value project

    Pour modifier le projet:

    gcloud config set project YOUR_PROJECT
  2. Dans le répertoire go-app contenant votre fichier app.yaml, déployez votre vers App Engine à l'aide de la commande suivante:

    gcloud app deploy

    La commande vous invite à indiquer une région. Veillez à sélectionner la même région que votre agent Dialogflow. La commande renvoie la valeur target url, qui est l'URL de votre service Web.

  3. Pour lancer votre navigateur et afficher votre service Web, vous pouvez ouvrir l'URL cible de l'étape précédente, ou exécutez la commande suivante:

    gcloud app browse

Configurer Dialogflow Messenger

Pour configurer et activer Dialogflow Messenger :

  1. Accédez à la console Dialogflow ES.
  2. Cliquez sur Integrations (Intégrations) dans le menu de la barre latérale gauche.
  3. Cliquez sur Dialogflow Messenger.
  4. Une boîte de dialogue de configuration s'ouvre.
  5. Sélectionnez un environnement.
  6. Cliquez sur Activer.
  7. Copiez le code d'intégration à coller dans votre site Web.
  8. Cliquez sur Fermer.

Intégrer l'agent à votre service Web

Collez le code d'intégration que vous avez copié ci-dessus dans votre fichier index.html. Les éléments HTML <script> et <df-messenger> doit figurer dans l'élément <body> de votre page.

Déployez à nouveau votre application de service Web avec gcloud. Une fois le déploiement effectué, vous pouvez interagir avec votre agent via la page Web en cliquant sur l'icône de chat dans le coin inférieur droit.

Capture d&#39;écran de l&#39;agent Dialogflow intégré à une page Web

Vous disposez désormais d'un agent Dialogflow entièrement déployé. Essayez de discuter avec l'agent.

Nettoyage

Pendant que vous parcourez les étapes de ce tutoriel, vous avez créé des ressources facturables. Pour éviter que des frais supplémentaires ne soient facturés sur votre compte Google Cloud:

  1. Supprimez votre instance de base de données.
  2. Supprimez votre fonction:

    gcloud functions delete tutorial-telecommunications-webhook
  3. Désactivez votre application.

  4. Supprimer votre agent

En savoir plus

Pour en savoir plus sur les étapes ci-dessus, consultez les articles suivants: