Data peristiwa sesi chat QM

Halaman ini menjelaskan data peristiwa sesi chat yang dapat diekspor Contact Center AI Platform (CCAI Platform) ke aplikasi pengelolaan kualitas (QM) Anda. Data peristiwa chat QM mendukung SDK web dan SDK seluler. Untuk mengetahui informasi selengkapnya tentang mengintegrasikan Platform CCAI dengan aplikasi QM Anda, lihat Integrasi QM dan SIPREC.

Untuk data peristiwa sesi panggilan, lihat Data peristiwa sesi panggilan QM.

Peristiwa dan pemicu sesi chat

Peristiwa sesi tertentu memicu ekspor data sesi chat ke aplikasi QM Anda. Bagian ini mencantumkan jenis peristiwa chat dan menyertakan contoh payload peristiwa sesi untuk setiap jenis peristiwa.

Percakapan dimulai

Peristiwa ini dipicu saat agen manusia atau agen virtual memulai chat. Payload peristiwa berisi status awal chat, termasuk informasi tentang antrean, peserta, dan inisiator.

Contoh kode berikut menunjukkan payload peristiwa:

{
  "queue_path_ids": "7/26",
  "queue_path_names": "Test/calls",
  "language": "en",
  "support_number": null,
  "session_type_v2": "In-web",
  "chat_id": 138,
  "state": "waiting",
  "direction": "incoming",
  "initiator": "end_user_5",
  "participants": [
    {
      "state": "connected",
      "type": "external",
      "dn": "end_user_5"
    }
  ]
}

Chat menunggu penetapan

Peristiwa ini dipicu saat sesi chat memasuki antrean dan menunggu penugasan.

Contoh kode berikut menunjukkan payload peristiwa:

{
  "queue_path_ids": "7/23",
  "queue_path_names": "Test/virtual",
  "language": "en",
  "session_type_v2": "In-web",
  "chat_id": 196,
  "state": "waiting",
  "direction": "incoming",
  "initiator": "end_user_5",
  "participants": [
    {
      "state": "connected",
      "type": "external",
      "dn": "end_user_5"
    }
  ]
}

Chat diterima

Peristiwa ini dipicu saat agen manusia atau agen virtual menerima chat. Ini adalah peristiwa perantara opsional sebelum agen terhubung dengan chat.

Contoh kode berikut menunjukkan payload peristiwa untuk agen manusia:

{
  "queue_path_ids": "7/26",
  "queue_path_names": "Test/calls",
  "language": "en",
  "session_type_v2": "In-web",
  "chat_id": 167,
  "state": "connected",
  "direction": "incoming",
  "initiator": "agent_1",
  "participants": [
    {
      "state": "connected",
      "type": "external",
      "media_id": "MB0d0540e638354714a43d64e9be9677b6",
      "dn": "end_user_5"
    },
    {
      "state": "accepted",
      "type": "agent",
      "media_id": "MBd9670cb0cddd424c814194795527ae3a",
      "agent_number": "Uno numero",
      "name": "Admin UJET",
      "alias": "super_agent",
      "dn": "agent_1"
    }
  ]
}

Contoh kode berikut menunjukkan payload peristiwa untuk agen virtual:

{
  "queue_path_ids": "7/23",
  "queue_path_names": "Test/virtual",
  "language": "en",
  "session_type_v2": "In-web",
  "chat_id": 196,
  "state": "connected",
  "direction": "incoming",
  "initiator": "virtual_agent_2",
  "participants": [
    {
      "state": "connected",
      "type": "external",
      "media_id": "MBdfcdab9220f94f1486008a165db3f31a",
      "dn": "end_user_5"
    },
    {
      "state": "accepted",
      "type": "virtual_agent",
      "media_id": "MBea10421d150b4d22b675de17070bc383",
      "dn": "virtual_agent_2"
    }
  ]
}

Chat terhubung

Peristiwa ini dipicu saat percakapan terhubung ke agen manusia atau agen virtual. Hal ini dapat berupa koneksi otomatis atau agen manusia yang menghubungkan secara manual.

Contoh kode berikut menunjukkan payload peristiwa untuk agen manusia:

