승인된 뷰 만들기 및 관리

승인된 뷰 및 승인된 뷰 세트에서 다음 관리 작업을 수행할 수 있습니다.

필수 권한 및 역할

승인된 뷰 세트와 승인된 뷰를 만들고 관리하려면 다음 IAM 권한이 필요합니다.

승인된 뷰 세트:

권한 설명
contactcenterinsights.authorizedViewSet.create 승인된 뷰 세트를 만듭니다.
contactcenterinsights.authorizedViewSet.get 승인된 뷰 세트에 대한 세부정보를 가져옵니다.
contactcenterinsights.authorizedViewSet.update 기존 승인된 뷰 세트를 업데이트합니다.
contactcenterinsights.authorizedViewSet.delete 승인된 뷰 세트를 삭제합니다.
contactcenterinsights.authorizedViewSet.list 프로젝트에서 승인된 뷰 세트를 나열합니다.

승인된 뷰:

권한 설명
contactcenterinsights.authorizedView.create 승인된 뷰를 만듭니다.
contactcenterinsights.authorizedView.get 승인된 뷰에 대한 세부정보를 가져옵니다.
contactcenterinsights.authorizedView.update 기존 승인된 뷰를 업데이트합니다.
contactcenterinsights.authorizedView.delete 승인된 뷰를 삭제합니다.

승인된 뷰에 대한 액세스 권한을 부여하려면 다음 권한이 필요합니다.

권한 설명
contactcenterinsights.authorizedView.setIamPolicy 승인된 뷰에 IAM 정책을 설정합니다.
contactcenterinsights.authorizedView.getIamPolicy 승인된 뷰의 IAM 정책을 가져옵니다.

사전 정의된 역할

사전 정의된 다음 IAM 역할은 필요한 권한을 제공합니다.

역할 설명
roles/contactcenterinsights.editor 모든 Customer Experience Insights 리소스에 대한 읽기 및 쓰기 액세스 권한을 제공합니다.
roles/contactcenterinsights.admin 모든 Customer Experience Insights 리소스에 대한 읽기 및 쓰기 액세스 권한을 제공합니다.

승인된 뷰 세트

승인된 뷰 세트는 여러 승인된 뷰에 권한을 부여하는 작업을 그룹화하고 간소화합니다.

승인된 뷰 세트 만들기

REST

승인된 뷰 세트를 만들려면 contactcenterinsights.authorizedViewSet.create 권한이 필요합니다.

요청 데이터를 사용하기 전에 다음을 바꿉니다.

  • PROJECT_ID: Google Cloud 프로젝트 ID입니다.
  • LOCATION: 고객 경험 통계 데이터의 위치입니다.
  • AUTHORIZED_VIEW_SET_ID: 만들 승인된 보기 세트의 선택적 사용자 정의 식별자입니다. 이 값은 1~63자(영문 기준)여야 하고 [a-z0-9]로 시작하고 끝나야 하며 문자 사이에 대시(-)를 포함할 수 있습니다.
  • DISPLAY_NAME: 승인된 뷰 세트의 설명 이름입니다.

HTTP 메서드 및 URL:

POST https://contactcenterinsights.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/authorizedViewSets?authorized_view_set_id=AUTHORIZED_VIEW_SET_ID

JSON 요청 본문:

{
  "displayName": "DISPLAY_NAME"
}

요청을 보내려면 다음 옵션 중 하나를 펼칩니다.

다음과 비슷한 JSON 응답이 표시됩니다.

{
  "name": "projects/PROJECT_ID/locations/LOCATION/authorizedViewSets/AUTHORIZED_VIEW_SET_ID",
  "displayName": "DISPLAY_NAME",
  "createTime": "2022-01-01T00:00:00.000000Z",
  "updateTime": "2022-01-01T00:00:00.000000Z"
}

승인된 뷰 세트 읽기

REST

승인된 뷰 세트를 읽으려면 contactcenterinsights.authorizedViewSet.get 권한이 필요합니다.

요청 데이터를 사용하기 전에 다음을 바꿉니다.

  • PROJECT_ID: Google Cloud 프로젝트 ID입니다.
  • LOCATION: 고객 경험 통계 데이터의 위치입니다.
  • AUTHORIZED_VIEW_SET_ID: 승인된 뷰 세트의 식별자입니다.

HTTP 메서드 및 URL:

GET https://contactcenterinsights.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/authorizedViewSets/AUTHORIZED_VIEW_SET_ID

요청을 보내려면 다음 옵션 중 하나를 펼칩니다.

다음과 비슷한 JSON 응답이 표시됩니다.

