프로그래밍/개인프로젝트

텔레그램 봇 활용하기 -1

AkaGeun 2016. 8. 23. 23:15

1. telegram bot

 - 2015년 6월 24일 텔레그램 봇 api 공식 발표

 - 기존에는 telegram-cli를 활용한 봇이 많았음

 - 어떤 차이점이 있을까?

 구분

telegram-cli 

telegram-bot 

 지원

오픈소스커뮤니티(비공식) 

텔레그램(공식)

 통신 API

텔레그램 API 

bot API 

 계정

실제 유저 계정 

Bot 계정 

 UI

메시지

메시지, 커스텀 키보드 

 

 


2. Bot 만들기

 - https://telegram.me/botfather 주소로 접속해서 @BotFather 사용자를 추가함

 - 대화창에 들어가면 아래와 같이 화면이 활성화 됨.

 

 * /help를 통해 사용가능한 명령어를 확인할 수 있음.

 - /newbot 메시지를 보내서 봇을 등록할 수 있음.(봇 이름, 봇 아이디 순으로 등록한다. 봇 이름은 한글도 사용가능함)

 - 등록을 하면 봇 api 사용에 필요한 token을 보내줌. (꼭 필요한 값이므로 저장해 놓는 것이 좋다.)

 

3-1. node.js

 -npm 설치 

npm install node-telegram-bot 


- source code

/**

 * Created by geunspage on 2015-10-05.

 */

var Bot = require('node-telegram-bot');

var bot = new Bot({

    token: 'your_bot_token'

}).on('message', function (message) {

        if(message.text == '/test'){

            bot.sendMessage({

                chat_id: message.chat.id,

                text: 'geuns Test : ' + message.text

            });

        }else if(message.text == 'Hello'){

            bot.sendMessage({

                chat_id: message.chat.id,

                text: message.text +' World geuns Telegram Bot'

            });

 

        }else if(message.text == 'time'){

            bot.sendMessage({

                chat_id: message.chat.id,

                text: 'cur '+new Date()

            });

 

        }

        console.log(message);

    })

    .start(); 



4. 실행 화면

 

5. 기타

 - 서버 모니터링 등 여러 분야에서 활용 가능할 것 같음.

 - 생각보다 샘플들이 많아서 본인 입맛에 맞춰서 수정 가능할 듯.

 - 

 

6. 참고 URL

 - https://core.telegram.org/bots/api

 - http://bakyeono.net/post/2015-08-24-using-telegram-bot-api.html

 - https://github.com/depoio/node-telegram-bot