본문 바로가기
반응형

텔레그램4

Giscus 댓글, 텔레그램 (Telegram) 으로 알람 받기 최근에 Giscus로 댓글 시스템을 이관하면서 새 댓글이 생성될때 알람을 받을 방법이 없었다. 그래서 간단하게 Github Action과 Telegram을 통해 알람을 받도록 구성했다. 1. 텔레그램 Bot 생성 BotFather 에서 새로운 봇을 생성한다. /newbot 을 입력해서 새로운 봇 생성을 시작 blog-comment 라는 이름으로 봇 생성 방금전에 생성한 blog-comment 봇의 username을 지어야한다. 여기서는 MyBlogCommentBot 으로 지었다. 마지막엔 꼭 bot이 붙어야 한다. 마지막 메세지에 포함된 token 값이 앞으로 사용할 Token이라 별도로 관리를 한다. 해당 Bot의 채널ID를 알아야 API를 사용할 수 있다. chatId를 확인해보기 위해 생성된 Bot.. 2023. 3. 6.
Github Action 빌드 결과 Telegram Bot으로 보내기 팀 단위의 프로젝트에서는 Github Action 빌드의 결과를 Slack으로 보내겠지만, 개인적인 프로젝트에서는 Telegram을 사용할 때가 많다. 메세지 제한이 없고 슬랙은 무료 Plan에서는 채널당 메세지가 10,000개 제한이 있다. 네이티브 앱이라 슬랙에 비해 속도 체감이 심하다 특정 프로젝트의 build 결과를 텔레그램 메신저로 받을 수 있도록 진행한다. 1. bot 생성 먼저 텔레그램 봇을 생성한다. 텔레그램 메신저로 이동하여 BotFather 를 찾는다. 아래와 같이 BotFather 채팅방에서 /newbot을 입력한다 그리고 나선 봇 이름을 등록한다. 봇 이름은 다음과 같은 규칙이 필요하다 XXXBot 혹은 XXX_bot 과 같이 마지막 뒤에 Bot 혹은 _bot 이 들어가야만한다 생성.. 2022. 3. 26.
3. 텔레그램 & AWS 서비스 연동하기 - 3) DynamoDB를 이용한 전체 공지 이번 시간에는 Telegram의 전체 공지 기능을 구현해보겠습니다. Telegram에는 전체 공지 기능이 없습니다. 그래서 챗봇을 쓰는 모든 유저에게 메세지를 전송하기 위해선 별도의 공간에 채팅방 ID를 저장하고, 이 ID별로 메세지를 전송해야만 합니다. 그 과정을 하나씩 소개드리겠습니다. 1. ID 등록 저희의 챗봇을 사용하는 사용자들의 채팅방 ID (chat_id)를 저장해야만 합니다. 저장소는 DynamoDB를 선택합니다. 복잡한 트랜잭션이 필요하지 않으며 JSON 형태로 저장하기 쉽고 고성능의 저장소 AWS의 MongoDB 정도로 보시면 됩니다. 비용은 아래 보시는것처럼 개인이 쓰기에 충분한 양입니다.(참고: Amazon DynamoDB 프리티어로 시작하기) DynamoDB 생성 서비스에서 Dyn.. 2018. 6. 23.
2. 텔레그램 & AWS 서비스 연동하기 - 2) TravisCI와 S3를 이용하여 정적 데이터 관리하기 최근에 많은 Github 저장소에서 유용한 정보들을 제공하고 있습니다. 국내에는 다음과 같은 좋은 저장소들이 있는데요. 국내 개발 블로그 모음 개발 관련 밋업, 세미나 모음 기술 면접 모음 개발자 회고 모음 주니어 개발자 채용 정보 본인이 이런 데이터를 모으고, 이를 Bot으로 안내해주는 서비스를 만든다고 가정하시면 어디에다 이 정보들을 관리할지가 고민일 수 있습니다. 일반적인 웹 서비스처럼 생각한다면 데이터베이스에 저장해서 사용할수 있습니다. 하지만 이처럼 변경요소가 거의 없고, 조회만 대부분인 상황에서 데이터베이스를 쓰기엔 비용이나 시간이 너무 아깝습니다. 그래서 많은 저장소 운영자분들이 json 파일로 정보를 관리하십니다. 예를 들어 제가 운영 중인 주니어 개발자 채용 정보의 경우 채용 정보를 db.. 2018. 6. 15.

728x90
반응형