[[부록07_텔레그램_봇_생성_및_n8n_연동_가이드|부록 07]]. 텔레그램 봇 생성 및 n8n 연동 가이드
📋 개요텔레그램 봇 생성부터 Bot Token 발급, Chat ID 확인, n8n Credential 등록까지 안내합니다. 이 가이드를 따라하면 n8n 워크플로에서 텔레그램으로 메시지를 자동 전송할 수 있게 되죠.
n8n의 Telegram 노드를 사용하려면, 텔레그램 봇을 만들고 n8n에 인증 정보를 등록해야 합니다. 처음 들으면 복잡하게 느껴질 수 있지만, 텔레그램 봇 생성은 프로그래밍 없이 대화만으로 완료됩니다. 문자 그대로 "채팅 몇 번"이면 끝이거든요.
이 부록은 다음 내용을 다룹니다.
- 텔레그램 앱 설치 및 계정 생성
- BotFather로 봇 생성 및 Bot Token 발급
- 나의 Chat ID 확인
- 봇과 대화 시작하기
- n8n에 Telegram API Credential 등록
💡 4.4.1 Schedule Trigger 실습에서 오셨나요?4.4.1 섹션의 매일 영어회화 텔레그램 알림 실습을 위해 이 가이드를 보고 계신다면, 아래 항목을 순서대로 모두 완료한 뒤 돌아가세요.
순서 완료할 항목 비고 1 텔레그램 앱 설치 모바일 또는 데스크톱 2 BotFather로 봇 생성 Bot Token 발급 3 Chat ID 확인 메시지를 받을 나의 ID 4 봇과 대화 시작 Start 버튼 클릭 5 n8n Credential 등록 Telegram API 인증 정보 5단계까지 완료하면 준비 끝입니다. [[Day18_04.4.1_메신저_연동_매일_영어회화_텔레그램_알림]]로 돌아가세요.
텔레그램 앱 설치 및 계정 생성
텔레그램은 **모바일(iOS/Android)**과 데스크톱(Windows/macOS/Linux) 모두에서 사용할 수 있는 무료 메신저입니다. 카카오톡이나 라인과 비슷하지만, 봇 API를 무료로 제공하기 때문에 자동화 도구와 궁합이 아주 좋죠.
설치 방법
| 플랫폼 | 설치 방법 |
|---|---|
| iOS | App Store에서 Telegram 검색 후 설치 |
| Android | Google Play에서 Telegram 검색 후 설치 |
| 데스크톱 | telegram.org 에서 다운로드 |
[그림부록07-1] 텔레그램 공식 웹사이트 — 플랫폼별 다운로드 버튼
계정 생성
설치 후 앱을 실행하면 전화번호 입력 화면이 나타납니다.
- 국가 코드를 **+82 (대한민국)**로 선택합니다.
- 본인의 휴대전화 번호를 입력합니다.
- SMS 또는 전화로 전송된 인증 코드를 입력합니다.
- 이름을 입력하면 계정 생성이 완료됩니다.
💡 이미 텔레그램 계정이 있다면 이 단계는 건너뛰고 바로 다음 섹션으로 이동하세요.
ℹ️ 데스크톱 앱을 추천합니다봇과의 대화 내용을 복사하거나, Bot Token을 n8n에 붙여넣을 때는 데스크톱 환경이 훨씬 편합니다. 모바일로 봇을 생성한 뒤, 데스크톱 앱에서 로그인하면 대화 내역이 자동으로 동기화됩니다.
BotFather로 봇 생성하기
텔레그램 봇은 BotFather라는 공식 봇을 통해 생성합니다. BotFather는 텔레그램의 모든 봇을 관리하는 "봇의 아버지" 같은 존재인데요, 여기에 채팅을 보내는 것만으로 봇을 만들고, 설정하고, 토큰을 발급받을 수 있습니다.
STEP 1. BotFather 찾기
- 텔레그램 앱 상단의 검색 아이콘(돋보기)을 클릭합니다.
- 검색란에 **
BotFather**를 입력합니다. - 검색 결과에서 파란색 체크 표시(공식 인증)가 있는 BotFather를 선택합니다.
⚠️ 가짜 BotFather에 주의하세요BotFather를 흉내 낸 가짜 봇이 존재할 수 있습니다. 반드시 **파란색 체크 표시(공식 인증 마크)**가 있는 계정을 선택하세요. 공식 BotFather의 사용자명은 정확히
@BotFather입니다.
- BotFather를 처음 만나면 시작(Start) 버튼이 하단에 표시됩니다. 이 버튼을 클릭하세요.
- BotFather가 사용 가능한 명령어 목록을 보여줍니다. 이 화면이 나오면 정상적으로 연결된 것입니다.
STEP 2. 새 봇 생성 명령 입력
- 대화 입력란에 **
/newbot**을 입력하고 전송합니다.
- BotFather가 **봇의 표시 이름(display name)**을 물어봅니다. 원하는 이름을 자유롭게 입력합니다.
Alright, a new bot. How about you tell me the name of your bot?
예를 들어 나의 n8n 알림봇이라고 입력합니다. 한글, 영어, 이모지 모두 사용 가능합니다.
- 이어서 BotFather가 **봇의 사용자명(username)**을 물어봅니다.
Good. Now let's choose a username for your bot. It must end in `bot`.
봇 사용자명은 아래 규칙을 지켜야 합니다:
| 규칙 | 설명 | 예시 |
|---|---|---|
bot으로 끝나야 함 | 필수 규칙 | my_n8n_alert_bot ✅ |
| 영문, 숫자, 밑줄만 사용 | 한글, 공백 불가 | 나의봇 ❌ |
| 고유해야 함 | 이미 사용 중인 이름 불가 | 중복 시 숫자 추가 |
예를 들어 my_n8n_alert_bot이라고 입력합니다. 만약 이미 사용 중인 이름이라면, my_n8n_alert_bot_01처럼 숫자를 추가하세요.
💡 사용자명은 나중에 변경할 수 있습니다. BotFather에게
/setusername명령을 보내면 됩니다. 단, 표시 이름(/setname)과 사용자명 모두 변경 가능하니 너무 고민하지 않아도 됩니다.
STEP 3. Bot Token 확인 및 저장
봇 생성이 완료되면, BotFather가 축하 메시지와 함께 Bot Token을 알려줍니다. 이 메시지는 아래와 같은 형태입니다:
Done! Congratulations on your new bot. You will find it at t.me/my_n8n_alert_bot.
You can now add a description, about section and profile picture for your bot,
see /help for a list of commands. By the way, when you've finished creating
your cool bot, ping our Bot Support if you want a better username for it.
Just make sure the bot is fully functional before you do this.
Use this token to access the HTTP API:
7123456789:AAF8kQ2xB3cD4eF5gH6iJ7kL8mN9oP0qRs
Keep your token secure and store it safely, it can be used by anyone
to control your bot.
Bot Token은 숫자:영문숫자문자열 형태입니다. 예시:
7123456789:AAF8kQ2xB3cD4eF5gH6iJ7kL8mN9oP0qRs
이 토큰을 복사하여 안전한 곳에 저장하세요. 잠시 후 n8n Credential 등록 시 사용합니다.
🚨 Bot Token은 비밀번호입니다Bot Token을 아는 사람은 누구나 이 봇을 통해 메시지를 보내거나 받을 수 있습니다. 절대 다른 사람에게 공유하거나, 공개 저장소(GitHub 등)에 올리지 마세요. **토큰이 유출되었다면? BotFather에게
/revoke명령으로 기존 토큰을 즉시 폐기하고 새 토큰을 발급받으세요.
💡 토큰을 잃어버렸다면?BotFather에게
/mybots명령을 입력하면 생성한 봇 목록이 나타납니다. 봇을 선택한 뒤 API Token 버튼을 클릭하면 토큰을 다시 확인할 수 있습니다.![[그림부록07-10.png]] [그림부록07-10] /mybots로 기존 봇 목록 확인 — API Token 재발급 메뉴
나의 Chat ID 확인하기
n8n Telegram 노드에서 메시지를 보내려면, 받는 사람의 Chat ID가 필요합니다. Chat ID는 텔레그램 사용자마다 고유한 숫자 ID인데요, 사용자명(@dante_labs)과는 전혀 다른 값입니다.
ℹ️ Chat ID란?텔레그램은 내부적으로 모든 사용자, 그룹, 채널에 숫자 ID를 부여합니다. 이것이 Chat ID입니다.
구분 예시 n8n에서 사용 Chat ID (숫자) 6367628385✅ 사용자명 (@로 시작) @dante_labs❌ n8n Telegram 노드의 Chat ID 필드에는 반드시 숫자를 입력해야 합니다.
@사용자명형식은 동작하지 않습니다.
방법: userinfobot 사용
가장 간단한 방법은 @userinfobot을 사용하는 것입니다. 별도 설치 없이 텔레그램 앱에서 바로 확인할 수 있죠.
1단계: 텔레그램 검색란에 **userinfobot**을 입력합니다.
2단계: 검색 결과에서 @userinfobot을 선택하고 대화를 시작합니다.
3단계: **/start**를 입력하면, 봇이 나의 정보를 즉시 알려줍니다.
@userinfobot:
Id: 6367628385
First: 단테
Last: -
Lang: ko
여기서 Id 값(6367628385)이 바로 나의 Chat ID입니다. 이 숫자를 메모해 두세요.
💡 Chat ID를 어디에 적어두면 좋을까요? 메모장에 Bot Token과 함께 적어두면, n8n Credential 등록 시 편리합니다.
Bot Token: 7123456789:AAF8kQ2xB3cD4eF5gH6iJ7kL8mN9oP0qRs Chat ID: 6367628385
봇과 대화 시작하기
이 단계는 간단하지만 반드시 필요한 단계입니다. 텔레그램 봇은 보안 정책상, 사용자가 먼저 대화를 시작하기 전에는 메시지를 보낼 수 없습니다. 이 단계를 빠뜨리면 n8n에서 메시지를 보낼 때 에러가 발생하거든요.
⚠️ 이 단계를 건너뛰면 발생하는 에러
Forbidden: bot can't initiate conversation with a user이 에러가 보인다면, 아래 과정을 진행하지 않은 것입니다.
1단계: 텔레그램 검색란에 STEP 2에서 설정한 봇 사용자명(예: my_n8n_alert_bot)을 입력합니다.
2단계: 봇을 선택하면 하단에 시작(Start) 버튼이 표시됩니다. 이 버튼을 클릭합니다.
3단계: 봇과의 대화 창이 열리면 완료입니다. 봇이 아직 아무 응답을 하지 않아도 괜찮습니다 — n8n 워크플로를 만들기 전까지는 봇이 자동 응답을 하지 않는 것이 정상입니다.
n8n에 Telegram Credential 등록하기
이제 마지막 단계입니다. 앞에서 발급받은 Bot Token을 n8n에 등록하면, Telegram 노드에서 메시지를 주고받을 수 있게 됩니다.
STEP 4. Credential 생성 화면 열기
- n8n 화면 좌측 사이드바에서 Credentials 메뉴를 클릭합니다.
- 우측 상단의 Add Credential 버튼을 클릭합니다.
- 검색란에 **
Telegram**을 입력하면 결과가 나타납니다. Telegram API를 선택합니다.
STEP 5. Bot Token 입력 및 연결 테스트
- Credential 설정 화면이 열리면, Access Token 필드가 보입니다.
- Access Token 필드에 STEP 3에서 복사한 Bot Token을 붙여넣습니다.
⚠️ 토큰 입력 시 주의사항
- 토큰 앞뒤에 공백이 포함되지 않도록 주의하세요.
- 토큰 형식은 반드시
숫자:영문숫자문자열형태여야 합니다.- 복사·붙여넣기 시 줄바꿈이 섞이지 않았는지 확인하세요.
-
Save 버튼을 클릭합니다. n8n이 자동으로 연결 테스트를 수행합니다.
-
화면 상단에 ==
Connection tested successfully== 메시지가 녹색으로 표시되면 연결 성공입니다.
💡 Credential 이름을 변경하세요: 기본 이름은
Telegram account로 설정됩니다. 여러 봇을 관리할 수 있으므로, 화면 상단의 이름을n8n 알림봇 Telegram처럼 구체적인 이름으로 변경해 두면 나중에 구분하기 편합니다.![[그림부록07-23.png]] [그림부록07-23] Credential 이름 변경 — 상단 이름 클릭 후 수정
봇 관리에 유용한 BotFather 명령어
설정 이후에도 BotFather를 통해 봇을 관리할 수 있습니다. 자주 쓰는 명령어를 정리했습니다.
| 명령어 | 기능 | 사용 예시 |
|---|---|---|
/mybots | 생성한 봇 목록 보기 | 토큰 재확인, 봇 설정 변경 시 |
/setname | 봇 표시 이름 변경 | 나의 n8n 알림봇 → 업무 자동화봇 |
/setusername | 봇 사용자명 변경 | my_n8n_bot → dante_work_bot |
/setdescription | 봇 소개글 설정 | 봇 프로필에 표시되는 설명문 |
/setabouttext | 봇 정보란 설정 | 봇 프로필의 About 영역 |
/setuserpic | 봇 프로필 사진 설정 | 봇에 아이콘 이미지 추가 |
/revoke | 기존 토큰 폐기 + 새 토큰 발급 | 토큰 유출 시 즉시 사용 |
/deletebot | 봇 삭제 | 더 이상 사용하지 않는 봇 정리 |
정리하며
이 부록의 핵심을 정리하면 다음과 같습니다.
- 봇 생성은 BotFather와의 대화로:
/newbot→ 표시 이름 → 사용자명(bot으로 끝나야 함) → Bot Token 발급. - Bot Token은 비밀번호 수준: 유출되면 즉시 BotFather에
/revoke로 폐기 후 재발급. 공개 저장소에 절대 올리지 마세요. - Chat ID는 숫자만:
@사용자명이 아니라userinfobot이 알려주는 숫자 ID(6367628385등)를 사용해야 합니다. - 봇과 먼저 대화 시작 필수: 사용자가 Start를 눌러 대화를 먼저 시작해야 봇이 메시지를 보낼 수 있습니다. 누락 시
Forbidden: bot can't initiate conversation오류가 발생합니다.
설정 확인 체크리스트
-
텔레그램 앱이 설치되고 계정이 생성되었는가?
-
BotFather로 봇을 생성하고 Bot Token을 확인했는가?
-
userinfobot으로 나의 Chat ID를 확인했는가?
-
내가 먼저 봇과 대화를 시작했는가? (Start 버튼 클릭)
-
n8n에 Telegram API Credential이 등록되고
Connection tested successfully가 표시되었는가?
자주 하는 실수와 해결법
| 증상 | 원인 | 해결법 |
|---|---|---|
Connection tested successfully가 안 뜸 | Bot Token이 잘못 입력됨 | BotFather에서 /mybots → 봇 선택 → API Token으로 재확인 |
Forbidden: bot can't initiate conversation | 봇과 대화를 시작하지 않음 | 텔레그램에서 봇 검색 → Start 버튼 클릭 |
Bad Request: chat not found | Chat ID가 잘못됨 | userinfobot에서 /start로 Chat ID 재확인 |
| 봇 사용자명이 이미 사용 중 | 다른 사람이 같은 이름을 사용 중 | 봇 사용자명 끝에 숫자를 추가 (예: my_n8n_bot_01) |
| 메시지가 도착하지 않음 | Chat ID에 @를 포함하여 입력 | Chat ID는 숫자만 입력 (예: 6367628385) |
토큰 입력 후 401 Unauthorized | 토큰에 공백이나 줄바꿈이 포함됨 | 토큰을 다시 복사하되, 앞뒤 공백 제거 |
| BotFather가 응답하지 않음 | 네트워크 문제 또는 가짜 봇 선택 | 인터넷 연결 확인 + 공식 @BotFather (파란 체크) 여부 재확인 |
💡 다음 단계: 텔레그램 외에 일반 이메일로도 자동 발송이 필요하다면 SMTP 설정이 필요합니다. 다음으로 [[부록08_네이버_메일_SMTP_연동_가이드|부록 08. 네이버 메일 SMTP 연동 가이드]]를 참고하세요.