{
  "name": "projects/PROJECT_ID/locations/LOCATION/authorizedViewSets/AUTHORIZED_VIEW_SET_ID",
  "displayName": "DISPLAY_NAME",
  "createTime": "2022-01-01T00:00:00.000000Z",
  "updateTime": "2022-01-01T00:00:00.000000Z"
}

승인된 뷰 세트 업데이트

REST

승인된 뷰 세트를 업데이트하려면 contactcenterinsights.authorizedViewSet.update 권한이 필요합니다.

요청 데이터를 사용하기 전에 다음을 바꿉니다.

  • PROJECT_ID: Google Cloud 프로젝트 ID입니다.
  • LOCATION: 고객 경험 통계 데이터의 위치입니다.
  • AUTHORIZED_VIEW_SET_ID: 승인된 뷰 세트의 식별자입니다.
  • DISPLAY_NAME: 승인된 뷰 세트의 설명 이름입니다.
  • UPDATE_MASK: 업데이트할 필드입니다. 이 값은 쉼표로 구분된 필드 목록입니다.
    • display_name

HTTP 메서드 및 URL:

PATCH https://contactcenterinsights.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/authorizedViewSets/AUTHORIZED_VIEW_SET_ID?update_mask=display_name

JSON 요청 본문:

{
  "displayName": "DISPLAY_NAME"
}

요청을 보내려면 다음 옵션 중 하나를 펼칩니다.

다음과 비슷한 JSON 응답이 표시됩니다.

{
  "name": "projects/PROJECT_ID/locations/LOCATION/authorizedViewSets/AUTHORIZED_VIEW_SET_ID",
  "displayName": "DISPLAY_NAME",
  "createTime": "2022-01-01T00:00:00.000000Z",
  "updateTime": "2022-01-01T00:00:00.000000Z"
}

승인된 뷰 세트 삭제

REST

승인된 뷰 세트를 삭제하려면 contactcenterinsights.authorizedViewSet.delete 권한이 필요합니다.

요청 데이터를 사용하기 전에 다음을 바꿉니다.

  • PROJECT_ID: Google Cloud 프로젝트 ID입니다.
  • LOCATION: 고객 경험 통계 데이터의 위치입니다.
  • AUTHORIZED_VIEW_SET_ID: 승인된 뷰 세트의 식별자입니다.

HTTP 메서드 및 URL:

DELETE https://contactcenterinsights.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/authorizedViewSets/AUTHORIZED_VIEW_SET_ID

요청을 보내려면 다음 옵션 중 하나를 펼칩니다.

다음과 비슷한 JSON 응답이 표시됩니다.

{}

승인된 뷰 세트 나열

REST

승인된 뷰 세트를 나열하려면 contactcenterinsights.authorizedViewSet.list 권한이 필요합니다.

요청 데이터를 사용하기 전에 다음을 바꿉니다.

  • PROJECT_ID: Google Cloud 프로젝트 ID입니다.
  • LOCATION: 고객 경험 통계 데이터의 위치입니다.
  • PAGE_SIZE: 응답에서 반환할 승인된 뷰 세트의 최대 개수입니다. 값이 0이면 서비스에서 기본 크기를 선택합니다. 호출에서 요청한 것보다 적은 객체를 반환할 수 있습니다. 응답에 비어 있지 않은 `next_page_token` 이 있으면 사용 가능한 데이터가 더 있음을 나타냅니다.
  • PAGE_TOKEN: 마지막 `ListAuthorizedViewSetsResponse`에 의해 반환된 값입니다. 이 값은 이전 `ListAuthorizedViewSets` 호출의 연속이며 시스템이 데이터의 다음 페이지를 반환해야 함을 나타냅니다.
  • FILTER: 승인된 뷰 세트를 필터링하는 표현식입니다. 예를 들면 다음과 같습니다.
    • create_time > "2022-01-01T00:00:00Z"
    • update_time < "2022-01-02T00:00:00Z"
    • display_name = "My Authorized View Set"
    • display_name =~ "My.*"
    • create_time > "2022-01-01T00:00:00Z" AND display_name = "My Authorized View Set"
    • create_time > "2022-01-01T00:00:00Z" OR display_name = "My Authorized View Set"
  • ORDER_BY: 응답에 나열된 승인된 뷰 세트를 정렬하는 표현식입니다. 예를 들면 다음과 같습니다.
    • create_time
    • create_time desc
    • update_time
    • update_time desc
    • display_name
    • display_name desc

HTTP 메서드 및 URL:

GET https://contactcenterinsights.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/authorizedViewSets?page_size=PAGE_SIZE&page_token=PAGE_TOKEN&filter=FILTER&order_by=ORDER_BY

