Membuat dan mengelola tabel virtual yang diotorisasi

Anda dapat melakukan operasi administratif berikut pada tampilan yang diizinkan dan set tampilan yang diizinkan.

Izin dan peran yang diperlukan

Untuk membuat dan mengelola set tampilan yang diizinkan dan tampilan yang diizinkan, Anda memerlukan izin IAM berikut.

Kumpulan tampilan yang diotorisasi:

Izin Deskripsi
contactcenterinsights.authorizedViewSet.create Buat set tampilan yang diotorisasi.
contactcenterinsights.authorizedViewSet.get Mendapatkan detail tentang set tampilan yang diotorisasi.
contactcenterinsights.authorizedViewSet.update Memperbarui set tampilan resmi yang ada.
contactcenterinsights.authorizedViewSet.delete Menghapus set tampilan yang diotorisasi.
contactcenterinsights.authorizedViewSet.list Mencantumkan set tampilan yang diotorisasi dalam project.

Tampilan yang diberi otorisasi:

Izin Deskripsi
contactcenterinsights.authorizedView.create Buat tampilan yang diotorisasi.
contactcenterinsights.authorizedView.get Mendapatkan detail tentang tampilan yang diotorisasi.
contactcenterinsights.authorizedView.update Memperbarui tampilan resmi yang ada.
contactcenterinsights.authorizedView.delete Menghapus tampilan yang diotorisasi.

Untuk memberikan akses ke tampilan yang diotorisasi, Anda memerlukan izin berikut:

Izin Deskripsi
contactcenterinsights.authorizedView.setIamPolicy Tetapkan kebijakan IAM pada tampilan yang diizinkan.
contactcenterinsights.authorizedView.getIamPolicy Mendapatkan kebijakan IAM pada tampilan yang diberi otorisasi.

Peran yang telah ditetapkan

Peran IAM bawaan berikut memberikan izin yang diperlukan:

Peran Deskripsi
roles/contactcenterinsights.editor Memberikan akses Baca dan Tulis ke semua resource Customer Experience Insights.
roles/contactcenterinsights.admin Memberikan akses Baca dan Tulis ke semua resource Customer Experience Insights.

Kumpulan tampilan yang diotorisasi

Kumpulan tampilan yang diotorisasi mengelompokkan dan menyederhanakan pemberian izin ke beberapa tampilan yang diotorisasi.

Membuat set tampilan yang diotorisasi

REST

Untuk membuat set tampilan yang diotorisasi, Anda memerlukan izin contactcenterinsights.authorizedViewSet.create.

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • PROJECT_ID: Project ID Google Cloud Anda.
  • LOCATION: Lokasi data Customer Experience Insights Anda.
  • AUTHORIZED_VIEW_SET_ID: ID yang ditentukan pengguna opsional untuk set tampilan yang diizinkan yang akan dibuat; nilai ini harus terdiri dari 1-63 karakter, diawali dan diakhiri dengan [a-z0-9], dan dapat berisi tanda hubung (-) di antara karakter
  • DISPLAY_NAME: Nama deskriptif untuk set tampilan yang diizinkan.

Metode HTTP dan URL:

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

Meminta isi JSON:

{
  "displayName": "DISPLAY_NAME"
}

Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:

Anda akan melihat respons JSON seperti berikut:

{
  "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"
}

Membaca set tampilan yang diizinkan

REST

Membaca set tampilan yang diotorisasi memerlukan izin contactcenterinsights.authorizedViewSet.get.

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • PROJECT_ID: Project ID Google Cloud Anda.
  • LOCATION: Lokasi data Customer Experience Insights Anda.
  • AUTHORIZED_VIEW_SET_ID: ID untuk set tampilan yang diizinkan.

Metode HTTP dan URL:

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

Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:

Anda akan melihat respons JSON seperti berikut:

{
  "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"
}

Memperbarui set tampilan yang diizinkan

REST

Memperbarui set tampilan yang diizinkan memerlukan izin contactcenterinsights.authorizedViewSet.update.

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • PROJECT_ID: Project ID Google Cloud Anda.
  • LOCATION: Lokasi data Customer Experience Insights Anda.
  • AUTHORIZED_VIEW_SET_ID: ID untuk set tampilan yang diizinkan.
  • DISPLAY_NAME: Nama deskriptif untuk set tampilan yang diizinkan.
  • UPDATE_MASK: Kolom yang akan diupdate. Nilai ini adalah daftar kolom yang dipisahkan koma.
    • display_name

