카카오톡 API보다 훨씬 간단하게 메시지 알림을 받을 수 있는 방법이 있다. 바로 텔레그램 API를 활용하는 것이다.
텔레그램은 복잡한 OAuth 인증 과정이 없고, 토큰 관리도 필요 없어서 정말 간단하다. 텔레그램 API를 이용하기 위해서는 API ID와 API Hash를 발급받아야 한다.
우선 텔레그램 개발자 포털(https://my.telegram.org)에 접속한다.

카카오 개발자 콘솔과 달리 복잡한 설정이 거의 없어서 매우 간편하다. 로그인 후 "API development tools"를 클릭하고 애플리케이션을 생성한다. 앱 이름과 설명을 입력하면 API ID와 API Hash가 발급된다. 이 두 값만 있으면 모든 준비가 끝난다.

두 값을 .env 파일에 다음과 같이 저장한다.
telegram_id=발급받은API ID
telegram_hash=발급받은API Hash
메시지를 텔레그램에 전송하기 위해서는 다음 코드를 이용하면 된다.
from telethon import TelegramClient
import asyncio
import os
from dotenv import load_dotenv
class TelegramNotifier:
def __init__(self, api_id, api_hash, receiver="me", session_name="telegram_bot"):
self.api_id = api_id
self.api_hash = api_hash
self.receiver = receiver
self.session_name = session_name
async def send(self, message: str):
client = TelegramClient(self.session_name, self.api_id, self.api_hash)
await client.start()
await client.send_message(self.receiver, message)
await client.disconnect()
def send_sync(self, message: str):
asyncio.run(self.send(message))
if __name__ == "__main__":
load_dotenv()
api_id = os.getenv("telegram_id")
api_hash = os.getenv("telegram_hash")
telegram_notifier = TelegramNotifier(api_id=api_id, api_hash=api_hash)
telegram_notifier.send_sync("비트코인 매수 완료! 가격: 165,500,000원")
코드를 처음 실행하면 전화번호 입력을 요구한다. 텔레그램에 등록된 전화번호를 입력하면 SMS로 인증 코드가 전송된다. 이 코드를 입력하면 인증이 완료된다. 참고로 전화번호는 8210xxxxxxxx 의 형식으로 입력한다.
인증이 완료되면 telegram_bot.session 파일이 자동으로 생성된다. 이 파일이 있으면 이후 실행 시에는 별도 인증 없이 바로 메시지를 전송할 수 있다.
이전 게시글(https://pasus.tistory.com/414)의 카카오톡 메시지 전송 시스템과 코드를 비교해보면 둘 사이의 차이가 극명하다는 것을 알 수 있다.
카카오톡은 토큰 발급부터 관리까지 수십 줄의 코드가 필요하지만, 텔레그램은 단 몇 줄이면 충분하다. 또한 설정도 간단하고 유지보수도 거의 필요 없어서 한번 만들어두면 계속 사용할 수 있다.
API 사용량 제한이 거의 없고 무료이기 때문에 개인용 알림 시스템을 만들 때는 텔레그램이 훨씬 적합하다고 생각한다.
'AI 에이전트 > 트레이딩' 카테고리의 다른 글
| 카카오톡 메시지 자동 전송 시스템 만들기 (0) | 2025.07.24 |
|---|---|
| 허깅페이스 트랜스포머를 이용한 뉴스 감성 분석 (0) | 2025.07.09 |
| 기술적 지표: 스토캐스틱 (Stochastic) (0) | 2025.07.07 |
| 기술적 지표: 이동평균 수렴확산 (MACD) (0) | 2025.07.06 |
| 기술적 지표: 상대강도지수 (RSI, Relative Strength Index) (0) | 2025.07.04 |
댓글