2017-03-07 5 views
2

현재 일부 Java 코드를 Watson 대화 대화 상자와 통합하려고합니다. 순간, 나는 왓슨 대화 상자로 간단한 텍스트 입력을 전달하는 다음 코드를 사용하고 있습니다 :Java를 사용하여 IBM Watson 대화 상자에 변수 전달

MessageRequest emptyReq = new MessageRequest.Builder().inputText(" ").build(); 

    MessageResponse response1 = service.message(workspaceId, emptyReq).execute(); 

    MessageRequest req1 = new MessageRequest.Builder().inputText("cancel my delivery").context(response1.getContext()).build(); 

    MessageResponse response2 = service.message(workspaceId, req1).execute(); 

이 코드는 의도 한대로 작동하고 응답이 올 바릅니다. 그러나 대화 상자에서 해석 할 메시지에서 변수를 전달할 수있는 방법은 확실하지 않습니다.

예를 들어, "estimatedDeliveryDate"이라는 변수에 날짜를 저장한다고 가정 해 봅시다.

내가 메시지를 보낼 것이라고는 estimatedDeliveryDate 너무 "지금을 취소되었습니다 estimatedDeliveryDate에 의한 주문"대화 상자가 응답 것을 함께 왓슨은 "내 배달 취소".

도움을 주시면 감사하겠습니다.

답변

3

툴링에서 노드로 이동하고 수정할 연필을 클릭하십시오. 그런 다음

"context": { 
    "estimatedDeliveryDate": "today" 
} 

그런 다음 출력 섹션에 당신이 쓸 수있는 추가

"output": { 
    "text": { 
     "values": [ 
     "Your reservation for <? $estimatedDeliveryDate ?> got canceled" 
     ] 
    } 

물론, 당신은 입력에서 캡처 한 동적 값으로 today을 대체 할 수 있습니다. 그 용도는 @sys-date입니다. https://www.ibm.com/watson/developercloud/doc/conversation/system-entities.html

보기