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