Search in sources :

Example 6 with FlowName

use of com.google.cloud.dialogflow.cx.v3beta1.FlowName in project java-dialogflow-cx by googleapis.

the class ITSystemTest method listVersionsTest.

@Test
public void listVersionsTest() {
    ListVersionsRequest versionsRequest = ListVersionsRequest.newBuilder().setParent(flowName).build();
    VersionsClient.ListVersionsPagedResponse pagedListResponse = versionsClient.listVersions(versionsRequest);
    List<Version> versions = Lists.newArrayList(pagedListResponse.iterateAll());
    boolean isVersionNameExists = false;
    for (Version version : versions) {
        if (version.getName().equals(versionName)) {
            assertVersionDetails(version);
            isVersionNameExists = true;
        }
    }
    assertTrue(isVersionNameExists);
}
Also used : Version(com.google.cloud.dialogflow.cx.v3beta1.Version) VersionsClient(com.google.cloud.dialogflow.cx.v3beta1.VersionsClient) ListVersionsRequest(com.google.cloud.dialogflow.cx.v3beta1.ListVersionsRequest) Test(org.junit.Test)

Example 7 with FlowName

use of com.google.cloud.dialogflow.cx.v3beta1.FlowName in project java-dialogflow-cx by googleapis.

the class PagesClientTest method listPagesTest.

