카카오 고객센터 본문
봇 생성하기
봇 생성하기 카테고리
봇 생성하기 본문
-
하나의 블록에서 다른 블록으로 전달 가능한 정보와 불가한 정보는 아래와 같습니다.
1. 전달 가능한 정보 : 현재 블록의 '파라미터 정보'
2. 전달 불가능한 정보 : 현재 블록을 실행시킨 '사용자의 발화 정보'
단, 사용자의 발화정보는 스킬서버에서 처리하면 기능 구현이 가능합니다. 스킬서버를 통해 받은 사용자의 발화정보를 바탕으로, 응답을 줄 때 해당 발화정보를 담아준다면 컨텍스트로 전달할 수 있습니다. -
HTTP 요청을 보낼 때 전달되는 데이터를 payload라고 합니다. payload는 JSON 형태를 가지고 있으며 JSON을 구성하는 키는 파라미터 이름이고, 값은 추출된 값이 됩니다. HTTP 요청에 대한 응답도 JSON 의 형태를 갖고 출력 영역으로 전달되고 사용될 수 있습니다. ‘Payload’는 파라미터들이 ‘key value’ 형태로 JSON을 기본 구성하고 여기에 ‘user request’의 일부 항목과 누적된 컨텍스트 정보가 포함됩니다.
-
appUserId 는 봇 설정에서 앱 키를 설정한 경우에만 제공되는 사용자 정보입니다. 앱 키가 정상적으로 등록된 경우, 카카오 로그인으로 받는 사용자 식별자와 동일한 값을 얻을 수 있습니다.
봇의 앱 키는 채널에 연결된 앱의 앱 키로 자동 설정되며, 채널과 앱을 연결하기 위해서는 비즈니스 인증 후 카카오싱크를 통해서 진행할 수 있습니다. 이후 프로필이용 플러그인 또는 카카오싱크 플러그인을 통해 사용자가 개인정보 제공에 동의하는 경우에 한해 해당 사용자의 appUserId를 확인할 수 있습니다.
appUserId는 스킬 페이로드를 통해 전달되며, 예제 코드는 아래 버튼을 통해 확인할 수 있습니다. -
봇 응답을 스킬데이터로 사용하는 경우, 바로연결 역시 JSON 포맷을 이용해 구현 가능합니다.
바로연결 스킬 설정에 관한 자세한 내용은 아래 버튼을 클릭하여 확인해주세요 -
스킬 응답으로 컨텍스트를 수정하는 경우, 변경하려는 Output 컨텍스트가 미리 블록에서 설정되어야 합니다.
스킬 응답의 context 필드는 값을 수정할 뿐, 새로운 Output 컨텍스트를 만들 수는 없습니다.
-
아래 IP목록을 화이트리스트에 추가해주세요.
- bot-proxy001 / 219.249.231.40
- bot-proxy002 / 219.249.231.41
- bot-proxy003 / 219.249.231.42
bot-proxy IP에 도메인 없습니다.
IP로 추가하여 주시기 바랍니다.
-
JSON 포맷으로 응답 구성시 button > extra 필드를 활용해보시기 바랍니다.
'extra' 필드는 버튼의 block이나 message action으로 블록을 호출하는 경우 봇 작업자의 스킬 서버에 추가적으로 제공하는 정보입니다.
스킬 요청 Payload 내 action > clientExtra 필드에서 입력해둔 임의의 값을 확인할 수 있게 됩니다.
필드에 입력 가능한 타입은 Map<String, Any> 입니다.사용자 직접 입력 발화와 버튼 클릭을 통해 발송되는 메시지(발화)가 동일한 경우,
'clientExtra' 필드 내 값이 포함되어있는지 여부를 확인하는 방법으로 구분합니다.
예)
- clientExtra 필드에 값 포함 : 버튼 클릭을 통한 발화
- clientExtra 필드에 값 포함되지 않음 : 사용자 직접 입력 발화
챗봇 관리자센터에서 응답 구성시에는 버튼이나 바로연결 설정에서 버튼 기능을
블록 연결이나 메시지 전송으로 설정하면 추가 정보를 입력할 수 있습니다.
추가 정보에 입력한 값은 'extra' 필드 기능과 동일하게 동작됩니다. -
1. JSON 포맷으로 응답 구성시 button > extra 필드를 활용해보시기 바랍니다. 'extra' 필드는 버튼의 block이나 message action으로 블록을 호출하는 경우 봇 작업자의 스킬 서버에 추가적으로 제공하는 정보입니다. 스킬 요청 Payload 내 action > clientExtra 필드에서 입력해둔 임의의 값을 확인할 수 있게 됩니다. 필드에 입력 가능한 타입은 Map<String, Any> 입니다. 사용자 직접 입력 발화와 버튼 클릭을 통해 발송되는 메시지(발화)가 동일한 경우, 'clientExtra' 필드 내 값이 포함되어있는지 여부를 확인하는 방법으로 구분합니다.
2. 챗봇 관리자센터에서 응답 구성시에는 버튼이나 바로연결 설정에서 버튼 기능을 블록 연결이나 메시지 전송으로 설정하면 추가 정보를 입력할 수 있습니다. 추가 정보에 입력한 값은 'extra' 필드 기능과 동일하게 동작됩니다.
-
기본적으로 동일한 발화를 서로 다른 블록에 중복하여 매칭할 수는 없습니다.
다만, 하나의 발화에 응답을 다르게 주고 싶으신 목적이라면 블록에 스킬을 연결하여 봇 응답을 동적으로 설계할 수 있습니다.
스킬을 사용하는 경우 Payload로 사용자의 발화 내용과 식별값과 같은 고유한 정보가 전달되어
이를 참고하여 응답을 다르게 하도록 설계하는 것이 가능합니다. -
스킬의 처리시간이 오래 걸려 카카오 챗봇 플랫폼의 SLA(skill timeout: 5sec)를 준수하지 못하는 경우를 위하여블록 단위로 콜백 옵션을 설정할 수 있는 기능을 제공하고 있습니다.콜백URL은 해당 스킬 처리 후 응답을 전달하기 위한 목적으로만 사용되어야 하며일정시간(callbackUrl valid time: 1min)동안 유효하며 1회에 한하여 사용할 수 있습니다.