요청을 보내려면 다음 옵션 중 하나를 펼칩니다.

다음과 비슷한 JSON 응답이 표시됩니다.

{
  "authorizedViewSets": [
    {
      "name": "projects/PROJECT_ID/locations/LOCATION/authorizedViewSets/AUTHORIZED_VIEW_SET_ID",
      "displayName": "My Authorized View Set",
      "createTime": "2022-01-01T00:00:00.000000Z",
      "updateTime": "2022-01-01T00:00:00.000000Z"
    },
    {
      "name": "projects/PROJECT_ID/locations/LOCATION/authorizedViewSets/AUTHORIZED_VIEW_SET_ID_2",
      "displayName": "Another Authorized View Set",
      "createTime": "2022-01-02T00:00:00.000000Z",
      "updateTime": "2022-01-02T00:00:00.000000Z"
    },
  ],
  "nextPageToken": "NEXT_PAGE_TOKEN"
}

승인된 뷰

승인된 뷰는 제한된 수의 대화와 해당 대화에 대한 상담사 또는 관리자의 역할을 정의합니다.

승인된 뷰 만들기

REST

승인된 뷰를 만들려면 contactcenterinsights.authorizedView.create 권한이 필요합니다.

요청 데이터를 사용하기 전에 다음을 바꿉니다.

  • PROJECT_ID: Google Cloud 프로젝트 ID입니다.
  • LOCATION: 고객 경험 통계 데이터의 위치입니다.
  • AUTHORIZED_VIEW_SET_ID: 이 승인된 뷰가 속한 승인된 뷰 세트의 식별자입니다.
  • AUTHORIZED_VIEW_ID: 만들 승인된 뷰의 선택적 사용자 정의 식별자입니다. 이 값은 1~63자(영문 기준)여야 하고 [a-z0-9]로 시작하고 끝나야 하며 문자 사이에 대시(-)를 포함할 수 있습니다.
  • DISPLAY_NAME: 승인된 뷰 세트의 설명 이름입니다.
  • CONVERSATION_FILTER: 데이터에 적용할 필터입니다. `agent_id` 필드를 사용할 수 있습니다.
    • agent_id = "agent_123"
    • agent_id = "agent_123" OR agent_id = "agent_456"
    • quality_metadata.agent_info.agent_id: "agent_456"
    • quality_metadata.agent_info.teams: "team_123"

HTTP 메서드 및 URL:

POST https://contactcenterinsights.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/authorizedViewSets/AUTHORIZED_VIEW_SET_ID/authorizedViews?authorized_view_id=AUTHORIZED_VIEW_ID

JSON 요청 본문:

{
  "displayName": "DISPLAY_NAME",
  "conversation_filter": "CONVERSATION_FILTER"
}

요청을 보내려면 다음 옵션 중 하나를 펼칩니다.

다음과 비슷한 JSON 응답이 표시됩니다.

{
  "name": "projects/PROJECT_ID/locations/LOCATION/authorizedViewSets/AUTHORIZED_VIEW_SET_ID/authorizedViews/AUTHORIZED_VIEW_ID",
  "displayName": "DISPLAY_NAME",
  "conversationFilter": "CONVERSATION_FILTER",
  "createTime": "2022-01-01T00:00:00.000000Z",
  "updateTime": "2022-01-01T00:00:00.000000Z"
}

승인된 뷰 읽기

REST

승인된 뷰를 읽으려면 contactcenterinsights.authorizedView.get 권한이 필요합니다.

요청 데이터를 사용하기 전에 다음을 바꿉니다.

  • PROJECT_ID: Google Cloud 프로젝트 ID입니다.
  • LOCATION: 고객 경험 통계 데이터의 위치입니다.
  • AUTHORIZED_VIEW_SET_ID: 승인된 뷰 세트의 식별자입니다.
  • AUTHORIZED_VIEW_ID: 승인된 뷰의 식별자입니다.

HTTP 메서드 및 URL:

GET https://contactcenterinsights.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/authorizedViewSets/AUTHORIZED_VIEW_SET_ID/authorizedViews/AUTHORIZED_VIEW_ID

요청을 보내려면 다음 옵션 중 하나를 펼칩니다.

다음과 비슷한 JSON 응답이 표시됩니다.

{
  "name": "projects/PROJECT_ID/locations/LOCATION/authorizedViewSets/AUTHORIZED_VIEW_SET_ID/authorizedViews/AUTHORIZED_VIEW_ID",
  "displayName": "DISPLAY_NAME",
  "conversationFilter": "CONVERSATION_FILTER",
  "createTime": "2022-01-01T00:00:00.000000Z",
  "updateTime": "2022-01-01T00:00:00.000000Z"
}

