Telegram 노드 공통 이슈
Telegram 노드에서 자주 발생하는 오류와 이슈, 그리고 해결 방법을 소개합니다. 봇이 채널에 메시지를 보내려면 채널에 봇을 추가해야 합니다. 공개 채널에서만 @channelusername을 사용할 수 있습니다. Chat ID를 얻는 방법은 세 가지입니다:
Telegram 노드에서 자주 발생하는 오류와 이슈, 그리고 해결 방법을 소개합니다.
Telegram 채널에 봇 추가#
봇이 채널에 메시지를 보내려면 채널에 봇을 추가해야 합니다. 봇을 채널에 추가하지 않으면 다음과 같은 오류가 표시됩니다:
Error: Forbidden: bot is not a participant of the channel
채널에 봇을 추가하는 방법:
- Telegram 앱에서 대상 채널에 접근해 채널 이름을 선택하세요.
- 채널 이름을 public channel로 설정하세요.
- Administrators > Add Admin을 선택하세요.
- 봇의 사용자 이름을 검색해 선택하세요.
- 오른쪽 상단 체크 표시를 선택해 봇을 채널에 추가하세요.
Chat ID 가져오기#
공개 채널에서만 @channelusername을 사용할 수 있습니다. Telegram 그룹과 상호 작용하려면 해당 그룹의 Chat ID가 필요합니다.
Chat ID를 얻는 방법은 세 가지입니다:
- Telegram Trigger에서 가져오기: 워크플로에서 Telegram Trigger 노드를 사용해 Chat ID를 가져오세요. 이 노드는 다양한 이벤트에서 트리거되고 실행 성공 시 Chat ID를 반환합니다.
- 웹 브라우저에서 가져오기: 웹 브라우저에서 Telegram을 열고 그룹 채팅을 여세요. 그룹의 Chat ID는 URL에서 "g" 뒤에 오는 숫자입니다. n8n에 입력할 때 그룹 Chat ID 앞에
-를 붙이세요. - Telegram의 @RawDataBot을 그룹에 초대하기: 추가하면 봇이
chat객체를 포함한 JSON 파일을 출력합니다. 그 객체의id가 그룹 Chat ID입니다. 이후 그룹에서 RawDataBot을 제거하세요.
초당 30개 이상의 메시지 전송#
Telegram API는 초당 30개의 메시지만 전송할 수 있는 제한이 있습니다. 30개 이상의 메시지를 전송하려면 다음 단계를 따르세요:
- Loop Over Items 노드: Loop Over Items 노드를 사용해 데이터베이스에서 최대 30개의 Chat ID를 가져오세요.
- Telegram 노드: Telegram 노드를 Loop Over Items 노드와 연결하세요. Expression Editor를 사용해 Loop Over Items 노드에서 Chat ID를 선택하세요.
- Code 노드: Code 노드를 Telegram 노드와 연결하세요. Code 노드를 사용해 다음 Chat ID 배치를 가져오기 전에 잠시 대기하세요. 이 노드를 Loop Over Items 노드와 연결하세요.
이 워크플로를 참고할 수도 있습니다.
전송된 메시지에서 n8n 출처 표시 제거#
노드를 사용해 Telegram 메시지를 전송하면 메시지 끝에 자동으로 n8n 출처 표시가 추가됩니다:
This message was sent automatically with n8n
이 표시를 제거하려면:
- 노드의 Additional Fields 섹션에서 Add Field를 선택하세요.
- Append n8n attribution을 선택하세요.
- 토글을 끄세요.
자세한 내용은 메시지 전송 추가 필드를 참고하세요.
