ㅁ 개요
O 프로그램 소개
- 이번 글은 이전글(2022.12.11 - [분류 전체보기] - (프로젝트) 출근전 날씨 정보를 메신저로 수신하기 - 1. 날씨 정보 실시간 받아오기 - 3) 16일 예상치 날씨 데이터 받아오기)에 이은 5번째 글로 API 응답결과를 가공하여 텔레그램에 날짜 정보를 전송하기 위하여 먼저 텔레그램 봇을 생성하는 방법에 대하여 설명합니다.
O 완성된 프로그램 실행 화면
아래와 같이 텔레그램 봇(봇이름: 파기차차)이 생성되었고, 봇에게 메시지를 정상적으로 보내고 있습니다.
O 시작전 준비 사항
- 시작전 준비 사항 없습니다.
ㅁ 세부 내용
O 완성된 소스
소스파일 : 1.py
import telegram
access_token = '' # 본인의 텔레그램 봇 엑세스 토큰을 입력하여 주세요.
bot = telegram.Bot(token=access_token)
chat_id = bot.get_updates()[-1].message.chat_id
# print(chat_id)
bot.sendMessage(chat_id=chat_id, text="나는 파기차차봇입니다.!!")
O 소스 실행 방법
O 주요 내용
1. 아래와 같이 텔레그램 실행 후 왼쪽 상단 검색창에 'botfather'로 검색합니다.
(※ 텔레그램을 설치하지 않으신 분은 먼저 설치 후 회원 가입을 해야 합니다.)
검색 후 'botfather'를 클릭하면 아래와 같은 화면이 나타납니다.
2. 오른쪽 하단의 메시지 입력창에 순서대로 하기와 같이 입력합니다.
1) /newbot : 새로운 텔레그램 봇을 생성
2) 파기차차 : 봇의 이름을 입력(원하는 이름으로 입력 가능)
3) pagichacha_bot : 봇의 username을 입력(보통 봇이라는 것을 확인할 수 있도록 끝에 _bot으로 입력)
4) access token 획득 : 최종적으로 얻은 토큰을 이용하여 내 봇에게 메시지를 보낼 수 있음(복사해 둘것)
3. 엑세스 토큰까지 정상적으로 발급되었다면 다음 단계로 진행할 수 있습니다.
만일 아래와 같은 에러('IndexError~~~~')가 발생하는 경우 (에러가 발생하지 않는 경우 3번은 skip 해주세요.)
내 봇(나의 경우 '파기차차')에게 아무거나 메시지를 하나 보내면 문제가 해결됩니다.
또는 chat_id를 아시는 경우 소스코드에서 chat_id 변수에 아래와 같이 직접 숫자를 넣어주면 에러가 발생하지 않습니다.
chat_id = bot.get_updates()[-1].message.chat_id <-- 이렇게 하지 말고,
chat_id = 111100000 <-- 이렇게 코딩
4. 이제 우리는 엑세스 토큰도 발급받았으므로 아래와 같이 코딩하여 자신의 chat_id를 확인 할 수 있으며, 봇에게 메시지를 보낼 수 있습니다.
- chat_id : 111100000 <-- 9자리 숫자로 나에게 오직 하나만 존재함(텔레그램 유저를 구분하기 위한 키임)
- 엑세스 토큰 : 텔레그램 봇 갯수 만큼 존재 <-- 봇을 구별하기 위한 키임
5. 아래와 같이 위의 코딩을 실행하면 'chat_id'를 확인할 수 있으며, 그 와 동시에 텔레그램으로 부터 "나는 파기차차 봇입니다.!!" 라는 메시지를 받게 됩니다.
여기까지 되셨다면 다음 단계로 넘어갈 준비가 되었습니다.
O 소스 분석
- 위의 '주요 내용'을 참고하여 주시기 바랍니다.
ㅁ 정리
O 우리가 배운 내용
오늘은 여기까지이며, 위의 내용이 유익하셨다면, 좋아요와 구독 부탁드립니다.
감사합니다.
※ 추가적인 정보는 아래 유튜브 영상에서 해당 내용을 더욱 자세히 보실 수 있습니다.