최근 회사에서 우리 홈페이지에서 메세지를 보내면 telegram을 통해 그 메세지가 전달되는 기능을 만들일이 생겼다.
해당 기능을 만들기위해 telegram에서 제공하는 API를 조사해야 했다.
조사결과 재미있었던 점은 텔레그램에선 유저간에 직접적으로 채팅을 할 수 있는 API는 제공하고 있지 않다는 점이며,
텔레그램의 챗봇을 통해서 메세지를 전달 받을수 있다는 점이다.
그러니까 서로간의 메세지를 주고받을 때도 직접 가는게 아니라 그 사람의 챗봇을 통해 메세지를 전달할 수 있다는 말이다.
이건 마치 그사람의 비서에게 메세지를 전달하고 그 비서가 그 사람에게 메세지를 전달하는 방식이었다.
(왜 이렇게 만들어 놨을까 생각이 든다..)
아래 링크에 텔레그램 봇을 어떻게 생성하고 생성한 봇의 토큰을 가지고 API를 사용하여 사용자에게 메세지를 보내는지 잘 나와있다.
http://junemoon.tistory.com/164
결국적으로 텔레그램에서 필요한 것은 봇의 고유한 토큰값과 chatID이다.
(토큰값으로 해당 채팅방의 정보를 hook하여 정보 내에서 chatID를 불러올 수 있지만, 채팅기록이 있어야 토큰값으로 hook 했을때 chatID를 포함한 정보를 넘기기에 토큰값만 알면 실질적으로 사용이 불가능하다. 그리고 hook 할 수 있는채팅 정보는 일정시간이 지나면 reset된다.)
이 두 정보를 통해서 봇이 사용자에게 메세지를 보내게 된다.
API 주소를 직접 쳐도 되지만 앞으로 유지보수의 미래를 내다보고 telegram 메세지에 관한 js 모듈을 사용하였다.
아래는 사용한 모듈 주소다.
https://github.com/Yoctol/messaging-apis/blob/master/packages/messaging-api-telegram/README.md
'Javascript' 카테고리의 다른 글
submit 이벤트 (0) | 2018.01.27 |
---|---|
express 앱용 프로세스 관리자 (0) | 2018.01.25 |
정규표현식 강의 사이트 (0) | 2017.12.21 |
이미지 태그 속성의 src를 변환해도 이미지가 변환이 안 되는 경우 (0) | 2017.12.18 |
vue.js 예제 모음 사이트 (0) | 2017.12.15 |
댓글