KAKAO 싱크 플러그인 응답 값에 대하여 질문드립니다

  • 앱 아이디(app ID): 1000660
  • 오류 내용 :

안녕하세요.
현재 카카오싱크 플러그인을 카카오톡 챗봇에 적용 중에 2가지 의문이 생겨 문의 드립니다.

  1. 카카오 싱크 플러그인에서 continueURL로 redirect 응답을 응답을 줄 시 제가 등록 한 적 없는 블록의 발화가 나오는 것 같던대 해당 응답을 제가 챗봇에 등록한 블록의 시나리오로 바꿀 수 있을까요?

  2. 현재 카카오 싱크 플러그인 가이드 문서를 참고하면 성공 외 응답(=시스템 실패 외 연동한 서비스 측의 오류 응답)으로는 ‘user_match_url’ 을 이용한 고객 추가 정보 요청 응답 뿐인 것 같습니다. 만약 서비스 로직( ex . 카카오 측이 아닌 연동한 챗봇 동작 중 스킬 서버 요류) 실행 중 오류 발생으로 인한 응답 분기는 어떻게 처리해야 하나요?

안녕하세요.

디벨로퍼스 관련 설정과 API, SDK들은 데브톡에서 안내드리고 있는데요.

챗봇관련 인증블록 및 시나리오에관해서는 로그를 확인할 권한이 없고, 정확한 내용을 알지못해서
챗봇 관리자 고객 센터에 문의 해보시면 좋을 것같아요.

봇 관리하기 | kakao 고객센터

다만, 카카오싱크 플러그인 관련 기본 기능을 제가 확인해봤을때는

설정된 발화로 인증블럭이 표시되고 카카오 동의창을 하프뷰로 띄운뒤
동의후, 싱크 플러그인 리다이렉트 URI로 이동하고
continueURL로 302 리다이렉트하니 별도 발화가 없는 것을 봐서는 운영하시는 챗봇에 따로 설정된게 아닐까 싶습니다.

그리고

두번째 질문은 카카오 싱크 플러그인 리다이렉트 URI에서 회원가입 처리를 하는 부분인데 스킬 서버를 호출한다는 말씀이실까요?
내부 처리중 오류라면 동일하게 complete에서 가입완료 여부를 false로 처리 해야할 것으로 보입니다.

안녕하세요

답변 감사합니다.

2번에 회원가입 처리를 하는 부분에서 스킬서버를 호출 하는 것은 아니고 스킬 서버등과 같은 저희 서비스의 서버로 응답이 가능한 지 궁금합니다.
추가로 2번째 질문에 답변해주신 대로 complete에서 가입완료 여부를 false로 세팅하고 응답하니 아래 사진처럼 챗봇 내부 응답으로 에러가 발생하는데 해당 에러 외에 핸들링 할 수 있는 방법은 없을까요?

안녕하세요.

2번에 회원가입 처리를 하는 부분에서 스킬서버를 호출 하는 것은 아니고 스킬 서버등과 같은 저희 서비스의 서버로 응답이 가능한 지 궁금합니다.

카카오싱크 플러그인 리다이렉트 URI 설정으로 운영하시는 서버 리다이렉트 되니 해당 URI 안에서 필요한 로직 수행하시면 될 것 같습니다.

추가로 2번째 질문에 답변해주신 대로 complete에서 가입완료 여부를 false로 세팅하고 응답하니 아래 사진처럼 챗봇 내부 응답으로 에러가 발생하는데 해당 에러 외에 핸들링 할 수 있는 방법은 없을까요?

저도 방금 실행하보니 그렇게 표시되는 군요. 이부분은 내부 문의 해보겠습니다.

인증블록에서
카카오 동의창을 하프뷰로 띄우고 카카오 동의창에 동의 후, 카카오 싱크 플러그인 리다이렉트 URI로 이동할때

(1) 필요한 가입 처리 및 내부 로직 처리 하시고
(2-1) 가입 성공했다면 continueURL 호출하셔서 하프뷰 닫고 챗봇에서 이어 처리 하시고

(2-2) 내부적으로 가입에 문제가 있다면, 싱크 플러그인 전용 가입 실패 안내페이지로 리다이렉트 하셔서 하프뷰에 그대로 사용자 안내 페이지 표시하시면 좋을 것 같아요.

(2-2-1) 안내 페이지에서 가입 완료되지 않았으니 unlink로 연결 끊어주시고 continueURL 호출하셔서 하프뷰 닫고 챗봇에서 이어 처리

앞서서 질문하신 부분이 "카카오 싱크 플러그인 리다이렉트 URI"에서 실패 응답을 챗봇으로 전달 하시려 한거죠?

네 맞습니다.
혹시나 2-2의 케이스(=실패 케이스)에 챗봇 내에서 처음 시작 Block을 호출하여 서비스 로직을 처음부터 진행해달라고 요청하거나 '고객센터’로 인입이 가능할 수 있도록 안내하는 등의 기능을 수행 하고 싶습니다.

말씀하신 내용은 챗봇으로 돌아가지 않고 하프뷰로 띄운 리다이렉트 uri에서 UI로 풀 수 있을 것 같은데 챗봇으로 돌려 보내서 처리하는 이유가 혹시 있을까요?