다양한 활동/인턴

[인턴] Slack Bot 만들기 (2) : 로컬 서버 외부 접근 환경 구성

토끼개발자 조르디 2023. 7. 21. 11:30

이번 편에서는 저번 편에서 만든 슬랙 앱과

실제로 대화를 하면서 테스트하기 위한 중요한 작업을 해보려고 한다.

 

슬랙에서는 슬랙봇을 만드는데 도움을 주는

slack python bolt를 제공한다.

 

처음 봇을 제작하거나 시간이 없는 분들은 이 프레임워크를 

사용하는 것이 도움이 될 것이다.

 

그러면 이제 기본적인 셋팅 : slack bolt 코드를 실행할 수 있는 외부에서 접근할 수 있는 로컬 서버를 생성

을 진행하고 간단한 slack bolt 제공 코드를 통해 app 이 실행되는 것을 확인해보자.


Setup

아래 페이지를 보면서 진행.

 

https://github.com/slackapi/bolt-python

 

GitHub - slackapi/bolt-python: A framework to build Slack apps using Python

A framework to build Slack apps using Python. Contribute to slackapi/bolt-python development by creating an account on GitHub.

github.com

 

1) 파이썬 가상환경을 구성해주자.

 

LINUX(bash) 환경

# Python 3.6+ required
python -m venv .venv
source .venv/bin/activate

pip install -U pip
pip install slack_bolt

 

WINDOWS(powershell) 환경

# Python 3.6+ required
python -m venv .venv
.\.venv\Scripts\Activate.ps1

pip install -U pip
pip install slack_bolt

 

2) pip 업그레이드 

 

pip install -U pip

 

아놔 오류가 발생 .... ㅠ

이는 모두 오류컬렉터 조르디의 글에서 만나볼 수 있다.... ㅠㅎ

 

아놔 오류 사라짐 이제는 오류한테 농락당하는 중

 

https://bunnydev-jordy.tistory.com/entry/slack-bot-pip-install-%EC%98%A4%EB%A5%98-%EB%B0%9C%EC%83%9D-windowspowershell-%ED%99%98%EA%B2%BD

 

[python] powershell 권한 오류 : vscode 관리자로 열기

슬랙봇 제작 글을 쓰면서 환경 SETUP을 하다가 급하게 달려왔다... 환경 설정하다가 만난 오류. 흠 대충 봐도 권한 오류임을 알 수 있다. ERROR: Could not install packages due to an EnvironmentError: [WinError 5] 액

bunnydev-jordy.tistory.com

 

 

 

3) slack bolt 설치

 

pip install slack_bolt

 

4) slack bolt 코드 작성

 

위에서 첨부한 슬랙 깃허브 코드 참고해서 실행할 파이썬 파일 만들기.

app 부분 코드 작성 시에 참고.

app = App(
    token=os.environ.get("SLACK_BOT_TOKEN"),
    signing_secret=os.environ.get("SLACK_SIGNING_SECRET")
)

SLACK_BOT_TOKEN

: OAuth & Permissions 카테고리의 OAuth Tokens for Your Workspace 에 있음.

 

SLACK_SIGNING_SECRET

: Basic Information 카테고리의 App Credentials 에 있음.

 

 

5) 환경변수 설정

$env:SLACK_BOT_TOKEN = ""
$env:SLACK_APP_TOKEN = ""

잘 설정이 되었는지 확인

Get-ChildItem Env:

 

6) app 파일 실행

 

python app.py # 자기가 만든 실행 파일 이름 작성

 

 

7) 결과 확인

 

Bolt app is running! (development server)