본문 바로가기

텔레그램

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..