Slack

Dialogflow의 Slack 통합을 사용하면 손쉽게 Slack 앱과 봇을 만들고 자연어를 이해하도록 학습시킬 수 있습니다.

Slack 설정

에이전트에 Slack 통합을 설정하려면 다음이 필요합니다.

Slack 앱 만들기

  1. Slack Developer Console로 이동합니다.
  2. 앱 이름을 입력합니다.
  3. 앱과 연결할 팀을 선택합니다.
  4. Create App(앱 만들기) 버튼을 클릭합니다.

봇 사용자 추가

  1. 왼쪽 메뉴에서 Bot Users(봇 사용자)를 클릭합니다.
  2. 봇 사용자 추가 버튼을 클릭합니다.
  3. Slack 봇 이름을 입력합니다(사용자가 봇을 추가할 때 이 이름이 표시됨).
  4. Always Show My Bot as Online(내 봇을 항상 온라인으로 표시)을 사용 설정합니다.
  5. Add Bot User(봇 사용자 추가) 버튼을 클릭합니다.

Dialogflow에서 통합 사용 설정

Slack Developer Console에서 왼쪽 메뉴의 기본 정보를 클릭하고 아래로 스크롤하여 앱 사용자 인증 정보 섹션으로 이동합니다. 클라이언트 ID, 클라이언트 보안 비밀번호, 확인 토큰을 기록합니다.

  1. Dialogflow에서 왼쪽 메뉴의 통합으로 이동합니다.
  2. Slack 타일을 클릭합니다.
  3. 다음 필드에 관련 값을 입력합니다.
    1. 클라이언트 ID
    2. 클라이언트 보안 비밀번호
    3. 확인 토큰
  4. Start(시작)를 클릭합니다.

Slack 설정 계속하기

Slack과 Dialogflow를 설정했으므로 이제 OAuth, 이벤트 요청 URL(Dialogflow에서 제공), 이벤트 구독을 사용 설정합니다.

OAuth URL 추가

  1. Dialogflow의 Slack 설정 페이지에서 OAuth URL을 복사합니다.
  2. Slack Developer Console로 이동하여 왼쪽 메뉴에서 OAuth 및 권한을 클릭합니다.
  3. Add a new Redirect URL(새 리디렉션 URL 추가) 버튼을 클릭하고 OAuth URL을 붙여넣습니다.
  4. 추가를 클릭합니다.

이벤트 요청 URL 추가

  1. Dialogflow의 Slack 설정 페이지에서 이벤트 요청 URL을 복사합니다.
  2. Slack Developer Console로 이동하여 왼쪽 메뉴의 이벤트 구독을 클릭합니다.
  3. 스위치를 클릭하여 이벤트를 사용 설정하고, 이벤트 구독 URL을 Request URL(요청 URL) 필드에 붙여넣습니다.

    잠시 후 요청 URL 필드 위에 녹색으로 'Verified'가 표시됩니다.
  4. 두 가지 설정 업데이트를 마치면 페이지 맨 아래의 Save Changes(변경사항 저장) 버튼을 클릭합니다.

이벤트 구독 사용 설정

  1. 왼쪽 메뉴에서 Event Subscriptions(이벤트 구독)를 클릭합니다.
  2. 스위치를 클릭하여 옵션을 사용 설정합니다.
  3. Subscribe to Bot Events(봇 이벤트 구독) 아래에서 Add Bot User Event(봇 사용자 이벤트 추가) 버튼을 클릭합니다.

    그러면 텍스트 필드와 이벤트 목록이 나타납니다. 이 필드에 용어를 입력하여 봇이 응답하도록 할 이벤트를 검색할 수 있습니다. 다음은 추가하면 좋은 이벤트 목록입니다.

    이벤트 이름 이벤트 설명
    message.im 메시지가 채팅 메시지 채널에 게시되었습니다.
    message.groups 메시지가 비공개 채널에 게시되었습니다.
    message.channels 메시지가 채널에 게시되었습니다.
    im_created DM이 생성되었습니다.

  4. 이벤트를 추가했으면 화면 맨 아래의 Save Changes(변경사항 저장) 버튼을 클릭합니다.

팀에 Slack 봇 추가

  1. Slack Developer Console에서 왼쪽 메뉴의 Manage Distribution(배포 관리)을 클릭합니다.
  2. Share Your App with Your Team(팀과 앱 공유) 섹션에서 Add to Slack(Slack에 추가) 버튼을 클릭합니다.
  3. 다음 페이지에서 Authorize(승인) 버튼을 클릭하여 에이전트를 추가합니다.

테스트

공개 Slack 봇을 만들지 않고도 에이전트를 테스트할 수 있습니다. 에이전트의 통합 페이지로 가서 Slack 타일의 스위치를 클릭합니다. 팝업 창에서 Slack에서 테스트 버튼을 클릭합니다.

Slack 로그인 메시지가 표시됩니다. 로그인하면 인스턴스로 이동하여 @dialogflow-bot이라는 봇 사용자를 찾습니다. 에이전트에 채팅 메시지를 보내 테스트하거나 인스턴스의 채널에 에이전트를 추가할 수 있습니다.

이벤트

이 통합으로 다음 이벤트가 호출됩니다.

이벤트 설명
SLACK_WELCOME 사용자가 Slack 봇과 대화를 시작할 때 트리거됩니다.

서식 있는 응답 메시지

다음 리치 응답 메시지가 지원됩니다.

이미지 응답

지원되는 형식 및 크기:

  • gif
  • jpeg
  • png
  • bmp

카드 응답

Slack의 카드에는 필수 필드가 없으며 모든 요소 조합을 사용할 수 있습니다.

URL 및 텍스트 포스트백이 있는 버튼이 지원됩니다. URL이 있는 버튼은 하이퍼링크로 표시됩니다.

빠른 답장 응답

빠른 답장은 원클릭 Slack 통합에서 지원되며 Slack 대화형 버튼의 텍스트 버전에 해당합니다.

커스텀 페이로드 응답

원클릭 Slack 통합의 서식 있는 텍스트

다음 예시와 같이 Slack 봇은 서식 있는 텍스트를 전송할 수 있습니다.

{
  "slack": {
    "text": "This is an example of *bold*, _italic_, and `code`."
  }
}