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" }'
- curl -XPOST 'https://:your_server_url/message' -d '{
[반환]
- 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 |