승인된 뷰 업데이트

REST

승인된 뷰를 업데이트하려면 contactcenterinsights.authorizedView.update 권한이 필요합니다.

요청 데이터를 사용하기 전에 다음을 바꿉니다.

  • PROJECT_ID: Google Cloud 프로젝트 ID입니다.
  • LOCATION: 고객 경험 통계 데이터의 위치입니다.
  • AUTHORIZED_VIEW_SET_ID: 이 승인된 뷰가 속한 승인된 뷰 세트의 식별자입니다.
  • AUTHORIZED_VIEW_ID: 업데이트할 승인된 뷰의 식별자입니다.
  • DISPLAY_NAME: 승인된 뷰 세트의 설명 이름입니다.
  • CONVERSATION_FILTER: 데이터에 적용할 필터입니다. `agent_id` 필드를 사용할 수 있습니다.
    • agent_id = "agent_123"
    • agent_id = "agent_123" OR agent_id = "agent_456"
    • quality_metadata.agent_info.agent_id: "agent_456"
    • quality_metadata.agent_info.teams: "team_123"
  • UPDATE_MASK: 업데이트할 필드입니다. 이 값은 쉼표로 구분된 필드 목록입니다.
    • display_name
    • conversation_filter

HTTP 메서드 및 URL:

PATCH https://contactcenterinsights.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/authorizedViewSets/AUTHORIZED_VIEW_SET_ID/authorizedViews/AUTHORIZED_VIEW_ID?update_mask=display_name,conversation_filter

JSON 요청 본문:

{
  "displayName": "DISPLAY_NAME",
  "conversation_filter": "CONVERSATION_FILTER"
}

요청을 보내려면 다음 옵션 중 하나를 펼칩니다.

다음과 비슷한 JSON 응답이 표시됩니다.

{
  "name": "projects/PROJECT_ID/locations/LOCATION/authorizedViewSets/AUTHORIZED_VIEW_SET_ID/authorizedViews/AUTHORIZED_VIEW_ID",
  "displayName": "DISPLAY_NAME",
  "conversationFilter": "CONVERSATION_FILTER",
  "createTime": "2022-01-01T00:00:00.000000Z",
  "updateTime": "2022-01-01T00:00:00.000000Z"
}

승인된 뷰 삭제

REST

승인된 뷰를 삭제하려면 contactcenterinsights.authorizedView.delete 권한이 필요합니다.

요청 데이터를 사용하기 전에 다음을 바꿉니다.

  • PROJECT_ID: Google Cloud 프로젝트 ID입니다.
  • LOCATION: 고객 경험 통계 데이터의 위치입니다.
  • AUTHORIZED_VIEW_SET_ID: 승인된 뷰 세트의 식별자입니다.
  • AUTHORIZED_VIEW_ID: 승인된 뷰의 식별자입니다.

HTTP 메서드 및 URL:

DELETE https://contactcenterinsights.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/authorizedViewSets/AUTHORIZED_VIEW_SET_ID/authorizedViews/AUTHORIZED_VIEW_ID

요청을 보내려면 다음 옵션 중 하나를 펼칩니다.

다음과 비슷한 JSON 응답이 표시됩니다.

{}

승인된 뷰 나열

REST

승인된 뷰 세트를 나열하려면 contactcenterinsights.authorizedViews.list 권한이 필요합니다.

요청 데이터를 사용하기 전에 다음을 바꿉니다.

  • PROJECT_ID: Google Cloud 프로젝트 ID입니다.
  • LOCATION: 고객 경험 통계 데이터의 위치입니다.
  • AUTHORIZED_VIEW_SET_ID: 승인된 뷰 세트의 사용자 정의 식별자입니다.
  • PAGE_SIZE: 응답에서 반환할 최대 조회수입니다. 값이 0이면 서비스에서 기본 크기를 선택합니다. 호출에서 요청한 것보다 적은 객체를 반환할 수 있습니다. 응답에 비어 있지 않은 `next_page_token` 이 있으면 사용 가능한 데이터가 더 있음을 나타냅니다.
  • PAGE_TOKEN: 마지막 `ListAuthorizedViewsResponse`에서 반환된 값입니다. 이 값은 이전 `ListAuthorizedViews` 호출의 연속이며 시스템에서 다음 데이터 페이지를 반환해야 함을 나타냅니다.
  • FILTER: 응답에 나열된 승인된 뷰를 필터링하는 필터 표현식입니다. `authorized_view_id`, `display_name`, `conversation_filter`, `create_time`, `update_time` 필드를 기준으로 필터링할 수 있습니다. 임의의 표현식을 사용할 수 있습니다. 문자열 필드에 정규 표현식을 사용할 수도 있습니다.
    • 예: display_name = "My View"
    • 예시: conversation_filter =~ ".*agent-1.*"
    • 예시: create_time > "2022-01-01T00:00:00Z"
    • 예시: display_name =~ ".*View.*"
    • 예: create_time > "2022-01-01T00:00:00Z" AND create_time <= "2022-01-02T00:00:00Z"
  • ORDER_BY: 응답에 나열된 승인된 뷰를 정렬하는 순서 지정 표현식입니다.
    • 예: create_time
    • 예: update_time desc

