반응형
흐름은 클라이언트 내에서 원하는 데이터를 서버에 요청하면 서버 내에서 해당 데이터를 보내줍니다.
Ruby는 서로 다른 언어 형태이므로 JSON을 이용하여 형식을 변경하여 보내줍니다.
1. C9 세팅
저는 AWS 내의 C9을 이용하여 개발을 하였습니다. 처음 시작을 하기 전에 먼저 C9 - Ruby on Rails를 여신 후 아래 창에
rails g controller kakaokakao_initkakao_message
을 입력하여 controller를 생성해줍니다.
2. https://center-pf.kakao.com 계정 생성
플러스 친구 계정을 생성을 하게 되면 아래 그림과 같은 화면이 나타나게 됩니다.
좌측에 스마트 채팅을 클릭하면 2가지 형태가 있는데 저는 API 형태를 사용하였습니다.
1번에서 C9을 생성하였을 경우 주소를 갖게됩니다. 해당 주소를 앱 URL에 작성하여 API 테스트를 하시면 됩니다.
3. Controller 작성
이제 정상적으로 작동을 하는지 간단하게 작성해보겠습니다.
아래 표는 각 필드 마다의 타입 및 설명내용 입니다.
필드명 | 타입 | 필수 여부 | 설명 |
text | String | Optional | 사용자에게 발송될 텍스트 (최대 1000자) |
photo | Photo | Optional | 말풍선에 들어갈 이미지 정보 (1장 제한) |
message_button | MessageButton | Optional | 말풍선에 붙는 링크 버튼 정보 |
def kakao_init
@msg= {
type: "buttons",
buttons: ["소개"]
}
render json: @msg, status :ok
end
def kakao_message
@response = params[:content]
if @response == "소개"
@msg = {
message: {
text: "안녕하세여"
},
keyboard: {
type: "buttons",
buttons: ["소개"]
}
}
render json: @msg, status: :ok
end
end
이렇게만 끝내도 예외처리당해서 작동되지 않습니다.
ApplicationController을 변경해줘야 합니다.
해당 줄을 주석처리 해줘야 정상 작동합니다.
위의 response에서는 "해당 텍스트"를 통해 글을 불러왔지만 데이터베이스 내 id 값을 이용하여 자료도 읽어올 수 있습니다.
반응형