use of com.google.cloud.dialogflow.cx.v3beta1.PagesSettings 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;
}
}
Aggregations