HTTP 메서드 및 URL:

GET https://contactcenterinsights.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/authorizedViewSets/AUTHORIZED_VIEW_SET_ID/authorizedViews?page_size=PAGE_SIZE&page_token=PAGE_TOKEN&filter=FILTER&order_by=ORDER_BY

요청을 보내려면 다음 옵션 중 하나를 펼칩니다.

다음과 비슷한 JSON 응답이 표시됩니다.

{
  "authorizedViews": [
    {
      "name": "projects/my-project/locations/us-central1/authorizedViewSets/my-view-set/authorizedViews/my-view-1",
      "displayName": "My First View",
      "conversationFilter": "agent_id = \"agent-1\"",
      "createTime": "2022-01-01T00:00:00.000000Z",
      "updateTime": "2022-01-01T00:00:00.000000Z"
    },
    {
      "name": "projects/my-project/locations/us-central1/authorizedViewSets/my-view-set/authorizedViews/my-view-2",
      "displayName": "My Second View",
      "conversationFilter": "agent_id = \"agent-2\"",
      "createTime": "2022-01-01T00:00:00.000000Z",
      "updateTime": "2022-01-01T00:00:00.000000Z"
    }
  ],
  "nextPageToken": "next-page-token"
}

승인된 뷰에 IAM 정책 설정

REST

승인된 뷰에 IAM 정책을 설정하려면 contactcenterinsights.authorizedView.setIamPolicy 권한이 필요합니다.

요청 데이터를 사용하기 전에 다음을 바꿉니다.

  • PROJECT_ID: Google Cloud 프로젝트 ID입니다.
  • LOCATION: 고객 경험 통계 데이터의 위치입니다.
  • AUTHORIZED_VIEW_SET_ID: 승인된 뷰 세트의 식별자입니다.
  • AUTHORIZED_VIEW_ID: 승인된 뷰의 식별자입니다.
  • PRINCIPAL: 액세스 권한을 부여할 주 구성원 (사용자)입니다.
  • ROLE: 사용자에게 부여할 역할입니다.

HTTP 메서드 및 URL:

POST https://contactcenterinsights.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/authorizedViewSets/AUTHORIZED_VIEW_SET_ID/authorizedViews/AUTHORIZED_VIEW_ID:setIamPolicy

JSON 요청 본문:

{
  "policy": {
    "bindings": [
      {
        "role": "roles/ROLE",
        "members": [
          "PRINCIPAL"
        ]
      }
    ]
  }
}

요청을 보내려면 다음 옵션 중 하나를 펼칩니다.

다음과 비슷한 JSON 응답이 표시됩니다.

{
  "version": 1,
  "etag": "BwW...",
  "bindings": [
    {
      "role": "roles/ROLE",
      "members": [
        "PRINCIPAL"
      ]
    }
  ]
}

승인된 뷰의 IAM 정책 읽기

REST

승인된 뷰의 IAM 정책을 읽으려면 contactcenterinsights.authorizedView.getIamPolicy 권한이 필요합니다.

요청 데이터를 사용하기 전에 다음을 바꿉니다.

  • PROJECT_ID: Google Cloud 프로젝트 ID입니다.
  • LOCATION: 고객 경험 통계 데이터의 위치입니다.
  • AUTHORIZED_VIEW_SET_ID: 승인된 뷰 세트의 식별자입니다.
  • AUTHORIZED_VIEW_ID: 승인된 뷰의 식별자입니다.

HTTP 메서드 및 URL:

GET https://contactcenterinsights.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/authorizedViewSets/AUTHORIZED_VIEW_SET_ID/authorizedViews/AUTHORIZED_VIEW_ID:getIamPolicy

요청을 보내려면 다음 옵션 중 하나를 펼칩니다.

다음과 비슷한 JSON 응답이 표시됩니다.

