티스토리 뷰




사용 환경 : Linux Mint 17 Mate


Telegram은 Lua Script로도 연동이 가능하지만, Python Script가 더 친숙하기에 Python과 연동하는 방법을 소개하려고 합니다.


pyTelegramBotAPI를 이용하여 제어를 하는 방법입니다. 이 방법은 최신 텔레그램 CLI에서만 (v1.x) 지원됩니다. 텔레그램과 연동할 수 있는 파이썬 인터페이스는 다음과 같은 2가지가 있습니다.  첫 번째 파이썬 인터페이스 사용하는 것을 다들 추천을 하는 것 같습니다.


ㄱ. https://github.com/eternnoir/pyTelegramBotAPI


ㄴ. https://github.com/leandrotoledo/python-telegram-bot



텔레그램을 CLI로 설치하는 방법을 알아보겠습니다.


1. git clone --recursive https://github.com/vysheng/tg.git && cd tg



2. sudo apt-get install libreadline-dev libconfig-dev libssl-dev lua5.2 liblua5.2-dev libevent-dev libjansson -dev libpython-dev make




3. ./configure



4. make




5.  ./bin/telegram-cli -k tg-server.pub


이 명령어를 실행하고 phone 번호를 적는 부분이 나오는데, 자신의 폰 번호를 입력 후 인증 번호를 입력하면 CLI에서 Telegram을 실행 가능합니다. 연락처를 알아올 수도 있고, 상대방에게 메시지를 보낼 수도 있게 됩니다.



6. Telegram CLI가 설치가 되었으니, pyTelegramBotAPI를 설치하도록 하겠습니다.


일단, 아까 설치한 tg 폴더 안에 bot 폴더를 생성합니다.

mkdir tg/bot




7. bot 폴더에 들어가서 pyTelegramBotAPI를 Download 합니다.


git clone https://github.com/eternnoir/pyTelegramBotAPI.git




8. 설치한 pyTelegramBotAPI 폴더에 설치된 것을 확인 후에 setup을 진행하겠습니다.


sudo python setup.py install





9. 설치 후 examples에 들어가서 예를 들어서 기본적인 시연을 진행하겠습니다.



* 아래 좌표는 Telegram Bot API Token 생성하기 입니다.

http://suspected.tistory.com/entry/Telegram-Bot-API-Token-%EC%83%9D%EC%84%B1%ED%95%98%EA%B8%B0 


10. echo_bot.py를 열어보면 API_TOKEN에 Botfather 에게 발급받은 API Token을 그대로 적어줍니다. 한 글자라도 틀리면 오류가 나니, 복사 붙여넣기를 권장합니다.


send_welcome 함수에서 bot.reply_to(message, suspect) 부분에서 suspect 부분에 commands (현재는 help, start) 에 응답하는 메시지나 값을 작성합니다. 기본적인 예제라서 문자열을 그대로 입력했지만, 예를 들어 파싱을 하는 루틴을 만들어 파싱된 값을 적어줄 수도 있고, 자신의 입맛에 맞게 넣어주면 됩니다.




11. CLI 를 열고, 작성한 echo_bot.py를 실행합니다. 아무 것도 출력이 안 되는 것이 정상이니, 당황하지 마시길 바랍니다.




12. 자신의 Telegram으로 돌아와 아까 commands에서 본 /start 명령을 해보겠습니다.



13. Bot에게서 아까 적어준 "Ha....f...u...."이 날라오는 것을 확인할 수가 있습니다.




기본적인 설치 방법을 잘 따라와주셔서 감사합니다. 




댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함