1. 원리

- 사용자가 플러스 친구에 메시지를 보냄 => 서버에 Reqeust => Response를 메시지로 사용자에게 보여줌

- 간단한 원리를 제공

 

2. 패치

- 카카오톡에서 원래 제공하던 API를 전면 수정해서 OBT를 시행 중이라서 일단 신청해둠

- 패치 내용: https://github.com/plusfriend/auto_reply

 

3. 사용 방법

- 반환 결과는 모두 Json형태로 반환해줘야 한다.

 

1) Home Keyboard API

- 사용자가 플러스 친구로 들어왔을 때 하단에 출력해줄 메뉴 버튼

[요청]

  • Method : GET
  • URL : http(s)://:your_server_url/keyboard
  • Content-Type : application/json; charset=utf-8

[반환]

  • Response
keyboard Keyboard Required 키보드 영역에 표현될 버튼에 대한 정보. 생략시 text 타입이 선택된다.
  • 예제
    • { "type" : "buttons", "buttons" : ["선택 1", "선택 2", "선택 3"] }

 

 

2) 메시지 수신 및 자동응답 API

- 두가지 요청 (메시지, 위에서 만든 메뉴 버튼) 에 대한 답변을 제공

- 메시지, 동영상, 이미지를 모두 반환할 수 있다

[요청]

  • Method : POST
  • URL : http(s)://:your_server_url/message
  • Content-Type : application/json; charset=utf-8
  • Parameters
user_key String Required 메시지를 발송한 유저 식별 키
type String Required text, photo
content String Required 자동응답 명령어의 메시지 텍스트 혹은 미디어 파일 uri

 

  • 예제
    • curl -XPOST 'https://:your_server_url/message' -d '{
      "user_key": "encryptedUserKey", "type": "text", "content": "차량번호등록" }'
    • curl -XPOST 'https://your_server_url/message' -d '{
      "user_key": "encryptedUserKey", "type": "photo", "content": "http://photo_url/number.jpg" }'

[반환]

  • Response
message Message Required 자동응답 명령어에 대한 응답 메시지의 내용. 6.2에서 상세 기술
keyboard Keyboard Optional 키보드 영역에 표현될 명령어 버튼에 대한 정보. 생략시 text 타입(주관식 답변 키보드)이 선택된다. 6.1에서 상세 기술

 

  • 예제
    • { "message":{ "text" : "귀하의 차량이 성공적으로 등록되었습니다. 축하합니다!" } }
    • { "message": { "text": "귀하의 차량이 성공적으로 등록되었습니다. 축하합니다!", "photo": { "url": "https://photo.src", "width": 640, "height": 480 }, "message_button": { "label": "주유 쿠폰받기", "url": "https://coupon/url" } }, "keyboard": { "type": "buttons", "buttons": [ "처음으로", "다시 등록하기", "취소하기" ] } }

 

4. 결론

- 채팅방 나가기, 플러스 친구 추가/차단 에 대한  API도 있다.

- 버튼의 사이즈나 그런 것들을 커스터마이징 할 수 있다.

- 자세한건 패치 링크에서(https://github.com/plusfriend/auto_reply)

 

(API가 아닌 카카오에서 버튼을 만들고 답변을 만들 수는 있다.(채팅 X))

 

'일상 > 기본' 카테고리의 다른 글

30분 공부) RESTfull API  (0) 2019.04.05
Parsing-Test) 요기요 사이트  (2) 2019.04.03
데이터 클러스터링(30분 공부하기)  (0) 2019.03.28
c# winhttp 유니코드 에러  (0) 2019.03.27
php Excel 업로드  (0) 2019.03.27

+ Recent posts