{
  "queue_path_ids": "7/26",
  "queue_path_names": "Test/calls",
  "language": "en",
  "session_type_v2": "In-web",
  "chat_id": 114,
  "state": "connected",
  "direction": "incoming",
  "initiator": "end_user_5",
  "participants": [
    {
      "state": "connected",
      "type": "external",
      "media_id": "MB7a504ce7f418447bb4a48b8f3fa609d0",
      "dn": "end_user_5"
    },
    {
      "state": "connected",
      "type": "agent",
      "agent_number": "Uno numero",
      "name": "Admin UJET",
      "alias": "super_agent",
      "dn": "agent_1"
    }
  ]
}

Contoh kode berikut menunjukkan payload peristiwa untuk agen virtual:

{
  "queue_path_ids": "7/23",
  "queue_path_names": "Test/virtual",
  "language": "en",
  "session_type_v2": "In-web",
  "chat_id": 196,
  "state": "connected",
  "direction": "incoming",
  "initiator": "virtual_agent_2",
  "participants": [
    {
      "state": "connected",
      "type": "external",
      "dn": "end_user_5"
    },
    {
      "state": "connected",
      "type": "virtual_agent",
      "dn": "virtual_agent_2"
    }
  ],
  "connected_at": "2024-09-13T14:04:17.000-07:00"
}

Percakapan ditutup

Peristiwa ini dipicu saat sesi chat dibatalkan atau dihentikan sebelum koneksi penuh dibuat—misalnya, tidak diterima atau berakhir sebelum waktunya.

Contoh kode berikut menunjukkan payload peristiwa:

{
  "queue_path_ids": "7/26",
  "queue_path_names": "Test/calls",
  "language": "en",
  "session_type_v2": "In-web",
  "chat_id": 197,
  "state": "dismissed",
  "direction": "incoming",
  "initiator": "agent_1",
  "participants": [
    {
      "state": "dismissed",
      "type": "external",
      "media_id": "MB444f542e9b9c4f89a8369bb2430357ad",
      "dn": "end_user_5"
    },
    {
      "state": "dismissed",
      "type": "agent",
      "media_id": "MB7e657411b2284f95b2cf31ef5e6dc83c",
      "agent_number": "Uno numero",
      "name": "Admin UJET",
      "alias": "super_agent",
      "dn": "agent_1"
    }
  ]
}

Percakapan dilanjutkan

Peristiwa ini dipicu saat sesi chat yang sebelumnya dijeda atau ditangguhkan dilanjutkan. Payload berisi status chat saat dilanjutkan.

Contoh kode berikut menunjukkan payload peristiwa:

{
  "session_type_v2": "In-web",
  "chat_id": 198,
  "state": "resumed",
  "direction": "incoming",
  "initiator": "end_user_5",
  "participants": [
    {
      "state": "resumed",
      "type": "external",
      "media_id": "MB320da61121bc4fc48ea099759f679333",
      "dn": "end_user_5"
    },
    {
      "state": "resumed",
      "type": "agent",
      "media_id": "MBbe5db89a01ab4814a8e7830daf3d30fa",
      "agent_number": "Uno numero",
      "name": "Admin UJET",
      "alias": "super_agent",
      "dn": "agent_1"
    }
  ]
}

Peserta keluar dari chat

Peristiwa ini dipicu saat satu atau beberapa peserta keluar dari sesi chat. Hal ini dapat berupa pengguna akhir, agen manusia, atau agen virtual yang keluar dari chat. Payload berisi status chat saat peserta keluar dari chat.

Contoh kode berikut menunjukkan payload peristiwa untuk pengguna akhir yang keluar dari chat:

{
  "session_type_v2": "In-web",
  "chat_id": 169,
  "state": "participantDisconnect",
  "direction": "incoming",
  "initiator": "end_user_5",
  "participants": [
    {
      "state": "disconnected",
      "type": "external",
      "media_id": "MB4dd73370bc564cf18f5347233523ef44",
      "dn": "end_user_5"
    },
    {
      "state": "disconnected",
      "type": "agent",
      "media_id": "MBba370f84cf914992b05e9aab03730c4b",
      "agent_number": "Uno numero",
      "name": "Admin UJET",
      "alias": "super_agent",
      "dn": "agent_1"
    }
  ]
}