{
  "version": 1,
  "etag": "BwW...",
  "bindings": [
    {
      "role": "roles/ROLE",
      "members": [
        "PRINCIPAL"
      ]
    }
  ]
}

조직 설정 예시

이 예에서는 간소화된 조직에 승인된 뷰를 설정하는 방법을 보여줍니다. 이 예에서는 REST API를 사용하여 acme-corp라는 가상 프로젝트에서 리소스를 만들고 관리합니다.

Acme의 구조는 다음과 같습니다.

  • Alice: Alice는 프로젝트의 관리자입니다.
    • 밥: 밥은 관리자입니다.
    • 캐럴: 캐럴은 상담사입니다.
    • 데이브: 데이브는 상담사입니다.

각 사용자에게는 이메일 주소와 연결된 주 구성원 식별자가 있습니다.

  • Alice의 값은 user:admin.alice@acme.com입니다.
  • Bob의 값은 user:manager.bob@acme.com입니다.
  • 캐롤의 전화번호는 user:agent.carol@acme.com입니다.
  • Dave의 이메일 주소는 user:agent.dave@acme.com입니다.

각 에이전트에는 대화의 Conversation.agent_id 필드에 해당하는 agent_id가 있습니다.

  • 캐롤의 전화번호는 agent-carol입니다.
  • Dave의 이메일 주소는 agent-dave입니다.

요구사항

각 사용자에게는 다음과 같은 액세스 수준이 필요합니다.

  • 관리자 액세스: 앨리스는 관리자로서 모든 데이터와 리소스에 대한 전체 액세스 권한을 보유합니다.
  • 관리자 액세스: 관리자인 Bob은 각 팀의 대화와 분석을 만들고, 수정하고, 볼 수 있습니다.
  • 상담사 액세스: 상담사인 캐롤과 데이브는 자신이 참여한 대화와 분석만 볼 수 있습니다.

1단계: 프로젝트 액세스 권한 부여

모든 사용자를 프로젝트에 추가하고 roles/browser 권한을 부여합니다. 이 역할을 통해 프로젝트와 리소스를 볼 수 있습니다.

사용자에게 프로젝트 브라우저 권한 부여

다음 코드는 Acme의 각 구성원에게 브라우저 역할을 부여하는 방법을 보여줍니다.

gcloud projects add-iam-policy-binding acme-corp \
    --member="user:admin.alice@acme.com" \
    --role="roles/browser"

gcloud projects add-iam-policy-binding acme-corp \
    --member="user:manager.bob@acme.com" \
    --role="roles/browser"

gcloud projects add-iam-policy-binding acme-corp \
    --member="user:agent.carol@acme.com" \
    --role="roles/browser"

gcloud projects add-iam-policy-binding acme-corp \
    --member="user:agent.dave@acme.com" \
    --role="roles/browser"

자세한 내용은 단일 역할 부여를 참고하세요.

Google 그룹스를 사용하여 프로젝트에 대한 액세스를 관리할 수도 있습니다. 개별 사용자에게 권한을 부여하는 대신 그룹에 roles/browser을 부여할 수 있습니다. 예를 들어 project-browsers@acme.com이라는 그룹을 만들고 이 그룹에 Bob을 추가할 수 있습니다. 그런 다음 이 그룹에 roles/browser 역할을 부여할 수 있습니다. 자세한 내용은 Google 그룹스를 참고하세요.

2단계: 관리자에게 프로젝트 수준 권한 부여하기

프로젝트 수준에서 관리자에게 roles/contactcenterinsights.admin 권한을 부여합니다. 예를 들어 Alice는 Acme의 관리자이므로 이 역할을 통해 모든 리소스에 대한 전체 액세스 권한을 얻게 됩니다.

관리자 역할 부여

다음 코드는 Alice에게 관리자 역할을 부여하는 방법을 보여줍니다.

gcloud projects add-iam-policy-binding acme-corp \
    --member="user:admin.alice@acme.com" \
    --role="roles/contactcenterinsights.admin"

3단계: 승인된 뷰 세트 만들기

관리자와 상담사의 승인된 뷰를 그룹화하기 위해 승인된 뷰 세트 2개를 만듭니다.

편집자 승인된 뷰 세트 만들기

REST

이 예에서는 관리자 권한이 있는 뷰를 그룹화하기 위해 editor-view-set라는 승인된 뷰 세트를 만듭니다.

HTTP 메서드 및 URL:

POST https://contactcenterinsights.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/authorizedViewSets?authorized_view_set_id=editor-view-set

JSON 요청 본문:

{
  "displayName": "Editor View Set"
}