@Test
public void listPagesTest() throws Exception {
    Page responsesElement = Page.newBuilder().build();
    ListPagesResponse expectedResponse = ListPagesResponse.newBuilder().setNextPageToken("").addAllPages(Arrays.asList(responsesElement)).build();
    mockPages.addResponse(expectedResponse);
    FlowName parent = FlowName.of("[PROJECT]", "[LOCATION]", "[AGENT]", "[FLOW]");
    ListPagesPagedResponse pagedListResponse = client.listPages(parent);
    List<Page> resources = Lists.newArrayList(pagedListResponse.iterateAll());
    Assert.assertEquals(1, resources.size());
    Assert.assertEquals(expectedResponse.getPagesList().get(0), resources.get(0));
    List<AbstractMessage> actualRequests = mockPages.getRequests();
    Assert.assertEquals(1, actualRequests.size());
    ListPagesRequest actualRequest = ((ListPagesRequest) actualRequests.get(0));
    Assert.assertEquals(parent.toString(), actualRequest.getParent());
    Assert.assertTrue(channelProvider.isHeaderSent(ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
}
Also used : AbstractMessage(com.google.protobuf.AbstractMessage) ListPagesPagedResponse(com.google.cloud.dialogflow.cx.v3beta1.PagesClient.ListPagesPagedResponse) Test(org.junit.Test)

Example 8 with FlowName

use of com.google.cloud.dialogflow.cx.v3beta1.FlowName 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 9 with FlowName

use of com.google.cloud.dialogflow.cx.v3beta1.FlowName in project java-dialogflow-cx by googleapis.

the class ITSystemTest method listPagesTest.

@Test
public void listPagesTest() {
    ListPagesRequest request = ListPagesRequest.newBuilder().setParent(flowName).build();
    PagesClient.ListPagesPagedResponse pagedListResponse = pagesClient.listPages(request);
    List<Page> pages = Lists.newArrayList(pagedListResponse.iterateAll());
    boolean isPageExists = false;
    for (Page page : pages) {
        if (page.getName().equals(pageName)) {
            assertPageDetails(page);
            isPageExists = true;
        }
    }
    assertTrue(isPageExists);
}
Also used : PagesClient(com.google.cloud.dialogflow.cx.v3beta1.PagesClient) ListPagesRequest(com.google.cloud.dialogflow.cx.v3beta1.ListPagesRequest) Page(com.google.cloud.dialogflow.cx.v3beta1.Page) Test(org.junit.Test)

Example 10 with FlowName

use of com.google.cloud.dialogflow.cx.v3beta1.FlowName in project java-dialogflow-cx by googleapis.

the class ITSystemTest method setUp.

@BeforeClass
public static void setUp() throws IOException, ExecutionException, InterruptedException {
    /* create agents */
    agentsClient = AgentsClient.create();
    Agent agent = Agent.newBuilder().setDisplayName(DISPLAY_NAME).setDescription(DESCRIPTION).setTimeZone(AGENT_TIME_ZONE).setDefaultLanguageCode(DEFAULT_LANGUAGE_CODE).setStartFlow(ID).setEnableStackdriverLogging(true).build();
    Agent response = agentsClient.createAgent(PARENT, agent);
    agentName = response.getName();
    /* create entity types */
    entityTypesClient = EntityTypesClient.create();
    EntityType entityType = EntityType.newBuilder().setAutoExpansionMode(EntityType.AutoExpansionMode.AUTO_EXPANSION_MODE_DEFAULT).setAutoExpansionModeValue(1).setDisplayName(DISPLAY_NAME).setEnableFuzzyExtraction(true).setKind(EntityType.Kind.KIND_LIST).build();
    CreateEntityTypeRequest request = CreateEntityTypeRequest.newBuilder().setParent(agentName).setEntityType(entityType).build();
    EntityType entityTypeResponse = entityTypesClient.createEntityType(request);
    entityTypesName = entityTypeResponse.getName();
    /* create flows */
    flowsClient = FlowsClient.create();
    Flow flow = Flow.newBuilder().setNluSettings(NLUSETTINGS).setDisplayName(DISPLAY_NAME).setDescription(DESCRIPTION).build();
    CreateFlowRequest createFlowRequest = CreateFlowRequest.newBuilder().setParent(agentName).setFlow(flow).build();
    Flow flowResponse = flowsClient.createFlow(createFlowRequest);
    flowName = flowResponse.getName();
    Flow trainFlow = Flow.newBuilder().setNluSettings(NLUSETTINGS).setDisplayName(DISPLAY_NAME2).setDescription(DESCRIPTION).build();
    CreateFlowRequest createTrainFlowRequest = CreateFlowRequest.newBuilder().setParent(agentName).setFlow(trainFlow).build();
    Flow trainFlowResponse = flowsClient.createFlow(createTrainFlowRequest);
    trainFlowName = trainFlowResponse.getName();
    /* create intents */
    intentsClient = IntentsClient.create();
    Intent intent = Intent.newBuilder().setDisplayName(DISPLAY_NAME).setPriority(1).build();
    CreateIntentRequest createIntentRequest = CreateIntentRequest.newBuilder().setIntent(intent).setParent(agentName).build();
    Intent intentResponse = intentsClient.createIntent(createIntentRequest);
    intentsName = intentResponse.getName();
    /* create pages */
    pagesClient = PagesClient.create();
    Page page = Page.newBuilder().setDisplayName(DISPLAY_NAME).build();
    CreatePageRequest createPageRequest = CreatePageRequest.newBuilder().setPage(page).setParent(flowName).build();
    Page pageResponse = pagesClient.createPage(createPageRequest);
    pageName = pageResponse.getName();
    /* create session */
    sessionsClient = SessionsClient.create();
    /* create transition route groups */
    transitionRouteGroupsClient = TransitionRouteGroupsClient.create();
    TransitionRouteGroup transitionRouteGroup = TransitionRouteGroup.newBuilder().setDisplayName(DISPLAY_NAME).build();
    CreateTransitionRouteGroupRequest transitionRouteGroupRequest = CreateTransitionRouteGroupRequest.newBuilder().setParent(flowName).setTransitionRouteGroup(transitionRouteGroup).build();
    TransitionRouteGroup transitionRouteGroupResponse = transitionRouteGroupsClient.createTransitionRouteGroup(transitionRouteGroupRequest);
    transitionRouteGroupName = transitionRouteGroupResponse.getName();
    /* create version */
    versionsClient = VersionsClient.create();
    Version version = Version.newBuilder().setStateValue(2).setDisplayName(DISPLAY_NAME).build();
    CreateVersionRequest createVersionRequest = CreateVersionRequest.newBuilder().setParent(flowName).setVersion(version).build();
    Version versionResponse = versionsClient.createVersionAsync(createVersionRequest).get();
    versionName = versionResponse.getName();
}
Also used : Agent(com.google.cloud.dialogflow.cx.v3beta1.Agent) CreateEntityTypeRequest(com.google.cloud.dialogflow.cx.v3beta1.CreateEntityTypeRequest) CreatePageRequest(com.google.cloud.dialogflow.cx.v3beta1.CreatePageRequest) Intent(com.google.cloud.dialogflow.cx.v3beta1.Intent) Page(com.google.cloud.dialogflow.cx.v3beta1.Page) CreateTransitionRouteGroupRequest(com.google.cloud.dialogflow.cx.v3beta1.CreateTransitionRouteGroupRequest) Flow(com.google.cloud.dialogflow.cx.v3beta1.Flow) EntityType(com.google.cloud.dialogflow.cx.v3beta1.EntityType) Version(com.google.cloud.dialogflow.cx.v3beta1.Version) CreateFlowRequest(com.google.cloud.dialogflow.cx.v3beta1.CreateFlowRequest) TransitionRouteGroup(com.google.cloud.dialogflow.cx.v3beta1.TransitionRouteGroup) CreateVersionRequest(com.google.cloud.dialogflow.cx.v3beta1.CreateVersionRequest) CreateIntentRequest(com.google.cloud.dialogflow.cx.v3beta1.CreateIntentRequest) BeforeClass(org.junit.BeforeClass)

Aggregations

Test (org.junit.Test)8 Flow (com.google.cloud.dialogflow.cx.v3beta1.Flow)3 Page (com.google.cloud.dialogflow.cx.v3beta1.Page)3 AbstractMessage (com.google.protobuf.AbstractMessage)3 PagesClient (com.google.cloud.dialogflow.cx.v3beta1.PagesClient)2 TransitionRouteGroup (com.google.cloud.dialogflow.cx.v3beta1.TransitionRouteGroup)2 Version (com.google.cloud.dialogflow.cx.v3beta1.Version)2 Agent (com.google.cloud.dialogflow.cx.v3beta1.Agent)1 CreateEntityTypeRequest (com.google.cloud.dialogflow.cx.v3beta1.CreateEntityTypeRequest)1 CreateFlowRequest (com.google.cloud.dialogflow.cx.v3beta1.CreateFlowRequest)1 CreateIntentRequest (com.google.cloud.dialogflow.cx.v3beta1.CreateIntentRequest)1 CreatePageRequest (com.google.cloud.dialogflow.cx.v3beta1.CreatePageRequest)1 CreateTransitionRouteGroupRequest (com.google.cloud.dialogflow.cx.v3beta1.CreateTransitionRouteGroupRequest)1 CreateVersionRequest (com.google.cloud.dialogflow.cx.v3beta1.CreateVersionRequest)1 DeleteAgentRequest (com.google.cloud.dialogflow.cx.v3beta1.DeleteAgentRequest)1 DeleteEntityTypeRequest (com.google.cloud.dialogflow.cx.v3beta1.DeleteEntityTypeRequest)1 DeleteFlowRequest (com.google.cloud.dialogflow.cx.v3beta1.DeleteFlowRequest)1 DeleteIntentRequest (com.google.cloud.dialogflow.cx.v3beta1.DeleteIntentRequest)1 DeletePageRequest (com.google.cloud.dialogflow.cx.v3beta1.DeletePageRequest)1 DeleteTransitionRouteGroupRequest (com.google.cloud.dialogflow.cx.v3beta1.DeleteTransitionRouteGroupRequest)1