Metode HTTP dan URL:

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

Meminta isi JSON:

{
  "displayName": "DISPLAY_NAME"
}

Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:

Anda akan melihat respons JSON seperti berikut:

{
  "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"
}

Menghapus set tampilan yang diotorisasi

REST

Menghapus set tampilan yang diizinkan memerlukan izin contactcenterinsights.authorizedViewSet.delete.

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • PROJECT_ID: Project ID Google Cloud Anda.
  • LOCATION: Lokasi data Customer Experience Insights Anda.
  • AUTHORIZED_VIEW_SET_ID: ID untuk set tampilan yang diizinkan.

Metode HTTP dan URL:

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

Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:

Anda akan melihat respons JSON seperti berikut:

{}

Mencantumkan set tampilan yang diotorisasi

REST

Mencantumkan set tampilan yang diotorisasi memerlukan izin contactcenterinsights.authorizedViewSet.list.

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • PROJECT_ID: Project ID Google Cloud Anda.
  • LOCATION: Lokasi data Customer Experience Insights Anda.
  • PAGE_SIZE: Jumlah maksimum set tampilan yang diizinkan untuk ditampilkan dalam respons. Jika nilainya nol, layanan akan memilih ukuran default. Panggilan mungkin menampilkan lebih sedikit objek daripada yang diminta. `next_page_token` yang tidak kosong dalam respons menunjukkan bahwa ada lebih banyak data yang tersedia.
  • PAGE_TOKEN: Nilai yang ditampilkan oleh `ListAuthorizedViewSetsResponse` terakhir. Nilai ini menunjukkan bahwa ini adalah kelanjutan dari panggilan `ListAuthorizedViewSets` sebelumnya dan sistem harus menampilkan halaman data berikutnya.
  • FILTER: Ekspresi untuk memfilter set tampilan yang diotorisasi. Contoh:
    • 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: Ekspresi untuk mengurutkan set tampilan yang diizinkan yang tercantum dalam respons. Contoh:
    • create_time
    • create_time desc
    • update_time
    • update_time desc
    • display_name
    • display_name desc

Metode HTTP dan 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

Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:

Anda akan melihat respons JSON seperti berikut:

{
  "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"
}

Tampilan yang diberi otorisasi

Tampilan yang diizinkan menentukan jumlah percakapan yang dibatasi dan peran agen atau pengelola untuk percakapan tersebut.

Membuat tampilan yang diotorisasi

REST

Membuat tampilan yang diotorisasi memerlukan izin contactcenterinsights.authorizedView.create.

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • PROJECT_ID: Project ID Google Cloud Anda.
  • LOCATION: Lokasi data Customer Experience Insights Anda.
  • AUTHORIZED_VIEW_SET_ID: ID untuk set tampilan resmi yang menjadi tujuan tampilan resmi ini.
  • AUTHORIZED_VIEW_ID: ID yang ditentukan pengguna opsional untuk tampilan resmi yang akan dibuat; nilai ini harus terdiri dari 1-63 karakter, diawali dan diakhiri dengan [a-z0-9], dan dapat berisi tanda hubung (-) di antara karakter.
  • DISPLAY_NAME: Nama deskriptif untuk set tampilan yang diizinkan.
  • CONVERSATION_FILTER: Filter yang akan diterapkan pada data. Anda dapat menggunakan kolom berikut: `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"

Metode HTTP dan URL:

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

Meminta isi JSON:

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

Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:

Anda akan melihat respons JSON seperti berikut:

{
  "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"
}

Membaca tampilan yang diotorisasi

REST

Membaca tampilan yang diotorisasi memerlukan izin contactcenterinsights.authorizedView.get.

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • PROJECT_ID: Project ID Google Cloud Anda.
  • LOCATION: Lokasi data Customer Experience Insights Anda.
  • AUTHORIZED_VIEW_SET_ID: ID untuk set tampilan yang diizinkan.
  • AUTHORIZED_VIEW_ID: ID untuk tampilan yang diizinkan.

Metode HTTP dan URL:

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

Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:

Anda akan melihat respons JSON seperti berikut:

{
  "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"
}

Memperbarui tampilan yang diotorisasi

REST

Memperbarui tampilan yang diotorisasi memerlukan izin contactcenterinsights.authorizedView.update.

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • PROJECT_ID: Project ID Google Cloud Anda.
  • LOCATION: Lokasi data Customer Experience Insights Anda.
  • AUTHORIZED_VIEW_SET_ID: ID untuk set tampilan yang diberi otorisasi yang menjadi bagian dari tampilan yang diberi otorisasi ini.
  • AUTHORIZED_VIEW_ID: ID untuk tampilan resmi yang akan diperbarui.
  • DISPLAY_NAME: Nama deskriptif untuk set tampilan yang diizinkan.
  • CONVERSATION_FILTER: Filter yang akan diterapkan pada data. Anda dapat menggunakan kolom berikut: `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: Kolom yang akan diupdate. Nilai ini adalah daftar kolom yang dipisahkan koma.
    • display_name
    • conversation_filter

