QM 即時通訊工作階段事件資料

本頁面說明 Contact Center AI Platform (CCAI Platform) 可匯出至品質管理 (QM) 應用程式的即時通訊工作階段事件資料。QM 即時通訊事件資料支援網頁 SDK 和行動 SDK。如要進一步瞭解如何將 CCAI Platform 與 QM 應用程式整合,請參閱「QM 和 SIPREC 整合」。

如需通話工作階段事件資料,請參閱「QM 通話工作階段事件資料」。

即時通訊工作階段事件和觸發條件

特定工作階段事件會觸發聊天工作階段資料匯出作業,將資料匯出至 QM 應用程式。本節列出即時通訊事件類型,並提供每個類型的會期事件酬載範例。

已開始對話

真人服務專員或虛擬服務專員開始對話時,就會觸發這個事件。事件酬載包含即時通訊的初始狀態,包括佇列、參與者和發起者相關資訊。

以下程式碼範例顯示事件酬載:

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

等待指派的即時通訊

當即時通訊工作階段進入佇列並等待指派時,系統會觸發這項事件。

以下程式碼範例顯示事件酬載:

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

已接受對話

真人服務專員或虛擬服務專員接受即時通訊時,就會觸發這個事件。 這是代理與即時通訊連線前,可選用的中繼事件。

以下程式碼範例顯示人工服務專員的事件酬載:

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

以下程式碼範例顯示虛擬服務專員的事件酬載:

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

已連線至即時通訊

當對話連線至真人服務專員或虛擬服務專員時,就會觸發這個事件。這可能是自動連線,或是由服務專員手動連線。

以下程式碼範例顯示人工服務專員的事件酬載:

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

以下程式碼範例顯示虛擬服務專員的事件酬載:

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

已關閉對話

如果聊天工作階段在建立完整連線前取消或終止 (例如未接受或提前結束),就會觸發這個事件。

以下程式碼範例顯示事件酬載:

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

已繼續對話

先前暫停或中止的即時通訊工作階段恢復時,就會觸發這個事件。酬載包含恢復對話時的狀態。

以下程式碼範例顯示事件酬載:

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

參與者已離開即時通訊

當一或多位參與者離開即時通訊工作階段時,就會觸發這個事件。這可能是指使用者、真人服務專員或虛擬服務專員離開對話。酬載包含參與者離開時的即時通訊狀態。

下列程式碼範例顯示使用者離開對話的事件酬載:

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

以下程式碼範例顯示人類服務專員離開即時通訊的事件酬載:

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

以下程式碼範例顯示虛擬代理程式離開對話的事件酬載:

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

對話已結束

當即時通訊工作階段結束時,系統就會觸發這項事件。可能是使用者、真人服務專員或虛擬服務專員結束對話。酬載包含即時通訊結束時的狀態,包括參與者,以及即時通訊連線和結束的時間戳記。

以下程式碼範例顯示人類服務專員和使用者離開對話時的事件酬載:

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

以下程式碼範例顯示虛擬服務專員和使用者離開對話的事件酬載:

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

下列程式碼範例顯示在佇列中等待時結束對話的事件酬載:

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

即時通訊工作階段事件欄位

下表說明 Contact Center AI Platform 匯出至 QM 應用程式的通話資料欄位。

一般欄位

欄位名稱

說明

條件

type

  • AgentState
  • ChatState

整體 JSON 酬載的事件類型。

  • 代理程式相關事件的傳遞 AgentState
  • 傳遞 ChatState,用於即時通訊相關事件。

item

含有活動資訊的物件。

對話狀態欄位

欄位名稱

說明

條件

chat_id

  • 即時通訊 ID

適用於 item 物件。

Contact Center AI 平台系統中的即時通訊工作階段 ID。

  • 在 Contact Center AI Platform 會議中繼資料中,傳遞主要物件的 ID 欄位值。

state

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

適用於 item 物件。

即時通訊工作階段的目前狀態。

direction

  • incoming

適用於 item 物件。

從聯絡中心角度來看,即時通訊工作階段的方向。

  • 當即時通訊工作階段為傳入時,會傳遞 incoming

initiator

  • agent_1
  • virtual_agent_2
  • end_user_5

適用於 item 物件。

啟動即時通訊狀態的當事人 ID。

  • 真人服務專員

    在工作階段中繼資料中,傳遞 agent_info 物件的 ID 欄位值。

  • 虛擬服務專員

    在工作階段中繼資料的 participants 物件中,傳遞 virtual_agent_id 欄位的值。

  • 使用者專用

    在工作階段中繼資料中,傳遞 end_user 物件的 ID 欄位值。

