Ibm cloud watson chatbot对话框流未命中子节点

Ibm cloud watson chatbot对话框流未命中子节点,ibm-cloud,watson-conversation,Ibm Cloud,Watson Conversation,请看图片。我在IBMUI端得到的响应没有显示在Java控制台中。它为空或null,但正确地命中了意图 我正在使用JavaWatson对话api开发一个聊天机器人,但是在点击子节点时遇到了一个错误。这是背景问题还是其他问题?我想不出来。我附上了密码 请帮忙 输入\ gui是用户输入 MessageRequest newMessage = new MessageRequest.Builder().inputText(input_gui).context(context).build(); Mess

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

我正在使用
JavaWatson对话api
开发一个聊天机器人,但是在点击子节点时遇到了一个错误。这是背景问题还是其他问题?我想不出来。我附上了密码

请帮忙

输入\ 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开发人员那里了解到这一点,他们正在使用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");
MessageRequest.Builder messageRequestBuilder=newmessagerequest.Builder();
messageRequestBuilder.inputText(输入gui);
messageRequestBuilder.context(question.context)//此上下文来自上一步
ServiceCall response=conversationService.message(工作空间ID,messageRequestBuilder.build());
MessageResponse mAnswer=response.execute();
Object textObject=mAnswer.getOutput().get(“文本”);

这是工作代码,我每次调用服务凭证时都会出错,所以每次输入消息时都会初始化上下文,这就是为什么我无法在对话中获取单个对话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);

这实际上取决于您如何构建对话框流。我期待从消息中得知,您根本不符合任何可用条件,并且没有一个始终为true的回退节点。在watson对话服务中,如果我尝试,UI将显示响应,但在java代码中,输出为null。java代码中是否存在与上下文点状标记相关的任何问题肯定会有帮助Alex您能提供我必须在哪里使用点状标记的更多详细信息吗?@5agado我补充道在对话框流的最后一个节点,我发现只有根节点条件被命中,我的代码无法找到子节点条件对话框计数器未增加到2问题总是显示“dialog\u turn\u counter”:1.0,它不是递增的,因为您需要在每次发送时设置对话id。您能告诉我如何在代码中设置对话id,因为在每次watson回复时,都会在上下文中发送新的对话id吗