전체 멤버에게 Team Incoming Webhook 발송하기

전체 멤버에게 Team Incoming Webhook 발송하기

1. Team Incoming Webhook 개요

외부 데이터를 JANDI에서 수신하고 싶을 때 사용되는 기능이 Incoming Webhook 입니다. 하지만 외부 데이터를 전송하고 싶은 경우 개인별로 다음과 같은 절차를 거쳐야 합니다.

 

개인별로 Incoming Webhook을 생성하고, 생성된 URL을 담당자에게 전달합니다. 담당자는 URL과 개인 정보를 매칭하여 저장하고, 입·퇴사 또는 인사 이동이 있을 경우 기존에 이 멤버들이 만든 Incoming Webhook의 각 등록 및 삭제를 진행합니다.

 

위의 예시처럼 개인별로 Incoming Webhook을 생성시 팀 차원에서 관리가 어렵습니다. 이를 해결하기 위해 Team Incoming Webhook이 개발됐습니다.

 

관리자 혹은 소유자가 Team Incoming Webhook 번만 생성해 생성된 URL 메시지와 함께 개인 식별자 (잔디의 가입된 계정 e-mail) 전송하면 개인별 메시지 수신이 가능해집니다.

 

이를 통해 잔디와 외부 서버간 자유로운 통신과 개인별 메시지 전송이 가능해지면서 업무 환경에 따라 단체 메시지를 보내는 등 폭 넓은 활용이 가능합니다.

mceclip0.png

mceclip2.png

2. Team Incoming Webhook Data Format

 

Team Incoming Webhook은 RESTFul API로서 아래에 명시한 형식으로 데이터를 전송해야만 합니다.

 

{  
   "email":"jandi@tosslab.com",
   "body":"[김잔디 님의 휴가 신청서 결재 완료]",
   "connectColor":"#FAC11B",
   "connectInfo":[  
      {  
         "title":"2017년 10월 24일 휴가 신청이 결재 되었습니다.",
         "description":"2017.10.24 ~ 2017.10.26 연차 신청",
         "imageUrl":"http://www.jandi.com/image.jpg"
      },
      {  
         "title":"2017년 10월 24일 휴가 신청이 결재 되었습니다.",
         "description":"2017.10.24 ~ 2017.10.26 연차 신청 "
      }
   ]
}

 

 

<JSON ​Object ​Field> 

Field

Data ​Type

 Description

email

String

 JANDI에 설정된 개인 이메일

body

String

​ 최상단에 노출할 메시지

connectColor

String

​ ​메시지 하단 Bar의 색상

connectInfo

Object  [  ​]

​ ​메시지 하단 말풍선에 노출될 메시지 들의 배열

 

<connectInfo ​Object ​Field> 

Field

Data ​Type

 Description

title

String

​ ​메시지 하단 말풍선 내 최상단 메시지

description

String

​ ​메시지 하단 말풍선 내 중간 메시지

imageUrl

String

​ ​메시지 하단 말풍선 내 노출할 Link URL

 

3. Team Incoming Webhook Request

 

Webhook은 ​HTTP​ ​POST​ ​Method​ 만을 지원하며,​

 

request에는 반드시 Accept와 Content-Type을 다음과 같이 지정해줘야 합니다.

Accept: application/vnd.tosslab.jandi-v2+json

Content-Type: application/json

 

또한 2.​​Team​ ​Incoming​ ​Webhook​ ​Data​ ​Format에 명시된 Field 외에 다른 Field가 존재할 경우 무시하거나 에러를 반환하니 참고해주세요.

 

email의 유효성은 판단하지 않습니다.

 

curl \

-X POST \

https://wh.jandi.com/connect-api/webhook/279/7dbe00d0784c8cf1758f04d824510703 \

-H 'Accept:application/vnd.tosslab.jandi-v2+json' \

-H 'Content-Type:application/json' \

--data-binary '{
   "email":"jandi@tosslab.com",
   "body":"[김잔디 님의 휴가 신청서 결재 완료]",
   "connectColor":"#FAC11B",
   "connectInfo":[  
      {  
         "title":"2017년 10월 24일 휴가 신청이 결재 되었습니다.",
         "description":"2017.10.24 ~ 2017.10.26 연차 신청",
         "imageUrl":"http://www.jandi.com/image.jpg"
      },
      {  
         "title":"2017년 10월 24일 휴가 신청이 결재 되었습니다.",
         "description":"2017.10.24 ~ 2017.10.26 연차 신청 "
      }
   ]
}'

 

Request가 정상적으로 수신될 경우 JANDI에 노출되는 메시지는 아래 이미지의 예시들을 참고해주세요.

 

<휴가 신청서 결재 완료>

______Team_Incoming_Webhook_______________________2019-02-15_14-41-19.png

 

<연차 현황 확인 메시지>

mceclip1.png

위와 같이 개인 ‘채팅 JANDI’에 메시지를 보내는 'Team Incoming Webhook'을 사용하고 싶으시다면 매뉴얼대로 내부적으로 연동 작업이 끝내고

 

Team Incoming Webhook에 적용할 프로필 이미지와 이름을 저희 팀에 알려주세요.

 

URL 적용에 필요한 Team ID, WebhookToken 발급을 저희 토스랩에서 해드립니다.

https://wh.jandi.com/connect-api/webhook/{Team ID}/{Token}\ 식으로 넣어주시면 됩니다. 

 

support@tosslab.com 또는 잔디 어플 내 [1:1 문의하기]로 연락해주시면 됩니다. 

해당 기능은 유료 팀에만 적용 가능합니다. 

 

< 더 자세한 Team Incoming Webhook 매뉴얼 보기 >

 

댓글

Zendesk 제공