Dialogflow 행아웃 통합

Dialogflow 행아웃 통합으로 일대일 채팅 및 채팅방에 포함할 수 있는 봇을 만들 수 있습니다. 자세한 내용은 Hangouts Chat API 문서를 참조하세요.

설정

행아웃 채팅 통합을 설치하거나 사용 설정하는 방법은 다음과 같습니다.

  1. 왼쪽 메뉴에서 통합을 클릭합니다.
  2. 행아웃 채팅을 클릭합니다.
  3. 액세스 옵션을 선택합니다.
  4. [선택사항] 에이전트 환경을 선택합니다.
  5. 시작을 클릭합니다.

봇 구성

행아웃 채팅 봇을 만들고 나면 통합 팝업에서 봇 세부정보 구성 버튼을 클릭하여 세부정보를 변경할 수 있습니다. 행아웃 채팅 API에 대한 Google Cloud Console 페이지로 이동됩니다.

Hangouts Chat API 봇 게시 가이드의 안내에 따라 봇을 구성 및 게시합니다.

Cloud Console을 사용하여 사용 설정 및 구성

다음 단계에 따라 Cloud Console에서도 행아웃 통합을 사용 설정할 수 있습니다.

  1. Cloud Console의 왼쪽 상단에 있는 메뉴 아이콘 을 클릭합니다.
  2. API 및 서비스, 대시보드를 차례로 클릭합니다.
  3. API 및 서비스 사용 설정을 클릭합니다.
  4. '행아웃 채팅'을 검색합니다.
  5. Hangouts Chat API 타일을 클릭합니다.
  6. 사용 설정을 클릭합니다.
  7. 왼쪽 사이드바 메뉴에서 구성을 클릭합니다.
  8. Hangouts Chat API 봇 게시 가이드의 안내에 따라 봇을 구성 및 게시합니다.

테스트

봇을 테스트하기 전에 봇을 시작했는지 확인하세요. 설정 섹션을 참조하세요.

봇을 테스트하는 방법은 다음과 같습니다.

  1. 행아웃 채팅으로 이동합니다.
  2. 검색 필드를 클릭합니다.
  3. 봇 찾기를 선택합니다.
  4. 봇 이름을 선택합니다.
  5. 메시지를 클릭합니다.

문제해결

오류 해결책
관리자가 채팅 메시지에서 봇과 채팅하는 것을 사용 중지했습니다. Google Workspace 관리자에게 사용자가 봇을 설치하도록 허용할 것을 요청합니다.

리치 응답 메시지

통합하면 일부 서식 있는 응답 메시지행아웃 채팅 메시지 형식으로 변환합니다.

텍스트 응답

텍스트 응답SimpleText로 행아웃에 전송됩니다. 이 서식을 사용하면 텍스트를 특정(마크다운 라이트) 기호로 래핑하여 텍스트를 굵게 또는 기울임꼴로 만들 수 있습니다.

SimpleText 응답은 Dialogflow 콘솔에서 기본 텍스트 응답과 시각적으로 유사합니다. 하지만 원시 API 응답은 약간 다르게 보입니다. 또한 플랫폼 구성을 GOOGLE_HANGOUTS로 설정합니다. 이 구성은 여러 통합을 위한 에이전트를 빌드할 때 유용할 수 있습니다.

"fulfillmentMessages": [
{
   "text": {
   "text": [
        "This is a test."
   ]
},
  "platform": "GOOGLE_HANGOUTS"
},

이미지

이미지 응답행아웃 이미지 위젯으로 행아웃에 전송됩니다.

카드

카드 응답은 행아웃에 행아웃 카드로 전송됩니다.

커스텀 페이로드

다른 유형의 행아웃 메시지를 보내려면 커스텀 페이로드를 사용할 수 있습니다.

행아웃 커스텀 페이로드를 사용하면 고급 카드를 만들 수 있습니다. 카드 하나에 섹션이 한 개 이상 있을 수 있습니다. 각 섹션에는 헤더가 있을 수 있습니다. 행아웃 메시지 형식 카드 참조 가이드를 살펴보고 이것으로 만들 수 있는 몇 가지 조합을 알아볼 수 있습니다. 하지만 커스텀 페이로드를 사용하면 JSON 형식을 제공해야 합니다.

다음은 작업 예시입니다.

{
  "hangouts": {
    "header": {
      "title": "Pizza Bot Customer Support",
      "subtitle": "pizzabot@example.com",
      "imageUrl": "https://goo.gl/aeDtrS"
    },
    "sections": [{
      "widgets": [{
        "keyValue": {
          "icon": "TRAIN",
          "topLabel": "Order No.",
          "content": "12345"
        }
      },
      {
        "keyValue": {
          "topLabel": "Status",
          "content": "In Delivery"
        }
      }]
    },
    {
      "header": "Location",
      "widgets": [{
        "image": {
          "imageUrl": "https://dummyimage.com/600x400/000/fff"
        }
      }]
    },
    {
      "header": "Buttons - i could leave the header out",
      "widgets": [{
        "buttons": [{
          "textButton": {
            "text": "OPEN ORDER",
            "onClick": {
              "openLink": {
                "url": "https://example.com/orders/..."
              }
            }
          }
        }]
      }]
    }]
  }
}