Telegram sendMessage API 간단 사용

텔레그램(Telegram)의 API를 이용하여 간단히 나에게 메세지를 보내보자.

준비: 텔레그램 가입 먼저 요약하자면, 텔레그램의 Bot을 이용하여 채팅방을 만들고 메세지를 보내는 API에 해당 채팅방을 연결시켜주면 끝이다.

구체적인 예를 통해 정리해보자.
1. Bot 생성: 나의 Bot을 만들기위해 텔레그램의 Bot 관리자(@BotFather)에 접근한다.
  1-1. 웹브라우저(Web browser)에서 https://web.telegram.org/#/im?p=@BotFather
  1-2. 하단의 Start 버튼 클릭 또는 /start
  1-3. /newbot
  1-4. Bot 별칭 지정: chat 리스트 등 외부에 보일 이름
  1-5. Bot 이름 지정: 반드시 이름이 bot으로 끝나야 한다. ex) hexoul_bot
  1-6. Access token 메모: 1-4까지 진행하면 BotFather가 메세지를 보내는데 이것이 Access token이다.
            "Use this token to access the HTTP API:" 바로 아래의 긴 문자열을 복사해둔다.
  1-7. chat 리스트에서 1-4. 에서 지정한 별칭을 찾아 Start 버튼 클릭 또는 /start 입력

2. 채팅방 정보 얻어오기
  2-1. 내 정보 API 호출: "https://api.telegram.org/bot" + Access token + "/getUpdates" 를 웹브라우저에 입력한다.
           1-5에서 얻은 Access token이 123ABC였다면, "https://api.telegram.org/bot123ABC/getUpdates" 가 된다.
          만약 "result": []로 되어있다면 아직 Bot 시작 전일 수 있으므로 1.7.이 잘 되었는지 확인한다. 정상적으로 처리되었다면 아래와 같은 결과가 반환된다.
{"ok":true,"result":[{"update_id":???,
"message":{"message_id":??,"from":{"id":??,"is_bot":false,"first_name":"Your first name","last_name":"Your last name","language_code":"en-US"},"chat":{"id":????????,"first_name":"Your first name","last_name":"Your last name","type":"private"},"date":1511258546,"text":"/start","entities":[{"offset":0,"length":6,"type":"bot_command"}]}}

  2-2. chat_id 메모
            2-1에서 빨간 굵은 글씨로 표시한 ????????가 chat_id로 쓰인다.
실제로는 숫자로 되어있으므로 헷갈리지 말자. 따로 메모해두자.

3. 채팅방에 메세지 보내기
  - 2-1에서 썼던 웹주소의 뒷부분을 변경하여 호출한다.
      Access token까지가 base url이고 API 명, 인자 등이 뒤에 붙는다.
      메세지를 보내는 API 명은 sendMessage이고 인자는 chat_id와 text로 전체적인 형태는 아래와 같다.
https://api.telegram.org/bot123ABC/sendMessage?chat_id=????????&text=hello
        Access token: 사용자마다 다름
        chat_id: 2-1에서 얻은 채팅방의 ID
        text: 보낼 내용
  - 텔레그램에 메세지가 잘 도착한 것을 확인할 수 있다.

댓글

이 블로그의 인기 게시물

JVM Thread & Memory Monitoring

Cocos2d-x Scene 전환 방법

GUI for Redis : Medis