-
노드로 슬랙 챗봇 만들기 + cloudtype 무료 배포잡동사니 2023. 4. 10. 16:34
사내 점심메뉴 관리를 위해 사이트를 만들까 하다가 슬랙을 통해 간단하게 구현이 가능할 것 같아 챗봇을 만들어보았다.
1. 슬랙 API 사이트 접속 (https://api.slack.com/)
2. Create an app 클릭3. From scratch 선택
4. 앱 이름 및 워크스페이스 선택후 생성
5. 소켓 모드 활성화
6. Event Subscriptions 구독 -> Save Changes 클릭
7. OAuth & Permissions 탭 클릭
9. Scopes 추가
10. OAuth Tokens 발급 받기 (Install to Workspace / Reinstall to Workspace)
11. 슬랙 - 챗봇을 추가하고자 하는 채널에 챗봇 추가
12. 코드 작성 (main.js)
const { App } = require("@slack/bolt"); const dotenv = require("dotenv"); dotenv.config(); const app = new App({ token: process.env.BOT_TOKEN, signingSecret: process.env.SIGNING_SECRET, socketMode: true, appToken: process.env.APP_TOKEN, }); const menus = ["가람 부대찌개","강강술래","고갯마루"]; app.message(".랜덤메뉴", ({ _, say }) => { const menuIndex = Math.floor(Math.random() * menus.length); say(menus[menuIndex]); }); (async () => { await app.start(3000); console.log("⚡️ Bolt app is running!"); })();
token: OAuth & Permissions - Bot User OAuth Token
signingSecret: Basic Information - App Credentials - Signing Secret
appToken: Basic Information - App-Level Tokens
해당 코드를 작성시 슬랙에서 .랜덤메뉴를 타이핑하면 menus의 랜덤한 메뉴가 채널에 전송이 된다.
배포
모두의 플랫폼팀, 클라우드타입
클라우드타입은 클라우드 기반 애플리케이션을 빠르게 개발하고 배포할 수 있는 클라우드 애플리케이션 플랫폼입니다.
cloudtype.io
무료 배포할만한 곳을 찾다가 가볍게 배포할 수 있는 곳을 찾아서 이곳에서 배포를 했다.
깃헙 저장소를 기반으로 바로 배포가 가능하다.
실행 커맨드만 npm start가 아닌 node main.js로 해주면 된다.
'잡동사니' 카테고리의 다른 글
MacOS MongoDB 설치 및 실행 (0) 2021.12.21 Ubuntu에 react 설치하기 (0) 2021.07.13 GitLab Template 만들기 (0) 2021.04.11 GitLab에서 GitHub로 Repository 옮기기 (0) 2021.04.11 VS Code에서 Snippet 사용법 (0) 2021.04.04