Metode HTTP dan 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

Meminta isi JSON:

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

Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:

Anda akan melihat respons JSON seperti berikut:

{
  "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"
}

Menghapus tampilan yang diotorisasi

REST

Menghapus tampilan yang diizinkan memerlukan izin contactcenterinsights.authorizedView.delete.

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • PROJECT_ID: Project ID Google Cloud Anda.
  • LOCATION: Lokasi data Customer Experience Insights Anda.
  • AUTHORIZED_VIEW_SET_ID: ID untuk set tampilan yang diizinkan.
  • AUTHORIZED_VIEW_ID: ID untuk tampilan yang diizinkan.

Metode HTTP dan URL:

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

Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:

Anda akan melihat respons JSON seperti berikut:

{}

Mencantumkan tampilan yang diotorisasi

REST

Mencantumkan set tampilan yang diotorisasi memerlukan izin contactcenterinsights.authorizedViews.list.

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • PROJECT_ID: Project ID Google Cloud Anda.
  • LOCATION: Lokasi data Customer Experience Insights Anda.
  • AUTHORIZED_VIEW_SET_ID: ID yang ditentukan pengguna untuk set tampilan yang diizinkan.
  • PAGE_SIZE: Jumlah maksimum tampilan yang akan ditampilkan dalam respons. Jika nilainya nol, layanan akan memilih ukuran default. Panggilan mungkin menampilkan lebih sedikit objek daripada yang diminta. `next_page_token` yang tidak kosong dalam respons menunjukkan bahwa ada lebih banyak data yang tersedia.
  • PAGE_TOKEN: Nilai yang ditampilkan oleh `ListAuthorizedViewsResponse` terakhir. Nilai ini menunjukkan bahwa ini adalah kelanjutan dari panggilan `ListAuthorizedViews` sebelumnya dan sistem harus menampilkan halaman data berikutnya.
  • FILTER: Ekspresi filter untuk memfilter tampilan resmi yang tercantum dalam respons. Anda dapat memfilter kolom berikut: `authorized_view_id`, `display_name`, `conversation_filter`, `create_time`, dan `update_time`. Anda dapat menggunakan ekspresi arbitrer dan/atau. Anda juga dapat menggunakan ekspresi reguler untuk kolom string.
    • Contoh: display_name = "My View"
    • Contoh: conversation_filter =~ ".*agent-1.*"
    • Contoh: create_time > "2022-01-01T00:00:00Z"
    • Contoh: display_name =~ ".*View.*"
    • Contoh: create_time > "2022-01-01T00:00:00Z" AND create_time <= "2022-01-02T00:00:00Z"
  • ORDER_BY: Ekspresi pengurutan untuk mengurutkan tabel virtual yang diotorisasi yang tercantum dalam respons.
    • Contoh: create_time
    • Contoh: update_time desc

Metode HTTP dan 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

Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:

Anda akan melihat respons JSON seperti berikut:

{
  "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"
}

Menetapkan kebijakan IAM pada tampilan yang diberi otorisasi

REST