Contoh kode berikut menunjukkan payload peristiwa saat agen manusia keluar dari chat:

{
  "queue_path_ids": "7/26",
  "queue_path_names": "Test/calls",
  "language": "en",
  "session_type_v2": "In-web",
  "chat_id": 169,
  "state": "participantDisconnect",
  "direction": "incoming",
  "initiator": "agent_1",
  "participants": [
    {
      "state": "connected",
      "type": "external",
      "media_id": "MB4dd73370bc564cf18f5347233523ef44",
      "dn": "end_user_5"
    },
    {
      "state": "disconnected",
      "type": "agent"
      "media_id": "MBba370f84cf914992b05e9aab03730c4b",
      "agent_number": "Uno numero",
      "name": "Admin UJET",
      "alias": "super_agent",
      "dn": "agent_1"
    }
  ]
}

Contoh kode berikut menunjukkan payload peristiwa saat agen virtual keluar dari percakapan:

{
  "queue_path_ids": "7/23",
  "queue_path_names": "Test/virtual",
  "language": "en",
  "session_type_v2": "In-web",
  "chat_id": 196,
  "state": "participantDisconnect",
  "direction": "incoming",
  "initiator": "virtual_agent_2",
  "participants": [
    {
      "state": "disconnected",
      "type": "external",
      "media_id": "MBdfcdab9220f94f1486008a165db3f31a",
      "dn": "end_user_5"
    },
    {
      "state": "disconnected",
      "type": "virtual_agent",
      "media_id": "MBea10421d150b4d22b675de17070bc383",
      "dn": "virtual_agent_2"
    }
  ]
}

Percakapan berakhir

Peristiwa ini dipicu saat sesi chat berakhir. Hal ini dapat berupa pengguna akhir, agen manusia, atau agen virtual yang mengakhiri percakapan. Payload berisi status chat saat berakhir, termasuk peserta dan stempel waktu saat chat terhubung dan berakhir.

Contoh kode berikut menunjukkan payload peristiwa untuk agen manusia dan pengguna akhir yang keluar dari percakapan:

{
  "queue_path_ids": "7/26",
  "queue_path_names": "Test/calls",
  "language": "en",
  "support_number": null,
  "session_type_v2": "In-web",
  "chat_id": 127,
  "state": "disconnected",
  "direction": "incoming",
  "initiator": "end_user_5",
  "participants": [
    {
      "state": "disconnected",
      "type": "external",
      "media_id": "MB4a0a435e759c43369098ee7f2d0271f0",
      "dn": "end_user_5"
    },
    {
      "state": "disconnected",
      "type": "agent",
      "media_id": "MBa4afeafb5bcc4a279f51db76f3b98deb",
      "agent_number": "Uno numero",
      "name": "Admin UJET",
      "alias": "super_agent",
      "dn": "agent_1"
    }
  ],
  "connected_at": "2024-08-27T17:06:37.000-07:00",
  "ends_at": "2024-08-27T17:06:59.000-07:00"
}

Contoh kode berikut menunjukkan payload peristiwa untuk agen virtual dan pengguna akhir yang keluar dari percakapan:

{
  "queue_path_ids": "7/23",
  "queue_path_names": "Test/virtual",
  "language": "en",
  "session_type_v2": "In-web",
  "chat_id": 190,
  "state": "disconnected",
  "direction": "incoming",
  "initiator": "end_user_5",
  "participants": [
    {
      "state": "disconnected",
      "type": "external",
      "media_id": "MB6ea6204b6a0448428d88e9976fd856d4",
      "dn": "end_user_5"
    },
    {
      "state": "disconnected",
      "type": "virtual_agent",
      "media_id": "MBc6a2b72c99534a68990caf622b65571a",
      "dn": "virtual_agent_2"
    }
  ],
  "connected_at": "2024-09-12T10:50:51.000-07:00",
  "ends_at": "2024-09-12T11:54:08.000-07:00"
}

