ServiceNow의 Outbound REST Message에서 Watson Assistant API 시작

개요



IBM의 Watson Assistant에 의한 Chat BOT 작성을 위해 작성한 Watson Assistant에서 사용자 또는 부서를 추가하는 채팅봇 만들기을 ServiceNow의 Outbound REST Message를 사용해 기동한다.

전제 조건



IBM Watson Assistant API를 사용하려면, 사전에 IBM Bluemix에의 계정 등록과, Watson Assistant의 Light판(무료판)의 이용 등록과, Assistant의 Workspace의 작성이 필요하다.
Assistant Workspace를 작성하는 방법에 대해서는 Watson Assistant에서 사용자 또는 부서를 추가하는 채팅봇 만들기 가 참고가 된다.

버전



ServiceNow : KINGSTONE
Watson Assistant API : 2018-02-16

절차



ServiceNow에서 Rest Message 만들기



ServiceNow Studio의 Create Applicatio File에서 "Outbound Integrations"의 "REST Message"를 선택하고 Create를 클릭하십시오.

Name은 임의의 이름을 입력하고, End Point에는 Watson Assistant API에 액세스하는 아래의 URL을 입력한다.
https://gateway.watsonplatform.net/assistant/api/v1/workspaces/a2bab5cd-970a-4d89-8a94-c6c186332362/message?version=2018-02-16

또한, workspaces/보다 오른쪽의 문자열은 Watson Assistant에서 작성한 Workspace의 실제 workspace-id로 대체할 필요가 있다.

또, 마지막 version=2018-02-16의 부분은 Assistant API의 버전을 지정하고 있다. 이것에 의해, 2018-02-16의 날짜에 가장 가까운 버젼의 API가 기동하게 된다.

Authentication 탭의 Authentication type에서 Basic(BASIC 인증)을 선택하고, Basic auth profile은 돋보기 아이콘을 클릭하고 Assistant API를 기동하기 위한 사용자명과 패스워드를 설정한다. (IBM Bluemix 인증을 위한 대신 Assistant API에 액세스하기 위해 사용자 이름과 비밀번호 사용)


HTTP Request 탭에서는, HTTP Header에 「Content-Type = application/json」을 추가한다.



다음으로 HTTP Methods를 추가한다.



Variable Substitions에 message와 context의 파라미터를 추가해, 초기치를 설정해 둔다. (이것은 테스트 시작시 사용됩니다)


매개변수 이름
초기값


message
안녕하세요

context
{}




다음으로, HTTP Request 탭의 content에 POST 송신하는 JSON 메시지를 설정한다.


{
"input":{
  "text":"${message}"
},
"context":${context}

}

이상으로 설정은 완료이다.

동작 확인



HTTP Method 설정 화면의 중단 부근의 Related Links의 「Test」를 클릭합니다.



설정된 Endpoint, Basic 자격 증명, Content-type, content, Variable Substitions의 초기 설정에 따라 API가 기동되어 결과가 표시된다.



status=200이 되면 시작 성공이다.
Response에는 아래와 같이 Watson Assistant의 응답 내용이 아래와 같이 JSON 메시지로 돌아왔다.
{
    "intents": [
        {
            "intent": "greetings",
            "confidence": 1
        }
    ],
    "entities": [],
    "input": {
        "text": "こんにちは"
    },
    "output": {
        "text": [
            "こんにちは。こちらサポートデスクです。用件をどうぞ!"
        ],
        "nodes_visited": [
            "node_4_1524918503718"
        ],
        "log_messages": []
    },
    "context": {
        "conversation_id": "dea8cf19-5f81-43e3-a177-f773dd58fd44",
        "system": {
            "dialog_stack": [
                {
                    "dialog_node": "root"
                }
            ],
            "dialog_turn_counter": 1,
            "dialog_request_counter": 1,
            "_node_output_map": {
                "node_4_1524918503718": [
                    0
                ]
            },
            "branch_exited": true,
            "branch_exited_reason": "completed"
        }
    }
}

좋은 웹페이지 즐겨찾기