Search in sources :

Example 1 with PagesClient

use of com.google.cloud.dialogflow.cx.v3.PagesClient in project java-dialogflow-cx by googleapis.

the class CreatePage method createPage.

// Create a page in the specified agent.
public static Page createPage(String displayName, String projectId, String locationId, String agentId, String flowId, List<String> entryTexts) throws IOException, ApiException {
    PagesSettings.Builder pagesSettingsBuilder = PagesSettings.newBuilder();
    if (locationId.equals("global")) {
        pagesSettingsBuilder.setEndpoint("dialogflow.googleapis.com:443");
    } else {
        pagesSettingsBuilder.setEndpoint(locationId + "-dialogflow.googleapis.com:443");
    }
    PagesSettings pagesSettings = pagesSettingsBuilder.build();
    // Instantiates a client
    try (PagesClient pagesClient = PagesClient.create(pagesSettings)) {
        // Set the flow name using the projectID (my-project-id), locationID (global), agentID (UUID)
        // and flowID (UUID).
        FlowName parent = FlowName.of(projectId, locationId, agentId, flowId);
        // Build the entry fulfillment based on entry texts.
        Fulfillment.Builder entryFulfillmentBuilder = Fulfillment.newBuilder();
        for (String entryText : entryTexts) {
            entryFulfillmentBuilder.addMessages(ResponseMessage.newBuilder().setText(Text.newBuilder().addText(entryText).build()).build());
        }
        Fulfillment entryFulfillment = entryFulfillmentBuilder.build();
        // Build the form for the new page.
        // Note: hard coding parameters for simplicity.
        FillBehavior fillBehavior = FillBehavior.newBuilder().setInitialPromptFulfillment(Fulfillment.newBuilder().addMessages(ResponseMessage.newBuilder().setText(Text.newBuilder().addText("What would you like?").build()).build()).build()).build();
        Form form = Form.newBuilder().addParameters(Parameter.newBuilder().setDisplayName("param").setRequired(true).setEntityType("projects/-/locations/-/agents/-/entityTypes/sys.any").setFillBehavior(fillBehavior).build()).build();
        // Build the page.
        Page page = Page.newBuilder().setDisplayName(displayName).setEntryFulfillment(entryFulfillment).setForm(form).build();
        // Performs the create page request.
        Page response = pagesClient.createPage(parent, page);
        // TODO : Uncomment if you want to print response
        // System.out.format("Page created: %s\n", response.toString());
        pagesClient.shutdown();
        return response;
    }
}
Also used : PagesClient(com.google.cloud.dialogflow.cx.v3beta1.PagesClient) Fulfillment(com.google.cloud.dialogflow.cx.v3beta1.Fulfillment) FillBehavior(com.google.cloud.dialogflow.cx.v3beta1.Form.Parameter.FillBehavior) Form(com.google.cloud.dialogflow.cx.v3beta1.Form) FlowName(com.google.cloud.dialogflow.cx.v3beta1.FlowName) Page(com.google.cloud.dialogflow.cx.v3beta1.Page) PagesSettings(com.google.cloud.dialogflow.cx.v3beta1.PagesSettings)

Example 2 with PagesClient

use of com.google.cloud.dialogflow.cx.v3.PagesClient in project java-dialogflow-cx by googleapis.

the class DeletePage method deletePage.

// DialogFlow API Delete Page Sample.
// Deletes a page from the provided parameters
public static void deletePage(String projectId, String agentId, String flowId, String pageId, String location) throws IOException {
    try (PagesClient client = PagesClient.create()) {
        Builder deleteRequestBuilder = DeletePageRequest.newBuilder();
        deleteRequestBuilder.setName("projects/" + projectId + "/locations/" + location + "/agents/" + agentId + "/flows/" + flowId + "/pages/" + pageId);
        // Make API request to delete page
        client.deletePage(deleteRequestBuilder.build());
        System.out.println("Successfully deleted page!");
    }
}
Also used : PagesClient(com.google.cloud.dialogflow.cx.v3.PagesClient) Builder(com.google.cloud.dialogflow.cx.v3.DeletePageRequest.Builder)

Example 3 with PagesClient

use of com.google.cloud.dialogflow.cx.v3.PagesClient in project java-dialogflow-cx by googleapis.

the class CreateSimplePage method createPage.

// DialogFlow API Create Page Sample.
// Creates a page from the provided parameters
public static Page createPage(String projectId, String agentId, String flowId, String location, String displayName) throws IOException {
    Page response;
    CreatePageRequest.Builder createRequestBuilder = CreatePageRequest.newBuilder();
    Page.Builder pageBuilder = Page.newBuilder();
    pageBuilder.setDisplayName(displayName);
    createRequestBuilder.setParent("projects/" + projectId + "/locations/" + location + "/agents/" + agentId + "/flows/" + flowId).setPage(pageBuilder);
    // Make API request to create page
    try (PagesClient client = PagesClient.create()) {
        response = client.createPage(createRequestBuilder.build());
        System.out.println("Successfully created page!");
        return response;
    }
}
Also used : PagesClient(com.google.cloud.dialogflow.cx.v3.PagesClient) CreatePageRequest(com.google.cloud.dialogflow.cx.v3.CreatePageRequest) Page(com.google.cloud.dialogflow.cx.v3.Page)

Example 4 with PagesClient

use of com.google.cloud.dialogflow.cx.v3.PagesClient in project java-dialogflow-cx by googleapis.

the class ListPages method listPages.

// DialogFlow API List Pages Sample.
// Lists all pages from the provided parameters
public static void listPages(String projectId, String agentId, String flowId, String location) throws IOException {
    PagesClient client = PagesClient.create();
    Builder listRequestBuilder = ListPagesRequest.newBuilder();
    listRequestBuilder.setParent("projects/" + projectId + "/locations/" + location + "/agents/" + agentId + "/flows/" + flowId);
    listRequestBuilder.setLanguageCode("en");
    // Make API request to list all pages in the project
    for (Page element : client.listPages(listRequestBuilder.build()).iterateAll()) {
        System.out.println(element);
    }
}
Also used : PagesClient(com.google.cloud.dialogflow.cx.v3.PagesClient) Builder(com.google.cloud.dialogflow.cx.v3.ListPagesRequest.Builder) Page(com.google.cloud.dialogflow.cx.v3.Page)

Aggregations

PagesClient (com.google.cloud.dialogflow.cx.v3.PagesClient)3 Page (com.google.cloud.dialogflow.cx.v3.Page)2 CreatePageRequest (com.google.cloud.dialogflow.cx.v3.CreatePageRequest)1 Builder (com.google.cloud.dialogflow.cx.v3.DeletePageRequest.Builder)1 Builder (com.google.cloud.dialogflow.cx.v3.ListPagesRequest.Builder)1 FlowName (com.google.cloud.dialogflow.cx.v3beta1.FlowName)1 Form (com.google.cloud.dialogflow.cx.v3beta1.Form)1 FillBehavior (com.google.cloud.dialogflow.cx.v3beta1.Form.Parameter.FillBehavior)1 Fulfillment (com.google.cloud.dialogflow.cx.v3beta1.Fulfillment)1 Page (com.google.cloud.dialogflow.cx.v3beta1.Page)1 PagesClient (com.google.cloud.dialogflow.cx.v3beta1.PagesClient)1 PagesSettings (com.google.cloud.dialogflow.cx.v3beta1.PagesSettings)1