沃森聊天机器人对话流未命中子节点

watson chatbot dialog flow not hitting child node

请看图片。我在 IBM UI 端得到的响应没有显示在 Java 控制台中。它为空或 null,但正确命中了意图。

我正在使用 java watson conversation api 开发聊天机器人,但我在点击子节点时遇到错误。是语境问题还是其他?我无法弄清楚。我附上了代码。

请帮忙。

input_gui 是用户输入

MessageRequest newMessage = new 
MessageRequest.Builder().inputText(input_gui).context(context).build();
MessageResponse response = conversationService.message(workspaceId, newMessage).execute();

    newMessage = new MessageRequest.Builder()
            .inputText(input_gui)
            .context(response.getContext()) // output context from the first message
            .build();
    System.out.println("watson response"+response);

请看我附上的图片。这张图片是......

我不是 Java 方面的专家,但为了帮助您,请查看 IBM Developers 的 Java SDK examples for Watson Conversation. You can check out this project,他们正在使用 Conversation Service with Java。

看我几个月前做的一个测试的代码:

MessageRequest.Builder messageRequestBuilder = new MessageRequest.Builder();
        messageRequestBuilder.inputText(input_gui);
        messageRequestBuilder.context(question.context); //this context comes from a previous step 


ServiceCall<MessageResponse> response = conversationService.message(workspaceId, messageRequestBuilder.build());
        MessageResponse mAnswer =  response.execute();

        Object textObject = mAnswer.getOutput().get("text");

这是工作代码我得到了我的错误我每次都调用服务凭证所以上下文在每条输入消息上初始化这就是为什么我现在无法在对话中获得单个对话 ID 它正在工作

MessageRequest newMessage = new MessageRequest.Builder().inputText(input).context(context).build();

MessageResponse response = service.message(WORKSPACE_ID,newMessage).execute();

context = response.getContext();

System.out.println(response);