queue_path_ids

  • 佇列 ID 路徑

適用於 item 物件。

使用者在通話中與第一位服務專員通話前,所瀏覽的佇列路徑。

這個值是使用導覽佇列的佇列 ID 建構而成。

  • 這項功能僅適用於內送對話。

queue_path_names

  • 佇列名稱路徑

適用於 item 物件。

使用者在通話中與第一位服務專員通話前,所瀏覽的佇列路徑。

這個值是使用導覽佇列的佇列名稱建構而成。

  • 這項功能僅適用於內送對話。

language

  • 語言代碼

適用於 item 物件。

使用者所選語言的語言代碼。

  • 這項功能僅適用於內送對話。

queue_uuid

  • 佇列 ID

適用於 item 物件。

即時通訊已轉送至的佇列 UUID。

  • 這項功能僅適用於轉移至佇列的來電和即時通訊。

tenant

  • 執行個體名稱

適用於 item 物件。

主機代管即時通訊的執行個體名稱。

event_id

  • 活動 ID

適用於 item 物件。

即時通訊工作階段的 ID。

timestamp

  • UNIX 時間戳記

適用於 item 物件。

以 Unix Epoch 時間表示的即時通訊時間戳記

session_type_v2

  • In-web

適用於 item 物件。

表示 Web SDK 即時通訊工作階段。

support_number

  • 空值

  • 不適用於即時通訊。

connected_at

  • 日期和時間

適用於 item 物件。

即時通訊工作階段開始的日期和時間。

ends_at

  • 日期和時間

適用於 item 物件。

即時通訊工作階段結束的日期和時間。

participants

適用於 item 物件。

包含通話參與者資訊的物件。

participant_id

  • agent_id
  • virtual_agent_id

適用於 participants 物件。

即時通訊參與者的 ID。

  • 真人服務專員

    在工作階段中繼資料中,傳遞 agent_info 物件的 ID 欄位值。

  • 虛擬服務專員

    在工作階段中繼資料的 participants 物件中,傳遞 virtual_agent_id 欄位中的值

  • 使用者專用

    在工作階段中繼資料中,傳遞 end_user 物件的 ID 欄位值。

  • 第三方

    傳遞第三方電話號碼 (如有)。

    否則會傳遞 null 值。

type

  • external
  • agent
  • virtual_agent

適用於 participants 物件。

通話參與者類型。

  • 如果聊天室參與者是服務專員,則會傳遞 agent
  • 如果聊天室參與者是使用者或第三方,則會傳遞 external
  • 如果即時通訊參與者是虛擬服務專員,則會傳遞 virtual_agent

state

  • connected
  • disconnected
  • accepted
  • dismissed
  • resumed

適用於 participants 物件。

參與者在即時通訊會議中的目前狀態。

media_id

  • twilio_mediaID
  • nexmo_mediaID

適用於 participants 物件。

電信業者提供的即時通訊工作階段媒體 ID。

  • 當發起者透過 Twilio 號碼傳送或接收訊息時,系統會傳遞 twilio_mediaID
  • 發起者透過 Nexmo 號碼傳送或接收訊息時,會傳遞 nexmo_mediaID

dn

  • end_user_1
  • agent_1

適用於 participants 物件。

參與者的目錄號碼。

agent_number

適用於 participants 物件。服務專員的號碼。

name

適用於 participants 物件。代理程式的名稱。

alias

適用於 participants 物件。代理程式的別名。

轉移即時通訊工作階段

轉移對話工作階段並非獨立的對話事件。而是指出即時通訊工作階段已轉移的酬載。這個部分會顯示服務專員離開對話時觸發的對話工作階段轉移酬載。在本例中,initiator 欄位值為 agent_1,表示轉移是由服務專員 1 發起。在 participants 陣列中,agent_1 的狀態為 disconnectedagent_2 的狀態為 connected。這表示工作階段已從服務專員 1 轉移至服務專員 2,服務專員 1 離開即時通訊,服務專員 2 加入。在這個範例中,整體 state 欄位的值為 participantDisconnect,但您也可以視需要將系統的整體狀態設為 transferredconnected。您也可以將系統建模為具有額外欄位,更明確地表示工作階段轉移,例如 transfer_id 或專屬的轉移事件類型。

以下程式碼範例顯示工作階段轉移的事件酬載:

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