Contoh kode berikut menunjukkan payload peristiwa untuk chat yang berakhir saat menunggu dalam antrean:

{
  "queue_path_ids": "7/26",
  "queue_path_names": "Test/calls",
  "language": "en",
  "support_number": null,
  "session_type_v2": "In-web",
  "chat_id": 141,
  "state": "disconnected",
  "direction": "incoming",
  "initiator": "end_user_5",
  "participants": [
    {
      "state": "disconnected",
      "type": "external",
      "media_id": "MB65670b2c44534af3860fad35be88ac41",
      "dn": "end_user_5"
    }
  ],
  "connected_at": "",
  "ends_at": "2024-08-29T14:41:16.000-07:00"
}

Kolom peristiwa sesi chat

Tabel berikut menjelaskan kolom dalam data sesi yang diekspor Contact Center AI Platform ke aplikasi QM Anda.

Kolom umum

Nama kolom

Nilai

Deskripsi

Kondisi

type

  • AgentState
  • ChatState

Jenis peristiwa payload JSON keseluruhan.

  • Meneruskan AgentState untuk peristiwa terkait agen.
  • Meneruskan ChatState untuk peristiwa terkait chat.

item

Objek dengan informasi acara.

Kolom status chat

Nama Kolom

Nilai

Deskripsi

Kondisi

chat_id

  • ID chat

Tersedia di objek item.

ID sesi chat dalam sistem Contact Center AI Platform.

  • Meneruskan nilai kolom ID di objek utama dalam metadata sesi Contact Center AI Platform.

state

  • waiting
  • connected
  • disconnected
  • dismissed
  • resumed
  • participantDisconnect
  • transferred

Tersedia di objek item.

Status sesi chat saat ini.

direction

  • incoming

Tersedia di objek item.

Arah sesi chat dari perspektif pusat kontak.

  • Meneruskan incoming saat sesi chat bersifat masuk.

initiator

  • agent_1
  • virtual_agent_2
  • end_user_5

Tersedia di objek item.

ID pihak yang memulai status chat.

  • Untuk agen manusia

    Meneruskan nilai kolom ID dalam objek agent_info di metadata sesi.

  • Untuk agen virtual

    Meneruskan nilai kolom virtual_agent_id di objek participants dalam metadata sesi.

  • Untuk pengguna akhir

    Meneruskan nilai kolom ID dalam objek end_user di metadata sesi.

queue_path_ids

  • Jalur ID antrean

Tersedia di objek item.

Jalur antrean yang dijelajahi oleh pengguna akhir sebelum menghubungi agen pertama dalam panggilan.

Nilai ini dibuat menggunakan ID antrean dari antrean yang dijelajahi.

  • Hal ini hanya berlaku untuk chat masuk.

queue_path_names

  • Jalur nama antrean

Tersedia di objek item.

Jalur antrean yang dijelajahi oleh pengguna akhir sebelum menghubungi agen pertama dalam panggilan.

Nilai ini dibuat menggunakan nama antrean dari antrean yang dinavigasi.

  • Hal ini hanya berlaku untuk chat masuk.

language

  • Kode bahasa

Tersedia di objek item.

Kode bahasa yang dipilih pengguna akhir.

  • Hal ini hanya berlaku untuk chat masuk.

queue_uuid

  • ID antrean

Tersedia di objek item.

UUID antrean tempat percakapan telah diarahkan.

  • Hal ini hanya berlaku untuk chat masuk dan chat yang dialihkan ke antrean.

tenant

  • Nama instance

Tersedia di objek item.

Nama instance yang menghosting chat.

event_id

  • ID acara

Tersedia di objek item.

ID untuk sesi chat.

timestamp

  • Stempel waktu UNIX

Tersedia di objek item.

Stempel waktu untuk chat dalam waktu epoch Unix

session_type_v2

  • In-web

Tersedia di objek item.

Menunjukkan sesi chat SDK web.

support_number

  • NULL

  • Tidak berlaku untuk chat.

connected_at

  • Tanggal dan waktu

Tersedia di objek item.

Tanggal dan waktu sesi chat dimulai.

ends_at

  • Tanggal dan waktu

Tersedia di objek item.