Menetapkan kebijakan IAM pada tampilan yang diberi otorisasi memerlukan izin contactcenterinsights.authorizedView.setIamPolicy.

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • PROJECT_ID: Project ID Google Cloud Anda.
  • LOCATION: Lokasi data Customer Experience Insights Anda.
  • AUTHORIZED_VIEW_SET_ID: ID untuk set tampilan yang diizinkan.
  • AUTHORIZED_VIEW_ID: ID untuk tampilan yang diizinkan.
  • PRINCIPAL: Akun utama (pengguna) yang ingin Anda beri akses.
  • ROLE: Peran yang akan diberikan kepada pengguna.

Metode HTTP dan URL:

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

Meminta isi JSON:

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

Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:

Anda akan melihat respons JSON seperti berikut:

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

Membaca kebijakan IAM pada tampilan yang diotorisasi

REST

Membaca kebijakan IAM pada tampilan resmi memerlukan izin contactcenterinsights.authorizedView.getIamPolicy.

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • PROJECT_ID: Project ID Google Cloud Anda.
  • LOCATION: Lokasi data Customer Experience Insights Anda.
  • AUTHORIZED_VIEW_SET_ID: ID untuk set tampilan yang diizinkan.
  • AUTHORIZED_VIEW_ID: ID untuk tampilan yang diizinkan.

Metode HTTP dan URL:

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

Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:

Anda akan melihat respons JSON seperti berikut:

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

Contoh penyiapan organisasi

Contoh ini menunjukkan cara menyiapkan tampilan yang diizinkan untuk organisasi yang disederhanakan. Contoh ini menggunakan REST API untuk membuat dan mengelola resource dalam project fiktif bernama acme-corp.

Acme memiliki struktur berikut:

  • Alice: Alice adalah administrator project.
    • Bob: Bob adalah pengelola.
    • Carol: Carol adalah agen.
    • Dave: Dave adalah agen.

Setiap pengguna memiliki ID akun utama yang terkait dengan alamat emailnya.

  • Alice adalah user:admin.alice@acme.com.
  • Bob adalah user:manager.bob@acme.com.
  • Nomor Carol adalah user:agent.carol@acme.com.
  • Dave's adalah user:agent.dave@acme.com.

Setiap agen memiliki agent_id yang sesuai dengan kolom Conversation.agent_id untuk percakapan mereka.

  • Nomor Carol adalah agent-carol.
  • Dave's adalah agent-dave.

Persyaratan

Setiap pengguna memerlukan tingkat akses berikut:

  • Akses Administrator: Sebagai administrator, Alice memiliki akses penuh ke semua data dan resource.
  • Akses Pengelola: Sebagai pengelola, Bob dapat membuat, mengedit, dan melihat percakapan serta analisis untuk tim masing-masing.
  • Akses Agen: Sebagai agen, Carol dan Dave hanya dapat melihat percakapan dan analisis yang mereka ikuti.

Langkah 1: Berikan akses project

Tambahkan semua pengguna ke project dan beri mereka roles/browser. Peran ini memungkinkan mereka melihat project dan resource-nya.

Memberikan akses penjelajah project kepada pengguna

Kode berikut menggambarkan cara memberikan peran browser kepada setiap anggota 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"

Untuk mengetahui informasi selengkapnya, lihat Memberikan satu peran.

Anda juga dapat menggunakan Google Grup untuk mengelola akses ke project Anda. Daripada memberikan izin kepada pengguna satu per satu, Anda dapat memberikan roles/browser kepada grup. Misalnya, Anda dapat membuat grup bernama project-browsers@acme.com dan menambahkan Bob ke grup ini. Kemudian, Anda dapat memberikan peran roles/browser ke grup ini. Untuk mengetahui informasi selengkapnya, lihat Google Grup.

Langkah 2: Berikan izin tingkat project kepada administrator

Beri administrator Anda roles/contactcenterinsights.admin di level project. Misalnya, Alice adalah administrator di Acme, jadi dia akan mendapatkan akses penuh ke semua resource dengan peran ini.

Memberikan peran Admin

Kode berikut mengilustrasikan cara memberi Alice peran Admin:

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

Langkah 3: Buat set tampilan yang diotorisasi

Buat dua set tampilan yang diotorisasi untuk mengelompokkan tampilan yang diotorisasi bagi pengelola dan agen.

