La dernière étape de ce tutoriel consiste à héberger votre agent Dialogflow. App Engine est utilisé pour l'hébergement, car il est simple à configurer et s'adapte bien. L'intégration de Dialogflow Messenger est utilisée pour une interface utilisateur d'agent.
Configuration du projet
Idéalement, votre agent Dialogflow et l'instance App Engine se trouvent tous deux dans le même projet. Vous devez également activer l'API Cloud Build.
Avant de créer l'instance, sélectionnez votre projet dans la console Google Cloud.
Activez l'API Cloud Build pour le projet.
Cofiguration de l'environnement
Vous devez installer et configurer certains éléments pour développer une application Go pour App Engine. Suivez les étapes que vous n'avez pas encore effectuées dans la section 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 de vos modèles HTML Go.index.html
: modèle HTML Go.
app.yaml
: paramètres de configuration du servicemain.go
: code de votre application
Les trois sections suivantes fournissent le contenu des trois fichiers.
Contenu du fichier index.html
Ce fichier de modèle HTML Go contient le code HTML de la page d'accueil. Remplissez 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 consulter la documentation sur l'environnement d'exécution Go 1.12+ pour obtenir la liste des versions Go compatibles. Remplissez 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. Remplissez 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é. Pour le déploiement, procédez comme suit avec l'outil gcloud:
Assurez-vous que gcloud est configuré avec le même projet que votre agent Dialogflow. Pour vérifier le projet:
gcloud config get-value project
Pour modifier le projet:
gcloud config set project YOUR_PROJECT
Dans le répertoire
go-app
où se trouve votre fichierapp.yaml
, déployez votre service Web dans App Engine à l'aide de la commande suivante:gcloud app deploy
La commande vous invite à sélectionner une région. Veillez à sélectionner la même région que votre agent Dialogflow. La commande affichera la valeur
target url
, qui est l'URL de votre service Web.Pour lancer votre navigateur et afficher votre service Web, vous pouvez ouvrir l'URL cible de l'étape précédente ou exécuter la commande suivante:
gcloud app browse
Configurer Dialogflow Messenger
Pour configurer un accès non authentifié à votre agent Dialogflow CX Messenger:
- Accédez à la console Dialogflow CX.
- Choisissez votre projet Google Cloud.
- Sélectionnez votre agent.
- Sélectionnez l'onglet Gérer.
- Cliquez sur Integrations (Intégrations) dans le menu de la barre latérale gauche.
- Cliquez sur Connect (Connecter) sur Dialogflow CX Messenger.
- Une boîte de dialogue de configuration s'ouvre.
- Si l'intégration a déjà été configurée pour cet agent, un code HTML intégré s'affiche. Que vous souhaitiez activer ou désactiver l'authentification, cliquez sur le bouton Désactiver en bas de la boîte de dialogue pour pouvoir reconfigurer les paramètres à l'étape suivante.
- Sélectionnez un environnement.
- Sélectionnez API non authentifiée.
- Sélectionnez un style.
- Vous pouvez éventuellement limiter l'accès au domaine.
- Cliquez sur Activer l'API non authentifiée.
- La boîte de dialogue affiche le code HTML pouvant être intégré à votre site Web. Copiez ce code.
- Cliquez sur OK.
Intégrer l'agent dans 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>
doivent se trouver 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 en bas à droite.
Vous disposez désormais d'un agent Dialogflow entièrement déployé. Essayez de discuter avec l'agent.
Nettoyage
En suivant 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:
- Supprimez votre instance de base de données.
Supprimez votre fonction:
gcloud functions delete tutorial-telecommunications-webhook
En savoir plus
Pour en savoir plus sur les étapes ci-dessus, consultez les ressources suivantes: