안녕하세요.
저는 최근 호기심이 생겨 최신글 알림 서비스를 개발하고 있습니다.
목적은 특정 태그, 특정 유저의 최신 글이 작성 되었을 때,
알림이 오도록 하는 것 입니다.
첫번째, 카카오톡으로 알림 서비스를 받으면 좋았으나 유료 서비스라 패스하였습니다.
두번째, 직접 어플을 만들자니 배보다 배꼽이 더 큰 상황이라..
Telegram은 공식적으로 python-telgegram-bot 관련 라이브러리를 제공하고 있으며,
이를 이용해서 쉽게 알림 서비스를 만들 수 있을 것입니다.
Telegram의 장점은 아래와 같습니다.
Bot은 아래 설명한 것과 같습니다.
sudo pip install python-telegram-bot만 하면 끝!
아래 코드를 보면 Bot father에게 받은 telegramKey를 이용해서 Bot 객체를 만듭니다.
self.telegramBot = telegram.Bot(token=telegramKey)
그 다음에 메시지를 보내고 싶을 때, sendMessage함수를 사용하면 됩니다.
예를 들어, 새로운 글이 감지 되었을 때, sendMessage를 보내면 되는겁니다!
이제 사용자로부터 입력을 받고 그에 따른 동작을 해야할 때 사용하는 함수인데요
간단히 설명드리면 Handler와 Callback method, 그리고 Handler를 관리하는 dispatcher가 있습니다.
코드는 아래와 같이 공개를 하였고요! 참고하세요 ㅎㅎ
https://github.com/passionbull/steemit-alarm-posting
제가 만든 최신글 알림 서비스는 현재 위의 기능들을 활용해서 아래와 같이 동작합니다.
현재 DB랑 연결하는 부분을 안만들어서 개인용입니다..
이제 해야할 부분은 사용자들이 원하는 태그 및 특정 유저를 선택하면 그것을 DB에 저장하고
서비스에서 DB를 읽어와 최신글 검출 및 메시지 발송을 해야합니다.
생각되는 문제는 저 혼자 쓰는데는 문제가 없으나,
사람들이 많아질 경우 제 서버 (오드로이드-XU4)가 버틸 수 있을지 모르겠네요 ㅜㅜ
궁금한 것이 있으면 물어보세요!
제안, 조언 등 언제든 환영입니다.
글이 많이 긴데 읽어주셔서 감사합니다!
Reference
기존에 있는 스팀잇 Telegram 서비스를 찾아봤는데요.
clayop님의 noteefi가 제가 목표하던 알림 서비스더군요.
Telegram 서비스를 운영하고 있지는 않으신 것 같습니다.
ludorum님의 챗봇은 언급됐을 때, 알림이 오는 서비스입니다.
기존 서비스가 다시 가동된다면 제 서비스는 필요없을 수 있으나,
처음으로 스팀잇 라이브러리도 써보고, Telegram 봇도 개발해보고
많이 공부가 되었습니다.