Show / Hide Table of Contents

    KPI Definitons

    Important

    All KPIs are updated on new events or in every minute

    Calls

    JSON definition

    • The realtime feed provided by Buzzeasy returns data in JSON syntax. This consumed by third party applications such as a wallboard display
    {
        "calls": {
            "abandoned30mins": 1,
            "abandoned24h": 1,
            "abandonedToday": 1,
            "waiting": 1,
            "connected": 5,
            "handled30mins": 1,
            "handled24h": 1,
            "handledToday": 1,
            "serviceLevel30mins": 0,
            "serviceLevel24h": 0,
            "serviceLevelToday": 1,
            "dialSucceededToday": 0,
            "dialSucceeded24h": 0,
            "dialSucceeded30mins": 0,
            "dialFailedToday": 0,
            "dialFailed24h": 0,
            "dialFailed30mins": 0,
            "dialling": 0,
            "callbacksWaiting": 0,
            "callbackSuccessRateToday": 50,
            "completedCallbacksToday": 4,
            "successfulCallbacksToday": 2,
            "failedCallbacksToday": 2,
            "callbackSuccessRate24h": 50,
            "completedCallbacks24h": 4,
            "successfulCallbacks24h": 2,
            "failedCallbacks24h": 2,
            "callbackSuccessRate30mins": 0,
            "completedCallbacks30mins": 0,
            "successfulCallbacks30mins": 0,
            "failedCallbacks30mins": 0
        }
    

    Windowing (30 mins, 24h, today) is based on the call drop time

    abandoned{30mins,24h,today} (inbound)

    Number of calls that were dropped in the following scenarios:

    • In the queue before finding an agent
    • Ringing at the agent side, but customer not waiting until the agent picks up
    • Dropped in transfer waiting for the another agent

    waiting (inbound)

    Number of calls waiting in:

    • Queue
    • Ringing at the agent, but not picked up yet
    • Calls currently transferring and waiting for another agents are NOT counted

    connected (inbound & outbound)

    Number of calls that are in talking state at:

    • Agent
    • Call currently transferring and waiting for another agents are NOT counted, once a call is connected again to the agent, it is counted.
    • Call connected to the Auto Attendant/Bot or IVR are NOT counted

    handled{30mins,24h,today} (inbound)

    Number of calls that finished the conversation after talking to an agent.

    • Calls being transferred to another agent are counted. If the target agent handles the call successfully, it is then counted as a another call.

    serviceLevel{30mins,24h,today} (inbound)

    [Service Level] = [Handled in defined service level] / [Total number of inbound calls]

    Total number of inbound calls = abandoned+handled

    [Handled in defined service level] = [handled] where [queue time]+[agent ring time] < [Service level]

    dialSucceeded{30mins,24h,today} (outbound)

    Number of calls that finished the conversation after talking to a customer or still talking to the customer.

    dialFailed{30mins,24h,today} (outbound)

    Number of calls when the customer was not reached.

    dialling (outbound)

    The number of calls:

    • Ringing at the customer, but not picked up yet

    callbacksWaiting (outbound)

    The number of callbacks waiting to be answered.

    • Callback assigned to an agent are not counted as waiting

    callbackSuccessRate{30mins,24h,today} (outbound)

    [Callback Success Rate] = [Successful Callbacks] / [Completed Callbacks] * 100

    completedCallbacks{30mins,24h,today} (outbound)

    Number of callbacks that were successful or failed.

    successfulCallbacks{30mins,24h,today} (outbound)

    Number of callbacks that finished the conversation after talking to a customer or still talking to the customer.

    failedCallbacks{30mins,24h,today} (outbound)

    Number of failed callbacks when the customer was not reached.

    callStatsByChannel

    JSON

    "callStatsByChannel": [
            {
                "channelId": 172,
                "channelName": "Test Voice Channel 1",
                "abandoned30mins": 1,
                "abandoned24h": 1,
                "abandonedToday": 1,
                "waiting": 1,
                "connected": 5,
                "handled30mins": 1,
                "handled24h": 1,
                "handledToday": 1,
                "serviceLevel30mins": 0,
                "serviceLevel24h": 0,
                "serviceLevelToday": 1,
                "dialSucceededToday": 0,
                "dialSucceeded24h": 0,
                "dialSucceeded30mins": 0,
                "dialFailedToday": 0,
                "dialFailed24h": 0,
                "dialFailed30mins": 0,
                "dialling": 0,
                "callbacksWaiting": 0,
                "callbackSuccessRateToday": 50,
                "completedCallbacksToday": 4,
                "successfulCallbacksToday": 2,
                "failedCallbacksToday": 2,
                "callbackSuccessRate24h": 50,
                "completedCallbacks24h": 4,
                "successfulCallbacks24h": 2,
                "failedCallbacks24h": 2,
                "callbackSuccessRate30mins": 0,
                "completedCallbacks30mins": 0,
                "successfulCallbacks30mins": 0,
                "failedCallbacks30mins": 0
            }
    

    Same as above for a given channel

    queueStat{now,30mins,24h,today}

    JSON:

    "queueStat30mins": {
            "longestQueueTime": "00:01:32",
            "avgQueueTime": "00:00:51",
            "longestTotalCallTime": "00:02:00",
            "avgTotalCallTime": "00:00:43",
            "longestCustomerRingTime": "00:00:00",
            "avgCustomerRingTime": "00:00:00"
        },
    

    longestQueueTime

    The maximum waiting time of calls (inbound) in the following state:

    • In queue
    • Ringing at agent

    avgQueueTime

    Average of waiting time of calls (inbound) in the following state:

    • In queue
    • Ringing at agent

    longestTotalCallTime

    Maximum total length of all in/outbound calls in the channel. Total call time includes the ringing time, queue time and connected time.

    [!IMPORTANT]

    queueStatNow longestTotalCallTime = longest call currently in the queue or connected

    avgTotalCallTime

    The average of all total call times. Total call time includes the ringing time, queue time and connected time.

    longestCustomerRingTime

    Outbound only

    The longest time it takes to call the customers before they answer.

    avgCustomerRingTime

    The average time it takes the customers to answer for outbound calls

    Windowing:

    Type Criteria
    now Calls currently in the queue
    30mins Calls currently in queue or left the queue (abandoned, handled) within 30 mins
    24h Calls currently in queue or left the queue (abandoned, handled) within 24h
    today Calls currently in queue or left the queue (abandoned, handled) from midnight

    queueStatsByChannel{now,30mins,24h,today}

    JSON:

    "queueStatsByChannel30mins": [
            {
                "channelId": 172,
                "channelName": "Test Voice Channel 1",
                "longestQueueTime": "00:01:32",
                "avgQueueTime": "00:00:51",
                "longestTotalCallTime": "00:02:00",
                "avgTotalCallTime": "00:00:43",
                "longestCustomerRingTime": "",
                "avgCustomerRingTime": ""
            }
        ],
    

    Same as above, but bound to Channel.

    agents

    JSON:

    "agents": [
            {
                "resourceId": "5f15a1bab27ff1000104a490",
                "resourceName": "Supervisor Test01",
                "state": "Break",
                "callsHandled30mins": 1,
                "callsHandled24h": 1,
                "callsHandledToday": 10,
                "timeInState": "01:27:46",
                "breakName": "Lunch break",
                "callsProgress": 0,
                "chatsProgress": 0,
                "emailsProgress": 0,
                "fbMessengerProgress": 0,
                "whatsAppProgress": 0,
                "smsProgress": 0
            }
        ],
    

    state

    Current state of the agent

    callsHandled{30mins,24h,today) (inbound)

    Number of calls

    • where windowing overlaps the time between agent connect and call ended/transfer time

    Call ended:

    • Dropped by agent
    • Dropped by customer
    • Transferred away

    timeInState

    the time from when they just joined that state to now.

    breakName

    Selected break name in case state is any break type

    {calls,chats,emails,fbMessenger,wahatsApp,sms}Progress

    number of conversations of the given media type present at the agent currently

    dispCodeStats{30mins,24h}

    JSON:

    "dispCodeStats30mins": [
            {
                "dispositionCode": "None",
                "count": 1
            },
    ...
            {
                "dispositionCode": "XXXX",
                "count": 1
            },
    ...
            {
                "dispositionCode": "RONA",
                "count": 1
            }
        ],
    

    Disposition Code count of each closure code assigned (for that segment) within the window

    timestamp

    latest update on the entire data structure

    Sorry, your browser does not support inline SVG. article updatedarticle updated12/13/2021 2:28:32 PM (UTC)12/13/2021 2:28:32 PM (UTC)
    Feedback     Back to top Copyright © Geomant