Membuat set tampilan yang diotorisasi editor

REST

Contoh ini membuat set tampilan yang diotorisasi bernama editor-view-set untuk mengelompokkan tampilan yang memiliki izin pengelola.

Metode HTTP dan URL:

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

Meminta isi JSON:

{
  "displayName": "Editor View Set"
}

Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:

Anda akan melihat respons JSON seperti berikut:

{
  "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"
}

Membuat set tampilan yang diotorisasi pelihat

REST

Contoh ini membuat set tampilan yang diotorisasi bernama viewer-view-set untuk mengelompokkan tampilan yang memiliki izin agen.

Metode HTTP dan URL:

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

Meminta isi JSON:

{
  "displayName": "Viewer View Set"
}

Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:

Anda akan melihat respons JSON seperti berikut:

{
  "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"
}

Langkah 4: Berikan izin tingkat project ke set tampilan yang diberi otorisasi

Tampilan yang diotorisasi adalah resource dengan identitas bawaan dan memerlukan izin untuk mengakses data {product_name}. Untuk memberikan kemampuan kepada tampilan resmi untuk mengakses percakapan dan operasi, berikan peran berikut kepada tampilan tersebut:

  • roles/contactcenterinsights.editor untuk semua tampilan yang diotorisasi di editor-view-set
  • roles/contactcenterinsights.viewer untuk semua tampilan yang diotorisasi di viewer-view-set

Untuk mengetahui informasi selengkapnya, lihat memberikan atau mencabut peran.

Memberikan peran editor kepada editor-view-set

Contoh ini memberikan roles/contactcenterinsights.editor kepada editor-view-set.

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"

Memberi peran pelihat kepada viewer-view-set

Contoh ini memberikan peran roles/contactcenterinsights.viewer ke set tampilan resmi viewer-view-set.

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"

Langkah 5: Buat tampilan yang diotorisasi

Buat tampilan yang diotorisasi untuk setiap pengelola dan agen, lalu terapkan filter yang sesuai.

Membuat tampilan yang diotorisasi pengelola

REST

Contoh ini membuat tampilan yang diotorisasi dengan ID bobs-editor-view yang memfilter percakapan di agent_id = carol OR agent_id = dave.

Metode HTTP dan URL:

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

Meminta isi JSON:

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

Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:

Anda akan melihat respons JSON seperti berikut:

{
  "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\""
}

Memberikan peran Editor Resmi kepada pengelola

REST

Contoh ini memberikan roles/contactcenterinsights.authorizedEditor kepada pengelola Acme, Bob, di bobs-editor-view.

Metode HTTP dan URL:

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

Meminta isi JSON:

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

Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:

Anda akan melihat respons JSON seperti berikut:

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

Membuat tampilan yang diotorisasi agen

REST

Contoh ini membuat tampilan yang diotorisasi untuk agen Acme bernama Carol. Tampilan resmi ini memiliki ID carols-viewer-view, yang memfilter percakapan untuk agent_id = agent-carol.

Metode HTTP dan URL:

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

Meminta isi JSON:

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

Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:

Anda akan melihat respons JSON seperti berikut:

{
  "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\""
}

Memberikan peran Pelihat yang Sah kepada agen

REST

Contoh ini memberikan roles/contactcenterinsights.authorizedViewer kepada Carol pada carols-viewer-view.

Metode HTTP dan URL:

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

Meminta isi JSON:

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

Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:

Anda akan melihat respons JSON seperti berikut:

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

Membuat tampilan yang diotorisasi agen lain

REST

Contoh ini membuat tampilan yang diotorisasi untuk agen Acme bernama Dave. Tampilan resmi ini memiliki ID daves-viewer-view, yang memfilter percakapan untuk agent_id = agent-dave.

Metode HTTP dan URL:

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

Meminta isi JSON:

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

Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:

Anda akan melihat respons JSON seperti berikut:

{
  "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\""
}

Memberikan peran Pelihat Resmi kepada agen lain

REST

Contoh ini memberikan roles/contactcenterinsights.authorizedViewer kepada Dave di daves-viewer-view.

Metode HTTP dan URL:

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

Meminta isi JSON:

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

Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:

Anda akan melihat respons JSON seperti berikut:

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

Apa langkah selanjutnya?