Alojamento do seu agente

O passo final deste tutorial é alojar o seu agente Dialogflow. O App Engine é usado para alojamento, porque é simples de configurar e dimensiona-se bem. A integração do Dialogflow Messenger é usada para uma interface do utilizador do agente.

Configuração do projeto

Idealmente, o seu agente do Dialogflow e a instância do App Engine estão ambos no mesmo projeto. Além disso, tem de ativar a API Cloud Build.

  1. Antes de criar a instância, selecione o seu projeto na Google Cloud consola.

    Aceder ao seletor de projetos

  2. Ative a API Cloud Build para o projeto.

    Ative a API Cloud Build

Configuração do ambiente

Tem de instalar e configurar alguns elementos para desenvolver uma aplicação Go para o App Engine. Siga todos os passos que ainda não concluiu em Configurar o ambiente de desenvolvimento.

Crie o código do serviço Web

O código de exemplo deste tutorial está escrito em Go, mas pode usar qualquer idioma suportado pelo App Engine. Crie a seguinte estrutura de ficheiros em qualquer parte da sua máquina local:

  • go-app/: diretório para o seu serviço Go.
    • templates/: diretório para os seus modelos HTML do Go.
      • index.html: Go HTML template.
    • app.yaml: as definições de configuração do seu serviço.
    • main.go: o código da sua candidatura.

As três secções seguintes fornecem conteúdo para os três ficheiros.

Conteúdos do ficheiro index.html

Este ficheiro de modelo HTML do Go contém o HTML da página inicial. Preencha este ficheiro com o seguinte conteúdo:

<!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>

Conteúdos do ficheiro app.yaml

Este é um ficheiro de configuração que especifica as definições do ambiente de tempo de execução do seu serviço. Pode consultar o documento Ambiente de tempo de execução do Go 1.12 ou superior para ver a lista de versões do Go suportadas. Preencha este ficheiro com o seguinte conteúdo:

runtime: go116  # or another supported version

Conteúdos do ficheiro main.go

Este ficheiro contém o código da sua aplicação. Preencha este ficheiro com o seguinte conteúdo:

// 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)
	}
}

Implemente o seu serviço Web

O código já está pronto para implementação. Estes passos usam a ferramenta gcloud para a implementação:

  1. Certifique-se de que o gcloud está configurado com o mesmo projeto que o seu agente do Dialogflow. Para verificar o projeto:

    gcloud config get-value project

    Para alterar o projeto:

    gcloud config set project YOUR_PROJECT
  2. No diretório go-app onde se encontra o ficheiro app.yaml, implemente o serviço Web no App Engine através do seguinte comando:

    gcloud app deploy

    O comando pede-lhe uma região. Certifique-se de que seleciona a mesma região que o seu agente Dialogflow. O comando vai gerar o valor target url, que é o URL do seu serviço Web.

  3. Para iniciar o navegador e ver o serviço Web, pode abrir o URL de destino do passo anterior ou executar o seguinte comando:

    gcloud app browse

Configure o Dialogflow Messenger

Para configurar e ativar o Dialogflow Messenger:

  1. Aceda à consola do Dialogflow ES.
  2. Clique em Integrações no menu da barra lateral esquerda.
  3. Clique em Dialogflow Messenger.
  4. É aberta uma caixa de diálogo de configuração.
  5. Escolha um ambiente.
  6. Clique em Ativar.
  7. Copie o código de incorporação para colar no seu Website.
  8. Clique em Fechar.

Incorpore o agente no seu serviço Web

Cole o código de incorporação que copiou acima no seu ficheiro index.html. Os elementos HTML <script> e <df-messenger> devem estar no elemento <body> da sua página.

Implemente novamente a app de serviço Web com o gcloud. Após a implementação, pode interagir com o seu agente através da página Web clicando no ícone de chat no canto inferior direito.

Captura de ecrã do agente do Dialogflow incorporado na página Web

Agora, tem um agente do Dialogflow totalmente implementado! Experimente ter uma conversa com o agente.

Limpeza

Ao seguir os passos deste tutorial, criou recursos faturáveis. Para evitar incorrer em custos adicionais na sua conta do Google Cloud:

  1. Elimine a instância de base de dados.
  2. Elimine a sua função:

    gcloud functions delete tutorial-telecommunications-webhook
  3. Desative a sua app.

  4. Elimine o seu agente

Mais informações

Para mais informações sobre os passos acima, consulte: