Discord의 내장된 웹후크 기능은 자동화된 메시지와 데이터 업데이트를 서버의 채팅 채널로 쉽게 받아낼 수 있게 해줍니다.
이것을 예전에 은행에서 돈을 전송할 때 즐겨쓰던 멋진 기압식 튜브 같은 것이라고 생각하세요. 하지만 돈을 영영 못 보게 되는 그때와는 달리, 실제로는 다른 플랫폼에서 Discord로 메시지를 보내게 됩니다.
서버에서 웹후크 엔드포인트를 생성하면 웹후크 URL가 생성되는데, 이 URL을 다른 여러 서비스에 입력하여 두 서비스를 연결할 수 있습니다.
모두가 공압 튜브를 정말 좋아하지만(100% 사실입니다), 웹후크를 사용하려면 다른 웹사이트가 필요하다는 점을 유의해야 합니다(물론 프로그래밍에 능숙한 사용자라면 직접 자신만의 튜브를 만들 수도 있지만요).
일부 서비스와 웹사이트는 웹후크를 통합하고 메시지를 외부로 전송하기 위해 구축되었지만, 일부 서비스와 웹사이트는 그렇지 않습니다. 여기에 유용한 참조 리스트가 있습니다.
| 웹후크를 사용할 수 있는 경우: | 웹후크를 실제로 사용할 수 없는 경우: |
| GitHub | Twitch / YouTube |
| CircleCI | Nelly The Hamster |
| DataDog |
웹후크 만들기
이를 염두에 두고, Discord 서버를 GitHub 커밋이나 풀 리퀘스트로 업데이트하거나, DataDog 등의 분석 데이터를 추적하는 등 이와 유사한 작업을 하고 싶다면, 다음과 같은 방법이 있습니다!
- 서버 설정을 열고 연동 탭으로 이동합니다:
- "웹후크 만들기" 버튼을 클릭하여 새로운 웹후크를 만들어 보세요!
여기서 몇 가지 선택지가 있습니다. 다음과 같은 작업을 할 수 있습니다:
- 아바타 수정하기: 왼쪽 상단의 이름 옆에 있는 아바타를 클릭합니다.
- 웹후크에 게시할 채널을 선택합니다: 드롭다운 메뉴에서 원하는 채팅 채널을 선택합니다.
- 웹후크 이름: 여러 서비스에 사용되는 여러 웹후크를 구분할 수 있습니다.
이제 나만의 유용한 URL / 공압 튜브 (슝-)을 더 많은 웹사이트에 연결하여 메시지를 받을 수 있습니다.
간단한 예시: GitHub 웹후크 통합
웹후크는 단독으로 작동하지 않으며 의도한 대로 작동하려면 다른 웹사이트에 링크해야 하므로, 나는 GitHub 매니아와 코드 푸셔(code-pusher) 여러분을 위해 샘플 통합을 포함하는 것이 가장 좋겠다고 생각했습니다.
나는 Discord의 웹후크를 사용하여 나의 저장소에 있는 코드 병합 또는 푸시 업데이트를 나의 서버에 있는 채팅 채널로 보내기 위해 사용할 수 있습니다.
1. 받으려는 서버/채널의 웹후크 URL을 가져오세요.
나의 서버에서 #general-chat이라는 이름의 채팅 채널을 만들었으며, 내 저장소 업데이트가 여기에 메시지로 포스트 되길 원합니다!
따라서 웹후크 URL 복사하기 버튼을 눌러 이 채널의 웹후크 URL을 얻을 수 있습니다.
2. 웹후크 URL을 GitHub 저장소 설정에 추가합니다.
Discord 서버에서 업데이트를 받고 싶은 저장소를 선택해 주세요. 저장소를 선택했으면 설정 > 웹후크 메뉴로 이동합니다.
그런 다음 "웹후크 추가" 버튼을 클릭하고, Discord에서 생성된 URL을 "페이로드 URL" 입력란에 입력합니다.
웹후크가 메시지를 제대로 표시하려면 웹후크 끝에 '/github'를 추가하는 것이 정말 정말 정말 정말 정말 중요합니다. 네, 정말 정말 정말 정말 정말 중요합니다.
URL 외에, GitHub 전용 옵션도 몇 가지 있습니다. 콘텐츠 유형은 application/json을 선택해 주세요. Discord의 웹후크 형식은 JSON을 매우 좋아합니다. 다음 섹션에서 어떤 종류의 이벤트가 웹후크 메시지를 트리거하는지 사용자 지정하도록 선택할 수 있습니다.
이벤트 알림 사용자 지정 Option 아래의 마지막 "웹후크 추가" 버튼을 클릭하면 모든 준비가 완료됩니다! 저장소에서 업데이트를 푸시하면(리드미 파일 수정 포함) 채팅 채널에 표시됩니다.
이제 모든 준비가 끝났습니다! GitHub는 웹후크를 통해 메시지를 포스트할 수 있는 통합 기능의 한 예입니다. JSON 애플리케이션 구축이나 HTTP 포스트 요청에 대해 숙련되어 있고 자신만의 웹후크를 사용자 지정하고 싶다면 개발자 문서에서 더 많은 정보를 확인할 수 있습니다.