- 9
- humit
- 조회 수 5172
이번에 살펴볼 내용은 카카오톡 자동 응답 서비스를 구현하기 위한 서버 구축을 하려고 합니다. 일단 아직 카카오톡 플러스 친구에 가입하지 않은 경우에는 https://studyforus.com/study/6912를 참조해서 가입을 하시기 바랍니다.
이번 내용에서의 준비물은 SFTP 패키지가 설치된 Sublime Text 3, 카카오톡 봇 제작기(https://github.com/humit0/kakao_auto_reply/archive/master.zip로 받으시면 됩니다.), 카카오톡 플러스 친구 계정이 필요합니다.
물론 Sublime Text 3가 없는 경우에는 아무 텍스트 에디터나 사용해도 상관이 없으며, FTP 프로그램으로 업로드를 하시면 되기 때문에 크게 신경쓰지 않으셔도 됩니다. 다만 앞으로의 강좌를 위해서 FTP 기능을 포함하고 있는 에디터(Sublime Text, Atom 등)를 사용하는 것을 추천합니다.
먼저 카카오톡 봇 제작기를 다운로드 받고, 압축을 풉니다. 다운로드 주소는 위쪽 준비물에 대한 설명에서의 링크에서 받으시면 됩니다.
압축을 풀어서 나온 폴더를 Sublime Text 3로 열어서 SFTP를 설정해줍니다. 설정 방법의 경우에는 https://studyforus.com/study/7048를 참조해서 설정을 하시면 됩니다.
config.php 파일을 열어보시면, define("BASE_URL", "");로 되어 있는 부분이 있습니다. 이 부분을 자신이 폴더를 업로드를 하여 만들어진 주소를 입력하시면 됩니다. 만약 public_html에 바로 올리신 경우에는 http://server.com/과 같이 사용하시면 되고, public_html의 하위 폴더로 auto_reply를 생성해서 거기에 올리시는 경우에는 http://server.com/auto_reply/ 로 입력하시면 됩니다. 참고로 마지막 부분이 꼭 '/'로 끝나야 합니다!!
다음으로 이 부분의 경우에는 서브 디렉토리로 해서 카카오톡 봇을 운영하는 사람에 대해서만 해당하는 부분입니다. (즉 public_html 폴더에 바로 올리는 것이 아닌 하위에 폴더를 만들어서 사용하는 사람들은 이 부분을 세팅하셔야 합니다.) .htaccess 파일을 열어보시면, RewriteRule ^(.*)$ /index.php/?id=$1 [L] 로 되어 있는 부분이 있습니다. 이 부분을 자신의 상황에 맞게 변경을 해주셔야 합니다. 예를 들어 public_html의 하위 폴더인 auto_reply로 사용할 경우에는 RewriteRule ^(.*)$ /auto_reply/index.php/?id=$1 [L] 와 같이 변경을 해주셔야 합니다.
이렇게 하면 파일 수정은 끝났고, 이제 이 파일들을 서버에 전부 올리시면 됩니다.
업로드가 끝났으면 이제 해당하는 주소로 접속합니다. 즉, 앞의 과정에서 BASE_URL로 설정을 했던 주소로 접속을 하시면 됩니다. 그러면 아래 사진처럼 설치가 필요하다는 화면을 보실 수 있습니다. Install을 누릅니다.
다음 화면은 관리자의 ID와 비밀번호를 설정하는 부분입니다. 참고로 비밀번호는 평문 php 파일로 저장되기 때문에 여기에서만 사용할 비밀번호를 입력하시기 바랍니다.
다음 화면은 초기 Keyboard를 설정하는 부분입니다. 이 부분은 처음에 사용자가 들어왔을 떄 보여줄 버튼들을 사용하는 부분으로 여러 개를 사용하고 싶으시다면 Enter로 구분해서 입력하시면 됩니다. 여기서는 '안녕'과 '자기소개'를 초기 Keyboard값으로 사용하도록 하겠습니다.
그러면 이제 관리자 ID와 초기 Keyboard로 무엇을 생성했는지를 보여주는 창을 볼 수 있습니다. 여기까지 해서 서버에 기본적인 세팅을 끝났습니다.
이제 마지막으로 카카오톡 서버와 우리의 서버를 연동시키는 작업을 하면 됩니다. 이 부분의 경우에는 옐로 아이디 심사가 통과된 사람들만 진행을 할 수 있습니다.
일단 옐로 아이디 홈페이지(https://yellowid.kakao.com/login)에 접속하셔서 로그인을 합니다. 심사가 통과되었다면 아래와 같은 화면을 보실 수 있습니다.
좌측에 있는 메뉴에서 자동응답을 누릅니다. 그러면 아래 사진과 같은 화면을 볼 수 있고, 여기에서 오른쪽에 있는 API형 자동응답 부분에서 '설정하기'를 누릅니다.
이 화면에서 앱 등록하기를 누릅니다.
앱 이름과 앱 설명은 아무렇게나 입력하셔도 상관이 없습니다. 그리고 앱 URL의 경우에는 맨 처음에 BASE_URL로 설정했던 주소를 입력하시면 됩니다. 그리고 전화번호를 입력해서 인증을 하면 됩니다. 참고로 여기서 입력할 전화번호의 형식은 010-XXXX-XXXX로 입력하는게 아니라 010XXXXXXXX와 같은 형태로 해야지 인식이 되는 것으로 보입니다.... 뭐지...?
그리고 URL이 정상적으로 잘 동작하는지 확인하기 위해서 앱 URL 옆에 있는 API TEST 버튼을 누르시면 됩니다. 만약 설정이 잘 되었다면 아래와 같은 화면을 볼 수 있습니다.
이렇게 설정을 마치고 저장을 누르시면 아래 화면과 같은 화면을 볼 수 있습니다. 여기에서 API Test를 누른 다음에, 서비스 시작을 누르면 카카오톡 서버와 우리 서버의 연동이 끝났습니다.
이제 자동응답이 잘 작동하는지 확인해보기 위해서 친구추가를 해서 버튼을 눌러봅니다. 참고로 처음에 버튼들은 잘 뜨지만 버튼을 눌렀을 떄 아직 구현되지 않은 사항이라는 에러 메시지를 볼 수 있습니다.
이 부분은 아직 우리가 버튼에 대한 기능들을 추가하지 않았기 떄문에 발생하는 것입니다. 그래서 다음 시간에는 버튼을 눌렀을 때 어떤 응답을 보여줄지를 만들어서 보여주는 기능을 구현해보도록 하겠습니다.
추천인 3
작성자
댓글 9
이런 능력자분이 지금 한창 챗봇이 인기인데 안타깝네요
아마도 서버권한이 없는지 초기 keyboard 값이 저장이 안되더라구요
그래서 스터디포어스 서버를 이용해서 테스트해볼 생각입니다.