요청을 보내려면 다음 옵션 중 하나를 펼칩니다.

다음과 비슷한 JSON 응답이 표시됩니다.

{
  "name": "projects/PROJECT_ID/locations/LOCATION/authorizedViewSets/editor-view-set",
  "displayName": "Editor View Set",
  "createTime": "2022-01-01T00:00:00.000000Z",
  "updateTime": "2022-01-01T00:00:00.000000Z"
}

뷰어 승인 뷰 세트 만들기

REST

이 예에서는 에이전트 권한이 있는 뷰를 그룹화하기 위해 viewer-view-set라는 승인된 뷰 세트를 만듭니다.

HTTP 메서드 및 URL:

POST https://contactcenterinsights.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/authorizedViewSets?authorized_view_set_id=viewer-view-set

JSON 요청 본문:

{
  "displayName": "Viewer View Set"
}

요청을 보내려면 다음 옵션 중 하나를 펼칩니다.

다음과 비슷한 JSON 응답이 표시됩니다.

{
  "name": "projects/PROJECT_ID/locations/LOCATION/authorizedViewSets/viewer-view-set",
  "displayName": "Viewer View Set",
  "createTime": "2022-01-01T00:00:00.000000Z",
  "updateTime": "2022-01-01T00:00:00.000000Z"
}

4단계: 승인된 보기 세트에 프로젝트 수준 권한 부여

승인된 뷰는 기본 제공 ID가 있는 리소스이며 {product_name} 데이터에 액세스하려면 권한이 필요합니다. 승인된 뷰가 대화 및 작업에 액세스할 수 있도록 하려면 다음 역할을 부여하세요.

  • editor-view-set의 모든 승인된 뷰에 대한 roles/contactcenterinsights.editor
  • viewer-view-set의 모든 승인된 뷰에 대한 roles/contactcenterinsights.viewer

자세한 내용은 역할 부여 또는 취소를 참고하세요.

editor-view-set에 편집자 역할 부여

이 예시에서는 editor-view-setroles/contactcenterinsights.editor 권한을 부여합니다.

gcloud

gcloud projects add-iam-policy-binding PROJECT_ID \
    --member="principalSet://contactcenterinsights.googleapis.com/projects/PROJECT_NUMBER/type/AuthorizedView/ancestor.name/authorizedViewSets/editor-view-set" \
    --role="roles/contactcenterinsights.editor"

viewer-view-set에게 뷰어 역할 부여

이 예시에서는 viewer-view-set 승인된 뷰 세트에 roles/contactcenterinsights.viewer 역할을 부여합니다.

gcloud

gcloud projects add-iam-policy-binding PROJECT_ID \
    --member="principalSet://contactcenterinsights.googleapis.com/projects/PROJECT_NUMBER/type/AuthorizedView/ancestor.name/authorizedViewSets/viewer-view-set" \
    --role="roles/contactcenterinsights.viewer"

5단계: 승인된 뷰 만들기

관리자와 상담사별로 승인된 뷰를 만들고 적절한 필터를 적용합니다.

관리자의 승인된 뷰 만들기

REST

이 예에서는 agent_id = carol OR agent_id = dave의 대화를 필터링하는 ID가 bobs-editor-view인 승인된 뷰를 만듭니다.

HTTP 메서드 및 URL:

POST https://contactcenterinsights.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/authorizedViews?authorized_view_id=bobsEditorView

JSON 요청 본문:

{
  "displayName": "Bob's Editor View",
  "value": {
    "filter": "agent_id = \"agent-carol\" OR agent_id = \"agent-dave\""
  }
}

요청을 보내려면 다음 옵션 중 하나를 펼칩니다.

다음과 비슷한 JSON 응답이 표시됩니다.

{
  "name": "projects/PROJECT_ID/locations/LOCATION/authorizedViews/bobs-editor-view",
  "displayName": "Bob's Editor View",
  "createTime": "2022-01-01T00:00:00.000000Z",
  "updateTime": "2022-01-01T00:00:00.000000Z",
  "conversationFilter":"agent_id = \"agent-carol\" OR agent_id = \"agent-dave\""
}

관리자에게 승인된 편집자 역할 부여

REST

이 예시에서는 bobs-editor-view에서 Acme 관리자인 Bob에게 roles/contactcenterinsights.authorizedEditor를 부여합니다.

HTTP 메서드 및 URL:

POST https://contactcenterinsights.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/authorizedViewSets/editor-view-set/authorizedViews/bobs-editor-view:setIamPolicy

JSON 요청 본문:

