본문 바로가기

프로젝트

Project 2.0 카카오톡 자동 응답봇 만들기[2] 이번에 살펴볼 내용은 카카오톡 자동 응답 서비스를 구현하기 위한 서버 구축을 하려고 합니다. 일단 아직 카카오톡 플러스 친구에 가입하지 않은 경우에는 http://humit.tistory.com/249를 참조해서 가입을 하시기 바랍니다. 이번 내용에서의 준비물은 SFTP 패키지가 설치된 Sublime Text 3, 카카오톡 봇 제작기(https://github.com/humit0/kakao_auto_reply/archive/master.zip에서 받으시면 됩니다.), 카카오톡 플러스 친구 계정이 필요합니다. 물론 Sublime Text 3가 없는 경우에는 아무 텍스트 에디터나 사용해도 상관이 없으며, FTP 프로그램으로 업로드를 하시면 되기 때문에 크게 신경쓰지 않으셔도 됩니다. 다만 앞으로의 강좌를 위..
Project 2.0 카카오톡 자동 응답봇 만들기[1] 이번에 살펴볼 내용은 카카오톡 플러스 친구에 가입하는 과정에 대해서 살펴보려고 합니다. 준비물은 카카오톡 계정과 그것과 연동된 전화번호만 있으면 됩니다. 먼저 옐로아이디의 메인 URL인 https://yellowid.kakao.com/login로 접속합니다. 그리고 아래 사진과 같이 "옐로아이디 만들기"를 클릭하세요. 그러면 아래와 같은 가입 화면을 볼 수 있습니다. 여기에서 내용을 읽어보시고 스크롤을 내리셔서 "카카오 계정 로그인"을 누르시면 됩니다. 그러면 아래와 같이 카카오 계정으로 로그인을 하라고 하는 화면을 보실 수 있습니다. PC 카톡에서 접속하는 것처럼 이메일 주소와 비밀번호를 입력하시면 됩니다. 그러면 바로 옐로 아이디 이용약관에 대한 설명이 나옵니다. 아마 대부분의 사람이 저 많은 내용을..
Project 2.0 카카오톡 자동 응답봇 만들기[0] 카카오톡에서 올해 5월 달부터 플러스 친구 자동응답 API를 제공해주고 있습니다. 모바일 카카오톡에서만 작동하는 것으로 보이며 버튼을 클릭하면 해당하는 응답을 보여주는 형태로 동작을 합니다. 즉 이 기능을 잘만 이용한다면 카카오톡을 이용해서 주문을 할 수 있는 서비스나 혹은 오늘 날씨나 혹은 실시간 검색어를 알려주는 봇을 만들 수 있습니다. 자동응답 API에 대한 설명은 https://github.com/plusfriend/auto_reply에서 보실 수 있습니다. 그리고 이 API를 기반으로 해서 PHP와 Apache가 설치되어 있는 서버에서 쉽게 이 API를 이용할 수 있도록 하기 위해서 프로그램을 제작했습니다. 소스코드는 https://github.com/humit0/kakao_auto_reply에..
Project 1.0 telegram 봇 제작하기.(3) 이번에는 랜덤함수를 이용해서 주사위 게임과 로또 번호 생성기를 만들어보도록 하자. lua script에서의 랜덤함수는 math.random()이다. 사용 방법은 math.random(최소 숫자, 최대숫자) 형식으로 되어 있다. 그리고 이 랜덤함수의 시드값은 math.randomseed(시드값) 으로 주면 된다. 그리고 이 시드값은 직접 숫자로 줄 수도 있지만, 일반적으로는 시스템 시간을 시드값으로 해서 랜덤함수를 구현하는 것이 일반적이다. 그래서 이러한 내용들을 가지고 이제 주사위 게임과 로또 번호 생성기를 만들어보도록 하자.먼저 주사위 게임을 구현해보도록 하자. now = os.time() math.randomseed(now) function on_msg_receive(msg) if(msg.text =..
Project 1.0 telegram 봇 제작하기.(2) 전체적인 명령어를 지원하는 봇을 만들기 전에 간단한 봇을 만들도록 하자. 여기서 사용하는 언어는 Lua script로 게임에서 많이 쓰인다고 한다.telegram에서 lua script를 적용시키는 방법은 간단하다. 터미널 상에서 " -s " 이런 식의 문법을 이용하면 된다. 이 스크립트는 누군가로부터 hello라는 메시지를 전달받으면 world라는 메시지를 답장으로 보내주는 봇의 스크립트이다. function on_msg_receive(msg) if(msg.text=="hello") then mark_read(msg.from.print_name, ok_cb, false) send_msg(msg.from.print_name, "world", ok_cb, false) end end function ok_c..
Project 1.0 telegram 봇 제작하기(未完) 2014/10/30 - [컴퓨터/기타] - Project 1.0 telegram 봇 제작하기.(0) - 프로젝트 시작 동기 및 계획 수립 2014/10/30 - [컴퓨터/기타] - Project 1.0 telegram 봇 제작하기.(1) - 리눅스 상에서 Telegram-CLI 설치하기 2014/11/04 - [컴퓨터/기타] - Project 1.0 telegram 봇 제작하기.(2) - Lua script를 이용한 간단한 봇 제작 (1) : 메시지에 대한 답장하기 2015/01/08 - [컴퓨터/기타] - Project 1.0 telegram 봇 제작하기.(3) - Lua script를 이용한 간단한 봇 제작 (2) : 주사위 게임과 로또 번호 추출기 파싱한 결과를 메시지로 보내주기 서버를 운영하기
Project 1.0 telegram 봇 제작하기.(1) I. Telegram 설치하기 먼저 Telegram 봇을 제작하기 위해서는 운영체제가 리눅스로 필요하다.만약 window가 설치되어 있는 컴퓨터의 경우에는 Ubuntu를 usb를 이용해서 설치하거나, 아니면 가상머신을 이용해서 리눅스를 설치하는 방법이 있다.가상머신을 이용한 경우에는 직접 OS를 설치해서 돌리는 방법보다 성능이 떨어질 수 밖에 없지만, 그래도 window와 ubuntu를 동시에 돌릴 수 있다는 장점이 있다. 가상머신에서 리눅스를 설치하는 방법은 잘 알려져 있으니 여기에서는 따로 설명하지 않겠다. 여기에서는 Ubuntu를 기준으로 설명하도록 하겠다. 순서는 다음과 같다.터미널에 들어가서 wget https://github.com/vysheng/tg/archive/master.zip -O t..
Project 1.0 telegram 봇 제작하기.(0) 내가 이 글을 작성하게 된 계기는 페이스북 생활코딩 그룹에서 다음 사이트를 발견하고 나서부터였다. http://truefeel.tistory.com/m/post/224 이 사이트에서는 텔레그램을 이용해서 서버를 관리할 수 있는 프로그램을 작성하는 방법에 대해서 자세히 설명하고 있었다. 가끔 학교 급식을 보거나 셔틀의 위치를 확인하기 위해서 '희훈봇'과 같은 카카오톡 봇을 사용하곤 했는데, 요즘에는 잘 작동하지 않아서 한 번 봇을 만들어보면 좋겠다라는 생각으로 이 프로젝트를 시작하였다. 이 프로젝트의 방식은 다음과 같이 진행될 예정입니다.봇에 어떠한 기능을 추가할 것인가?봇의 서버를 어떻게 구동할 것인가?봇을 어떻게 최적화를 할 것인가? 기본적으로 사용할 언어는 JAVA와 LUA SCRIPT입니다. Lua..