Gerenciar agentes com a API

Normalmente, os agentes são criados e excluídos usando o console. No entanto, em determinados cenários avançados, é mais fácil usar a API.

Criar um agente

Os exemplos a seguir mostram como chamar o método Create para o tipo Agent.

Selecione um protocolo e uma versão para a referência do agente:

Protocolo V3 V3beta1
REST Recurso do agente Recurso do agente
RPC (remote procedure call) Interface do agente Interface do agente
C++ AgentsClient (em inglês) Indisponível
C# AgentsClient (em inglês) Indisponível
Go AgentsClient (em inglês) Indisponível
Java AgentsClient (em inglês) AgentsClient (em inglês)
Node.js AgentsClient (em inglês) AgentsClient (em inglês)
PHP Indisponível Indisponível
Python AgentsClient (em inglês) AgentsClient (em inglês)
Ruby Indisponível Indisponível

REST

Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

Método HTTP e URL:

POST https://REGION_ID-dialogflow.googleapis.com/v3/projects/PROJECT_ID/locations/REGION_ID/agents

Corpo JSON da solicitação:

{
  "displayName": "My display name",
  "defaultLanguageCode": "en",
  "timeZone": "America/New_York"
}

Para enviar a solicitação, expanda uma destas opções:

Você receberá uma resposta JSON semelhante a esta:

{
  "name": "projects/PROJECT_ID/locations/REGION_ID/agents/AGENT_ID",
  "displayName": "My display name",
  "defaultLanguageCode": "en",
  "timeZone": "America/New_York",
  "startFlow": "projects/PROJECT_ID/locations/REGION_ID/agents/AGENT_ID/flows/00000000-0000-0000-0000-000000000000",
  "advancedSettings": {
    "loggingSettings": {}
  }
}

Java

Para autenticar no Dialogflow, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.


import com.google.cloud.dialogflow.cx.v3.Agent;
import com.google.cloud.dialogflow.cx.v3.Agent.Builder;
import com.google.cloud.dialogflow.cx.v3.AgentsClient;
import com.google.cloud.dialogflow.cx.v3.AgentsSettings;
import java.io.IOException;

public class CreateAgent {

  public static void main(String[] args) throws IOException {
    // TODO(developer): Replace these variables before running the sample.
    String projectId = "my-project-id";
    String displayName = "my-display-name";

    createAgent(projectId, displayName);
  }

  public static Agent createAgent(String parent, String displayName) throws IOException {

    String apiEndpoint = "global-dialogflow.googleapis.com:443";

    AgentsSettings agentsSettings = AgentsSettings.newBuilder().setEndpoint(apiEndpoint).build();
    // Note: close() needs to be called on the AgentsClient object to clean up resources
    // such as threads. In the example below, try-with-resources is used,
    // which automatically calls close().
    try (AgentsClient client = AgentsClient.create(agentsSettings)) {
      // Set the details of the Agent to create
      Builder build = Agent.newBuilder();

      build.setDefaultLanguageCode("en");
      build.setDisplayName(displayName);
      // Correct format for timezone is location/city
      // For example America/Los_Angeles, Europe/Madrid, Asia/Tokyo
      build.setTimeZone("America/Los_Angeles");

      Agent agent = build.build();
      String parentPath = String.format("projects/%s/locations/%s", parent, "global");

      // Calls the create agent api and returns the created Agent
      Agent response = client.createAgent(parentPath, agent);
      System.out.println(response);
      return response;
    }
  }
}

Node.js

Para autenticar no Dialogflow, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.


const parent = 'projects/' + projectId + '/locations/global';

const api_endpoint = 'global-dialogflow.googleapis.com';

const agent = {
  displayName: displayName,
  defaultLanguageCode: 'en',
  timeZone: 'America/Los_Angeles',
};

const {AgentsClient} = require('@google-cloud/dialogflow-cx');

const client = new AgentsClient({apiEndpoint: api_endpoint});

async function setAgentSample() {
  const request = {
    agent,
    parent,
  };

  const [response] = await client.createAgent(request);
  console.log(`response: ${JSON.stringify(response, null, 2)}`);

  // Delete created agent resource
  client.deleteAgent({name: response.name});
}
await setAgentSample();

Python

Para autenticar no Dialogflow, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.

from google.cloud.dialogflowcx_v3.services.agents.client import AgentsClient
from google.cloud.dialogflowcx_v3.types.agent import Agent


def create_agent(project_id, display_name):
    parent = "projects/" + project_id + "/locations/global"

    agents_client = AgentsClient()

    agent = Agent(
        display_name=display_name,
        default_language_code="en",
        time_zone="America/Los_Angeles",
    )

    response = agents_client.create_agent(request={"agent": agent, "parent": parent})

    return response

Excluir um agente

Os exemplos a seguir mostram como chamar o método Delete para o tipo Agent.

Selecione um protocolo e uma versão para a referência do agente:

Protocolo V3 V3beta1
REST Recurso do agente Recurso do agente
RPC (remote procedure call) Interface do agente Interface do agente
C++ AgentsClient (em inglês) Indisponível
C# AgentsClient (em inglês) Indisponível
Go AgentsClient (em inglês) Indisponível
Java AgentsClient (em inglês) AgentsClient (em inglês)
Node.js AgentsClient (em inglês) AgentsClient (em inglês)
PHP Indisponível Indisponível
Python AgentsClient (em inglês) AgentsClient (em inglês)
Ruby Indisponível Indisponível

REST

Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

  • PROJECT_ID: o ID do projeto do Google Cloud
  • REGION_ID: o ID da sua região
  • AGENT_ID: o ID do agente, encontrado na resposta de criação do agente

Método HTTP e URL:

DELETE https://REGION_ID-dialogflow.googleapis.com/v3/projects/PROJECT_ID/locations/REGION_ID/agents/AGENT_ID

Para enviar a solicitação, expanda uma destas opções:

Você receberá um código de status bem-sucedido (2xx) e uma resposta vazia.