{
  "policy": {
    "bindings": [
      {
        "role": "roles/contactcenterinsights.editor",
        "members": [
          "user:manager.bob@acme.com"
        ]
      }
    ]
  }
}

요청을 보내려면 다음 옵션 중 하나를 펼칩니다.

다음과 비슷한 JSON 응답이 표시됩니다.

{
  "version": 1,
  "etag": "BwW...",
  "bindings": [
    {
      "role": "roles/contactcenterinsights.editor",
      "members": [
        "user:manager.bob@acme.com"
      ]
    }
  ]
}

상담사의 승인된 뷰 만들기

REST

이 예시에서는 Carol이라는 Acme 에이전트의 승인된 뷰를 만듭니다. 이 승인된 뷰에는 agent_id = agent-carol의 대화를 필터링하는 ID carols-viewer-view가 있습니다.

HTTP 메서드 및 URL:

POST https://contactcenterinsights.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/authorizedViews?authorized_view_id=carols-viewer-view

JSON 요청 본문:

{
  "displayName": "Carol's Viewer View",
  "value": {
    "filter": "agent_id = \"agent-carol\""
  }
}

요청을 보내려면 다음 옵션 중 하나를 펼칩니다.

다음과 비슷한 JSON 응답이 표시됩니다.

{
  "name": "projects/PROJECT_ID/locations/LOCATION/authorizedViews/carols-viewer-view",
  "displayName": "Carol's Viewer View",
  "createTime": "2022-01-01T00:00:00.000000Z",
  "updateTime": "2022-01-01T00:00:00.000000Z",
  "conversationFilter": "agent_id = \"agent-carol\""
}

에이전트에게 승인된 뷰어 역할 부여

REST

이 예시에서는 carols-viewer-view에서 Carol에게 roles/contactcenterinsights.authorizedViewer 권한을 부여합니다.

HTTP 메서드 및 URL:

POST https://contactcenterinsights.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/authorizedViewSets/viewer-view-set/authorizedViews/carols-viewer-view:setIamPolicy

JSON 요청 본문:

{
  "policy": {
    "bindings": [
      {
        "role": "roles/contactcenterinsights.viewer",
        "members": [
          "user:agent.carol@acme.com"
        ]
      }
    ]
  }
}

요청을 보내려면 다음 옵션 중 하나를 펼칩니다.

다음과 비슷한 JSON 응답이 표시됩니다.

{
  "version": 1,
  "etag": "BwW...",
  "bindings": [
    {
      "role": "roles/contactcenterinsights.viewer",
      "members": [
        "user:agent.carol@acme.com"
      ]
    }
  ]
}

다른 상담사의 승인된 뷰 만들기

REST

이 예에서는 Acme 에이전트 Dave의 승인된 뷰를 만듭니다. 이 승인된 뷰에는 agent_id = agent-dave의 대화를 필터링하는 ID daves-viewer-view가 있습니다.

HTTP 메서드 및 URL:

POST https://contactcenterinsights.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/authorizedViews?authorized_view_id=daves-viewer-view

JSON 요청 본문:

{
  "displayName": "Dave's Viewer View",
  "value": {
    "filter": "agent_id = \"agent-dave\""
  }
}

요청을 보내려면 다음 옵션 중 하나를 펼칩니다.

다음과 비슷한 JSON 응답이 표시됩니다.

{
  "name": "projects/PROJECT_ID/locations/LOCATION/authorizedViews/daves-viewer-view",
  "displayName": "Dave's Viewer View",
  "createTime": "2022-01-01T00:00:00.000000Z",
  "updateTime": "2022-01-01T00:00:00.000000Z",
  "conversationFilter": "agent_id = \"agent-dave\""
}

다른 상담사에게 승인된 뷰어 역할 부여

REST

이 예시에서는 daves-viewer-view에서 Dave에게 roles/contactcenterinsights.authorizedViewer 권한을 부여합니다.

HTTP 메서드 및 URL:

POST https://contactcenterinsights.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/authorizedViewSets/viewer-view-set/authorizedViews/daves-viewer-view:setIamPolicy

JSON 요청 본문:

{
  "policy": {
    "bindings": [
      {
        "role": "roles/contactcenterinsights.viewer",
        "members": [
          "user:agent.dave@acme.com"
        ]
      }
    ]
  }
}

요청을 보내려면 다음 옵션 중 하나를 펼칩니다.

다음과 비슷한 JSON 응답이 표시됩니다.

{
  "version": 1,
  "etag": "BwW...",
  "bindings": [
    {
      "role": "roles/contactcenterinsights.viewer",
      "members": [
        "user:agent.dave@acme.com"
      ]
    }
  ]
}

다음 단계