判斷客服人員 ACW(聯絡工作後) 時間 - Amazon Connect

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

判斷客服人員 ACW(聯絡工作後) 時間

客服人員事件串流中沒有事件可告訴您聯絡人處於聯絡後工作 (ACW) 狀態的時間長度,以及客服人員進行 的延伸時間長度ACW。不過,客服人員事件串流中還有其他資料可供您用來了解這個項目。

首先,識別聯絡人何時輸入 ACW。以下是執行方法:

  1. 辨別聯絡案例和客服人員之間的對話何時ENDED

  2. 檢視事件的 StateStartTimeStamp

例如,在以下代理程式事件串流輸出中,聯絡人會在 "StateStartTimestamp": "2019-05-25T18:55:27.017Z" 進入ACW狀態。

提示

在客服人員事件串流中,事件會以反向時間順序列出。我們建議從每個範例的底部開始,閱讀以下範例。

{ "AWSAccountId": "012345678901", "AgentARN": "arn:aws:connect:us-east-1:012345678901:instance/aaaaaaaa-bbbb-cccc-dddd-111111111111/agent/agent-ARN", "CurrentAgentSnapshot": { "AgentStatus": { "ARN": "arn:aws:connect:us-east-1:012345678901:instance/aaaaaaaa-bbbb-cccc-dddd-111111111111/agent-state/agent-state-ARN", "Name": "Available", //This just refers to the status that the agent sets manually in the CCP. It means they are ready to handle contacts, not say, on Break. "StartTimestamp": "2019-05-25T18:43:59.049Z" }, "Configuration": { "AgentHierarchyGroups": null, "FirstName": "(Removed)", "LastName": "(Removed)", "RoutingProfile": { "ARN": "arn:aws:connect:us-east-1:012345678901:instance/aaaaaaaa-bbbb-cccc-dddd-111111111111/routing-profile/routing-profile-ARN", "DefaultOutboundQueue": { "ARN": "arn:aws:connect:us-east-1:012345678901:instance/aaaaaaaa-bbbb-cccc-dddd-111111111111/queue/queue-ARN-for-BasicQueue", "Name": "BasicQueue" }, "InboundQueues": [ { "ARN": "arn:aws:connect:us-east-1:012345678901:instance/aaaaaaaa-bbbb-cccc-dddd-111111111111/queue/queue-ARN-for-BasicQueue", "Name": "BasicQueue" }, { "ARN": "arn:aws:connect:us-east-1:012345678901:instance/aaaaaaaa-bbbb-cccc-dddd-111111111111/queue/queue-ARN-for-PrimaryQueue", "Name": "PrimaryQueue" } ], "Name": "Basic Routing Profile" }, "Username": "(Removed)" }, "Contacts": [ { "Channel": "VOICE", "ConnectedToAgentTimestamp": "2019-05-25T18:55:21.011Z", "ContactId": "ContactId-1", //This is the same contact the agent was working on when their state was CONNECTED (below). Since it's still the same contact but they aren't connected, we know the contact is now in ACW state. "InitialContactId": null, "InitiationMethod": "OUTBOUND", //This indicates how the contact was initiated. OUTBOUND means the agent initiated contact with the customer. INBOUND means the customer initiated contact with your center. "Queue": { "ARN": "arn:aws:connect:us-east-1:012345678901:instance/aaaaaaaa-bbbb-cccc-dddd-111111111111/queue/queue-ARN-for-BasicQueue", "Name": "BasicQueue" }, "QueueTimestamp": null, "State": "ENDED", //This shows the conversation has ended. "StateStartTimestamp": "2019-05-25T18:55:27.017Z" //This is the timestamp for the ENDED event (above), which is when the contact entered ACW state. } ] }, "EventId": "EventId-1", "EventTimestamp": "2019-05-25T18:55:27.017Z", "EventType": "STATE_CHANGE", //This shows that the state of the contact has changed; above we can see the conversation ENDED. "InstanceARN": "arn:aws:connect:us-east-1:012345678901:instance/aaaaaaaa-bbbb-cccc-dddd-111111111111", "PreviousAgentSnapshot": { "AgentStatus": { "ARN": "arn:aws:connect:us-east-1:012345678901:instance/aaaaaaaa-bbbb-cccc-dddd-111111111111/agent-state/agent-state-ARN", "Name": "Available", //This just refers to the status that the agent sets manually in the CCP. It means they were ready to handle contacts, not say, on Break. "StartTimestamp": "2019-05-25T18:43:59.049Z" }, "Configuration": { "AgentHierarchyGroups": null, "FirstName": "(Removed)", "LastName": "(Removed)", "RoutingProfile": { "ARN": "arn:aws:connect:us-east-1:012345678901:instance/aaaaaaaa-bbbb-cccc-dddd-111111111111/routing-profile/routing-profile-ARN", "DefaultOutboundQueue": { "ARN": "arn:aws:connect:us-east-1:012345678901:instance/aaaaaaaa-bbbb-cccc-dddd-111111111111/queue/queue-ARN-for-BasicQueue", "Name": "BasicQueue" }, "InboundQueues": [ { "ARN": "arn:aws:connect:us-east-1:012345678901:instance/aaaaaaaa-bbbb-cccc-dddd-111111111111/queue/queue-ARN-for-BasicQueue", "Name": "BasicQueue" }, { "ARN": "arn:aws:connect:us-east-1:012345678901:instance/aaaaaaaa-bbbb-cccc-dddd-111111111111/queue/queue-ARN-for-PrimaryQueue", "Name": "PrimaryQueue" } ], "Name": "Basic Routing Profile" }, "Username": "(Removed)" }, "Contacts": [ { "Channel": "VOICE", //This shows the agent and contact were talking on the phone. "ConnectedToAgentTimestamp": "2019-05-25T18:55:21.011Z", "ContactId": "ContactId-1", //This shows the agent was working with a contact identified as "ContactId-1". "InitialContactId": null, "InitiationMethod": "OUTBOUND", "Queue": { "ARN": "arn:aws:connect:us-east-1:012345678901:instance/aaaaaaaa-bbbb-cccc-dddd-111111111111/queue/queue-ARN-for-BasicQueue", "Name": "BasicQueue" }, "QueueTimestamp": null, "State": "CONNECTED", //This shows the contact was CONNECTED to the agent, instead of say, MISSED. "StateStartTimestamp": "2019-05-25T18:55:21.011Z" //This shows when the contact was connected to the agent. } ] }, "Version": "2019-05-25" }

接下來,判斷聯絡人何時離開 ACW。以下是執行方法:

  1. 尋找 CurrentAgentSnapshot 沒有聯絡人的位置,以及 中列出的聯絡人狀態PreviousAgentSnapshot等於 ENDED。

    由於 STATE_CHANGE 事件也會在代理程式組態變更時發生,例如當指派不同的路由設定檔時,此步驟會確認您有正確的事件。

  2. 尋找 的位置 EventType = "STATE_CHANGE"。

  3. 檢視它的 EventTimeStamp

例如,在下列代理程式事件串流檔案中,聯絡人ACW留在 "EventTimestamp": "2019-05-25T18:55:32.022Z"。

{ "AWSAccountId": "012345678901", "AgentARN": "arn:aws:connect:us-east-1:012345678901:instance/aaaaaaaa-bbbb-cccc-dddd-111111111111/agent/agent-ARN", "CurrentAgentSnapshot": { "AgentStatus": { "ARN": "arn:aws:connect:us-east-1:012345678901:instance/aaaaaaaa-bbbb-cccc-dddd-111111111111/agent-state/agent-state-ARN", "Name": "Available", //This just refers to the status that the agent sets manually in the CCP. It means they are ready to handle contacts, not say, on Break. "StartTimestamp": "2019-05-25T18:43:59.049Z" }, "Configuration": { "AgentHierarchyGroups": null, "FirstName": "(Removed)", "LastName": "(Removed)", "RoutingProfile": { "ARN": "arn:aws:connect:us-east-1:012345678901:instance/aaaaaaaa-bbbb-cccc-dddd-111111111111/routing-profile/routing-profile-ARN", "DefaultOutboundQueue": { "ARN": "arn:aws:connect:us-east-1:012345678901:instance/aaaaaaaa-bbbb-cccc-dddd-111111111111/queue/queue-ARN-for-BasicQueue", "Name": "BasicQueue" }, "InboundQueues": [ { "ARN": "arn:aws:connect:us-east-1:012345678901:instance/aaaaaaaa-bbbb-cccc-dddd-111111111111/queue/queue-ARN-for-BasicQueue", "Name": "BasicQueue" }, { "ARN": "arn:aws:connect:us-east-1:012345678901:instance/aaaaaaaa-bbbb-cccc-dddd-111111111111/queue/queue-ARN-for-PrimaryQueue", "Name": "PrimaryQueue" } ], "Name": "Basic Routing Profile" }, "Username": "(Removed)" }, "Contacts": [] //Since a contact isn't listed here, it means ACW for ContactId-1 (below) is finished, and the agent is ready for a new contact to be routed to them. }, "EventId": "477f2c4f-cd1a-4785-b1a8-97023dc1229d", "EventTimestamp": "2019-05-25T18:55:32.022Z", //Here's the EventTimestamp for the STATE_CHANGE event. This is when the contact left ACW. "EventType": "STATE_CHANGE", //Here's the STATE_CHANGE "InstanceARN": "arn:aws:connect:us-east-1:012345678901:instance/aaaaaaaa-bbbb-cccc-dddd-111111111111", "PreviousAgentSnapshot": { "AgentStatus": { "ARN": "arn:aws:connect:us-east-1:012345678901:instance/aaaaaaaa-bbbb-cccc-dddd-111111111111/agent-state/agent-state-ARN", "Name": "Available", //This just refers to the status that the agent sets manually in the CCP. It means they were at work, not say, on Break. "StartTimestamp": "2019-05-25T18:43:59.049Z" }, "Configuration": { "AgentHierarchyGroups": null, "FirstName": "(Removed)", "LastName": "(Removed)", "RoutingProfile": { "ARN": "arn:aws:connect:us-east-1:012345678901:instance/aaaaaaaa-bbbb-cccc-dddd-111111111111/routing-profile/routing-profile-ARN", "DefaultOutboundQueue": { "ARN": "arn:aws:connect:us-east-1:012345678901:instance/aaaaaaaa-bbbb-cccc-dddd-111111111111/queue/queue-ARN-for-BasicQueue", "Name": "BasicQueue" }, "InboundQueues": [ { "ARN": "arn:aws:connect:us-east-1:012345678901:instance/aaaaaaaa-bbbb-cccc-dddd-111111111111/queue/queue-ARN-for-BasicQueue", "Name": "BasicQueue" }, { "ARN": "arn:aws:connect:us-east-1:012345678901:instance/aaaaaaaa-bbbb-cccc-dddd-111111111111/queue/queue-ARN-for-PrimaryQueue", "Name": "PrimaryQueue" } ], "Name": "Basic Routing Profile" }, "Username": "(Removed)" }, "Contacts": [ { "Channel": "VOICE", "ConnectedToAgentTimestamp": "2019-05-25T18:55:21.011Z", "ContactId": "ContactId-1", //This is the ContactId of the customer the agent was working on previously. "InitialContactId": null, "InitiationMethod": "OUTBOUND", "Queue": { "ARN": "arn:aws:connect:us-east-1:012345678901:instance/aaaaaaaa-bbbb-cccc-dddd-111111111111/queue/queue-ARN-for-BasicQueue", "Name": "BasicQueue" }, "QueueTimestamp": null, "State": "ENDED", //The ACW for ContactId-1 has ended. "StateStartTimestamp": "2019-05-25T18:55:27.017Z" } ] }, "Version": "2019-05-25" }

最後,若要計算聯絡處於 ACW 狀態的時間,以及客服人員花了多少時間在處理聯絡上:

  • 從 "StateStartTimestamp": "2019-05-25T18:55:27.017Z" 減去 "EventTimestamp": "2019-05-25T18:55:32.022Z"。

在此範例中,客服人員花了 5.005 秒ACW進行 ContactId-1。