문서
Telegram
포샌디로 AI가 Telegram 채널과 그룹에 올리는 방법이에요. 내 봇 연결, 봇이 올릴 수 있는 채팅, Bot API로 안 되는 것을 정리했어요.
연결 방법: 내 봇으로
플랫폼 심사 없이 내가 만든 봇으로 연결해요.
- Telegram의 BotFather에서 봇을 만들어요.
- 받은 봇 토큰을 대시보드에 붙여넣어요.
- 포샌디가 그 봇이 관리자로 들어가 있는 채팅을 찾아서 보여줘요. 그중 하나를 골라요.
포샌디 공용 봇은 따로 없어요. 봇 하나가 정지되면 그 봇을 쓰는 모든 사용자가 한꺼번에 멈추기 때문이에요.
한눈에
| 항목 | 종류 | 값 |
|---|---|---|
| 글자 수 | 텍스트 | 4,096 |
| 이미지 | 미디어 | 글 하나에 10장까지. 더 넣으면 앞의 10장만 올라가고 경고가 붙어요 |
| 캐러셀 | 미디어 | 2~10개, 이미지와 영상 섞기 가능 |
| 영상 | 미디어 | 글 하나에 10개 |
| 텍스트만 | 미디어 | 가능 |
| 24시간 발행 | 한도 | 28,800 |
| 24시간 삭제 | 한도 | 올린 뒤 48시간 안에만 가능, 하루 한도는 공개된 값 없음 |
| 상태 | 상태 | live |
이 값은 서버가 검사할 때 쓰는 파일에서 그대로 가져왔어요. 본문 상한은 미디어가 있는지에 따라 달라요.
| 경우 | 상한 |
|---|---|
| 글자만 있는 메시지 | 4,096자 |
| 미디어에 붙는 캡션 | 1,024자 |
글자 수는 코드포인트로 세요.
주소 대신 채팅을 고르는 이유
비공개 채널에는 @주소가 없어요. 숫자로 된 id만 있는데, 이 id는 Telegram 앱 어디에도 보이지 않아요.
그래서 토큰을 넣으면 포샌디가 봇에 최근 들어온 업데이트를 읽고, 봇이 들어가 있는 채팅을 목록으로 보여줘요. 목록이 비어 있으면 아래 순서로 다시 해요.
- 봇을 그 채팅의 관리자로 넣어요.
- 그 채팅에서
/start@내봇을 보내요. - 대시보드에서 다시 불러와요.
미디어가 나가는 방식
- 이미지나 영상 1개: 본문이 캡션으로 붙은 사진 메시지나 영상 메시지로 나가요.
- 여러 개: 앨범으로 나가요. Telegram은 앨범을 메시지 여러 개로 저장해요. 포샌디는 그 메시지 id를 전부 저장해 둬서, 삭제하면 첫 장만이 아니라 앨범 전체가 지워져요.
첫 글 올리기
본문을 넣어 publish를 불러요. 마크다운은 서식으로 바꾸지 않고 쓴 글자 그대로 나가요.
curl -X POST https://api.posendy.com/v1/posts \
-H "Authorization: Bearer $POSENDY_KEY" \
-H "Content-Type: application/json" \
-d '{
"content": "Shipped nested replies today.",
"accountIds": ["conn_..."]
}'
options.telegram 값
| 이름 | 타입 | 설명 |
|---|---|---|
content | string | 이 채널에만 보낼 본문이에요. 넣으면 공통 본문 대신 이 값이 나가고, 글자 수와 미디어 검사도 이 값으로 해요. 안 넣으면 공통 본문을 써요. |
Telegram에만 있는 설정은 없어요. 다른 채널과 같이 이 채널에만 보낼 본문 content만 받아요.
안 되는 것
- 숫자(지표), 댓글, 채널 기록 읽기: Bot API에 그 기능이 없어요. 그래서
get_insights와list_replies는 빈 값을 주지 않고, 지원하지 않는다고 답해요. - 48시간이 지난 글 삭제: 올린 지 48시간이 지나면 Telegram이 봇의 삭제를 막아요. 이때 오류 메시지에 그 이유가 나와요.
자주 묻는 것
포샌디가 내 Telegram 계정을 보나요?
아니요. 내가 만든 봇 토큰을 암호화해서 보관하고, 그 토큰으로만 Bot API를 불러요. 내 개인 계정은 쓰지 않아요.
채팅 목록이 왜 비어 있나요?
봇이 아직 어떤 채팅에도 관리자로 들어가지 않았거나, 들어갔지만 업데이트가 아직 도착하지 않아서예요. 봇을 관리자로 넣고, 그 채팅에서 /start@내봇을 보낸 다음 다시 불러와요.
조회수가 왜 없나요?
Bot API에 조회수를 읽는 기능이 없어요. 포샌디가 빠뜨린 게 아니라 Telegram이 열어 두지 않은 거예요. 그래서 get_insights는 0을 주지 않고 지원하지 않는다고 답해요.
