코딩일기

Discord 알림(공지) 봇 만들기(feat. aws lambda + Node.js) 본문

Code/기타

Discord 알림(공지) 봇 만들기(feat. aws lambda + Node.js)

daje 2021. 1. 16. 19:31
728x90
반응형

 

 

안녕하세요 다제입니다. 

요즘 부트캠프에서 수학, 통계 관련된 어려운 개념을 배우고 있습니다. 

그러다보니 자연스럽게 제가 지향하는 코딩하는 거리가 점점 멀어지고 있습니다...

 

제가 지향하는 코딩에 대해서 모르시는 분들을 위해 간단히 기재하자면 

"일상에 단순 반복되는 업무를 코딩(분석, 프로그래밍) 통해 개선하자" 입니다. 

 

Discord로 부트캠프를 진행하는데, 반복적인 공지들이 있더라구요 

그런 의미에서 오늘은 Discord 알림(공지) 봇을 만들어 보겠습니다. 

 

[ 반복되는 공지들 ]

(오전) 09시 - 로그인 하세요

(오후) 16시 30분 - 질문 제출하세요

(오후) 18시 - 로그아웃 하세요

(오후) 21시 - 과제 제출 시간이 종료되었습니다.

 

그런데 이걸 우리가 직접하고 있다면 시간도 뺏기고 저 공지를 해야한다는 생각도 뺏기고 

다른 일을 하다가 잊어버리는 경우 있습니다. 이에, 핸드폰으로 알람을 맞추다가.. 

이 알람을 우리 동기들과 함께 할 수 있는 방법이 없을까??? 고민 하였습니다. 

그렇게 고민을 하다가 도저히 안돼겠다 싶더라구요!

 

그래서 2021.01.15(목) 23시.. 폭풍 구글링을 하였습니다...(블로그를 작성해야하는ㄷ ㅔㅔ....)

그랬더니 AWS Lambda + Node.js로 개발을 할 수 있다느 사실을 알게 되었고

바로 도전하였습니다. ( 참고로.. 둘다 모르는 녀석들 입니다.. )

 

 


 

1. 제작 사유 

  -. 공지(알림) 자동화 봇을 만들어 수강생&관리자가 수업에 더욱 몰입할 수 있도록 환경개선을 하고자 함 

  -. 반복되는 업무(공지)를 봇에게 전달하여 일정한 시간에 공지될 수 있도록 하고자 함 

  -. 동기들에게 매일 해야하는 task를 리마인드 시켜주고자 함

 

2. 기대효과 

  -. 1원의 비용도 드리지 않고 향후 발생되는 모든 수업, 스터디에서 사용할 수 있음

  -. 매일 해야하는 task를 놓치는 확률이 낮아짐 

 

3. 지출예상비용 : \ 0 

  -. aws Lamda(웹훅)는 한달에 100만건 무료 이용 가능 ( 1일 - 3만건 웹훅 발송 가능 ) 

  -. *우*님께 해당 내용 금일 전달 완료 ( 2021.01.16 )

 

4. 제작방법  

  -. 준 비 물 : aws ID, discord ID, VSCode, Node.js  

  -. 소요시간 : 60분

  -. 제작 순서 : www.youtube.com/watch?v=i31QsZro6s0&lc=UgxjTnUXiFfIpHsJHZF4AaABAg.9IZ-Y0ZzcY09IZHBpE3Mc4

    * 너무나 잘 정리되어 있는 유튜브를 참고 부탁드립니다. 

  -. 완료된 코드 : github.com/daje0601/discord_anounce_bot

 

[ 완료된 출력화면 ]

테스트를 위해 1분 단위 공지되도록 설정함

 

 


 

이렇게 총 60분을 드려 봇을 만들었습니다. 정말 뿌듯하고 좋네요..! 

 

앞으로도 이렇게 삶을 개선할 수 있는 프로그램과 분석을 하도록 노력하겠습니다. 

 

어떤 DS( 또는 프로그래머 )가 될것인지 스스로 정의해보고 공부를 한다면 지금 배우고 있는 

 

무엇을 배우고 있는지 모르는 이 상황속에서 조금마한 의미를 더할 수 있지 않을까 생각합니다.

 

앞으로도 자주 놀러와주시고, 즐거운 주말 되세요! 

 


혹시 위 봇을 특정 시간에 자동으로 발송하는 방법을 알고 싶은 분들을 위해 추가적으로 코멘트 기재드립니다. 

 

아직 자동발송에 관련한 영상을 찾지 못하여 제가 직접 유튜버와 소통하여 방법을 따왔습니다. 

 

1. Cloudwatch event에서 규칙생성하기 

  -. 규칙을 생성하는 방법이 매우 다양하니 필요하신 규칙을 찾아보시는걸 추천드립니다. 

  -. 규칙을 생성하는 방법에 대한 자세한 설명은 아래 링크를 참고 부탁드립니다. 

  -. https://docfriends.github.io/DevStrory/2019-05-21/lambda-scheduler/ 

 

2. 다시 aws Lambda에 와서  [트리거 추가] 버튼 클릭

전 이미 등록된 브릿지가 있는 상태로 사진을 공유드립니다.

3. EventBridge(CloudWatch Events)를 선택

4. Cloudwatch event에서 등록한 규칙 추가

 

5. 오른쪽 하단 추가버튼 클릭

 

 

 

 

설정하시다가 안되시는 부분이 있으시면 언제든지 댓글 달아주세요!

728x90
반응형
Comments