Python/Slack API

[Slack Bolt] 파이썬 Slack App 슬래시(/) 커맨드 생성 방법

jimmy_AI 2024. 10. 3. 13:50
반응형

안녕하세요. 이번 글에서는 Python으로 슬랙 앱의 기능을 구현할 때,

/로 시작하는 명령어인 Slash Commands 생성 방법에 대해서

간략하게 정리해보도록 하겠습니다.

 

앱의 생성 및 기본 코드 골격이 갖춰진 상황을 가정하고 작성하도록 하겠습니다.

이에 대한 상세 방법이 필요하시다면 아래 링크의 글을 참고해주세요.

 

[Slack Bolt] 파이썬 Slack App 댓글 기능 구현 예제

안녕하세요. 이번 글에서는 Python slack bolt 모듈을 활용하여 특정 텍스트가 인식되면 스레드에 댓글을 달게 만드는 아주 간단한 슬랙앱 예제를 다루어보도록 하겠습니다. 이번에 다룰 슬랙앱의

jimmy-ai.tistory.com

 

 

1. 슬랙 앱 Config 설정

먼저, 슬랙 앱의 환경 설정에서 Slash Commands 메뉴 > Create New Command

버튼을 클릭하여 슬래시 커맨드 생성 설정 화면으로 들어갑니다.

 

이후, command 칸에 사용할 원하는 명령어를 /로 시작하도록 적어주고,

사용 방법을 안내하기 위한 설명을 short description 칸에 같이 적어줍니다.

(usage hint 칸은 비워두셔도 무방합니다.)

 

이후, 저장을 완료하시고 앱 재설치를 진행하면 커맨드 사용 준비는 완료됩니다.

 

 

2. 파이썬 코드 작성

이제 커맨드 사용 후 실행될 슬랙 앱의 기능을 설정하기 위한 코드를 작성해야 합니다.

예시 코드의 스니펫은 다음과 같습니다.

@app.command("/my_command") # 위에서 설정한 앱의 명령어를 그래도 적기
def use_my_command(ack, respond, command):
    ack()
    
    user_text = command["text"] # 유저가 / 이후에 입력한 텍스트 가져오기
    
    respond(f"입력한 텍스트: {user_text}") # 채널에 메시지 출력 예시

 

해당 코드는 /my_command 안녕 으로 유저가 커맨드 입력 시, 

입력한 텍스트: 안녕 으로 채널에 커맨드 사용 메시지가 출력되는 

간단한 커맨드 구현의 예시입니다.

 

@app.command("/my_command") 부분에 원하는 커맨드 명령어를 적어주고,

이후 함수 내에서 원하는 작동 기능에 대한 코드를 자유롭게 작성해주시면 됩니다.

 

유저가 커맨드에 사용한 텍스트는 command["text"]로 추출해주시면 됩니다.

 

이 글이 슬랙 앱 기능 구현 과정에 도움이 되셨기를 기원하겠습니다. 감사합니다.