워크플로 구축: Slack 외부에서 시작하는 워크플로 만들기

웹후크를 이용하면 Slack 외부에서 워크플로를 시작할 수 있으며 사용자 지정 변수를 사용해 외부 서비스의 정보를 포함하는 메시지를 Slack에 포스트할 수 있습니다.

시작하는 데 필요한 사항

  • 명령줄 또는 다른 도구를 사용하여 HTTP 요청을 전송하는 방법 숙지
  • 수신 웹후크에 대한 이해 지침에 대해서는 Slack API에 대한 문서를 읽거나 소속 팀의 개발자에게 도움을 요청하세요.

참고: 소유자와 관리자는 웹후크로 워크플로를 생성할 수 있는 사용자를 제한할 수 있습니다. 워크플로 빌더에 이 옵션이 표시되지 않으면 소유자나 관리자에게 문의하여 도움을 받으세요.


워크플로 설정

웹후크 워크플로 기본 사항

웹후크로 워크플로를 시작하기로 선택한 경우 타사 앱이나 서비스에서 사용자의 URL로 웹 요청을 전송하면 워크플로를 시작하도록 웹후크를 구성하게 됩니다. 예를 들어 웹사이트에 문제가 있을 경우 엔지니어링 팀이 조사를 할 수 있도록 특정 채널에 메시지를 포스트하는 워크플로를 생성할 수 있습니다.

웹후크 구성

웹후크를 생성하고 구성하는 데 사용되는 외부 서비스는 특정 이벤트 발생 시 Slack에 HTTP POST 요청을 할 수 있는 기능을 제공해야 합니다. Slack은 메시지를 게시한 후에 워크플로에 대해 고유한 요청 URL을 생성하고, 사용자는 HTTP 요청 본문에서 Slack에 정보를 전달하도록 웹후크를 구성할 수 있습니다. 변수를 생성하여 워크플로에 추가한 단계에서 웹후크가 Slack에 보낸 모든 데이터를 참조할 수 있습니다.

팁: 웹후크를 구성하는 방법을 잘 모르겠다면 팀의 개발자에게 도움을 요청하거나 Postman이나 Zapier 등 사용 중인 서비스에서 제공하는 지원 문서를 참조하세요.

사용자 지정 변수 생성

최대 20개의 변수를 추가하여 다른 서비스에서 Slack으로 데이터를 전달할 수 있으며, 워크플로에 추가한 단계에 Slack 관련 정보(예: 표시 이름 또는 이메일 주소)를 포함할 수 있습니다.

사용자 지정 변수를 만들려면 채널 ID, 사용자 ID, 사용자 이메일 또는 텍스트 등의 데이터 유형 중 하나를 선택해 워크플로 빌더에서 웹후크 구성에 키 값 쌍을 추가할 수 있습니다. 변수를 추가하면 HTTP 본문의 미리보기가 표시됩니다. 본문의 값이 웹후크로 Slack에 연결 중인 서비스의 JSON 출력과 일치해야 합니다. 현재는 워크플로 변수에서 중첩된 JSON 구조를 사용할 수 없습니다.

아래 예에서 user(사용자), severity(심각도), incident_description(장애_설명)이 웹후크 요청과 함께 전송되지 않으면 워크플로가 실패합니다.

웹후크 URL 및 사용자 지정 변수가 표시된 워크플로 빌더의 웹후크 구성


웹 요청 URL 얻기

웹 요청 URL을 복사했다면 이를 웹후크에 추가해 HTTP POST를 올바른 대화에 전송하는지 확인할 수 있습니다. 요청 URL은 모두 https://hooks.slack.com/triggers로 시작하며, 그 뒤에 무작위의 문자열이 옵니다.

  1. 변수 생성을 마쳤다면 완료를 클릭한 다음 계속을 클릭해 고유한 웹 요청 URL을 생성하고 워크플로 빌더로 되돌아옵니다.
  2. 웹후크에서 옆에 있는  연필 아이콘을 클릭합니다. 

요청 URL 링크를 보유한 모든 사용자는 워크플로를 시작할 수 있으므로 요청 URL을 안전하게 유지해야 합니다.

참고: 웹후크 워크플로는 초당 하나의 요청으로 제한됩니다. Slack API의 속도 제한에 관해 자세히 알아보세요.


단계를 추가해 워크플로 완성

단계 추가

웹후크를 구성하고 사용할 변수를 생성했다면 워크플로에 단계를 추가할 준비가 된 것입니다.  

  1. 워크플로 빌더에서 워크플로를 엽니다. 
  2. 단계 추가를 클릭합니다. 
  3. 추가하려는 단계 유형을 선택합니다(예: 채널에 메시지 보내기). 그런 다음 안내를 따라 단계를 사용자 지정합니다.
  4. 변수 삽입을 클릭하고 변수를 선택해 워크플로가 채널로 보낼 메시지에 웹후크의 데이터를 포함시킵니다. 


워크플로 테스트

워크플로를 게시하기 전에 테스트 채널에 포스트하기 위한 첫 단계를 설정할 수 있습니다.

  1. 워크플로의 요청 URL로 포스트를 보내고 단계를 진행하여 모든 사항이 정상적으로 작동하는지 확인합니다.
  2. 워크플로 빌더로 돌아가 원하는 채널에 게시할 워크플로의 첫 단계를 업데이트한 다음 변경 내용을 게시합니다.
이 기능을 사용할 수 있는 사람은 누구인가요?