Tanggal dan waktu sesi chat berakhir.

participants

Tersedia di objek item.

Objek yang berisi informasi peserta panggilan.

participant_id

  • agent_id
  • virtual_agent_id

Tersedia di objek participants.

ID peserta chat.

  • Untuk agen manusia

    Meneruskan nilai kolom ID dalam objek agent_info di metadata sesi.

  • Untuk agen virtual

    Meneruskan nilai di kolom virtual_agent_id dalam objek participants di metadata sesi

  • Untuk pengguna akhir

    Meneruskan nilai kolom ID dalam objek end_user di metadata sesi.

  • Untuk pihak ketiga

    Meneruskan nomor telepon pihak ketiga, jika tersedia.

    Jika tidak, teruskan nilai null.

type

  • external
  • agent
  • virtual_agent

Tersedia di objek participants.

Jenis peserta panggilan.

  • Lulus agent saat peserta chat adalah agen.
  • Lulus external jika peserta chat adalah pengguna akhir atau pihak ketiga.
  • Lulus virtual_agent jika peserta chat adalah agen virtual.

state

  • connected
  • disconnected
  • accepted
  • dismissed
  • resumed

Tersedia di objek participants.

Status peserta saat ini dalam konferensi chat.

media_id

  • twilio_mediaID
  • nexmo_mediaID

Tersedia di objek participants.

ID untuk media sesi chat dari operator.

  • Lulus verifikasi twilio_mediaID saat pemrakarsa memulai atau mengirim chat dari nomor Twilio.
  • Lulus nexmo_mediaID saat pemrakarsa memulai atau mengirim chat dari nomor Nexmo.

dn

  • end_user_1
  • agent_1

Tersedia di objek participants.

Nomor direktori peserta.

agent_number

Tersedia di objek participants. Nomor agen.

name

Tersedia di objek participants. Nama agen.

alias

Tersedia di objek participants. Alias agen.

Transfer sesi chat

Transfer sesi chat bukan merupakan peristiwa chat yang berbeda. Sebaliknya, ini adalah payload yang menunjukkan bahwa transfer sesi chat telah terjadi. Bagian ini menampilkan payload transfer sesi chat yang dipicu saat agen keluar dari chat. Dalam contoh ini, nilai kolom initiator adalah agent_1, yang menunjukkan bahwa agen 1 memulai transfer. Dalam array participants, agent_1 memiliki status disconnected dan agent_2 memiliki status connected. Hal ini menunjukkan bahwa sesi telah dialihkan dari agen 1 ke agen 2, dengan agen 1 keluar dari percakapan dan agen 2 bergabung. Nilai kolom state keseluruhan dalam contoh ini adalah participantDisconnect, tetapi Anda dapat memodelkan sistem agar memiliki status keseluruhan transferred atau connected jika Anda mau. Anda juga dapat memodelkan sistem agar memiliki kolom tambahan untuk merepresentasikan transfer sesi secara lebih eksplisit—misalnya, transfer_id atau jenis peristiwa transfer khusus.

Contoh kode berikut menunjukkan payload peristiwa untuk transfer sesi:

{
  "queue_path_ids": "7/26",
  "queue_path_names": "Test/calls",
  "language": "en",
  "session_type_v2": "In-web",
  "chat_id": 208,
  "state": "participantDisconnect",
  "direction": "incoming",
  "initiator": "agent_1",
  "participants": [
    {
      "state": "connected",
      "type": "external",
      "media_id": "MBed9193af0a82486cbad069925b5a0b18",
      "dn": "end_user_5"
    },
    {
      "state": "disconnected",
      "type": "agent",
      "media_id": "MB05685c80e6af444faa1de5c5e48a26c7",
      "agent_number": "Uno numero",
      "name": "Admin UJET",
      "alias": "super_agent",
      "dn": "agent_1"
    },
    {
      "state": "connected",
      "type": "agent",
      "media_id": "MB5caad80c7d94477d9db9c5f1c3662768",
      "agent_number": "420",
      "name": "ajay1 ujet",
      "alias": "ajay1-alias",
      "dn": "agent_2"
    }
  ]
}