Evo Voice

<back to all web services

GetCallCenterDashboard

Returns the call center dashboard data

Requires Authentication
Requires any of the roles:SystemAdministrator, Manager
The following routes are available for this service:
GET/dashboard/call-center
import Foundation
import ServiceStack

/**
* Returns the call center dashboard data
*/
// @Api(Description="Returns the call center dashboard data")
public class GetCallCenterDashboard : IPost, Codable
{
    /**
    * The account ID to retrieve for
    */
    // @ApiMember(Description="The account ID to retrieve for")
    public var accountId:String?

    required public init(){}
}

public class CallCenterDashboard : Codable
{
    public var agents:[CallCenterDashboardAgent] = []
    public var queues:[CallCenterDashboardQueue] = []
    public var calls:[CallCenterDashboardCall] = []

    required public init(){}
}

public class CallCenterDashboardAgent : Codable
{
    public var id:String?
    public var name:String?
    public var queues:[String] = []
    public var agentState:String?
    public var callState:String?
    public var signInTime:String?
    public var signInDuration:String?
    public var percentAvailable:String?
    public var avgBusyIn:String?
    public var avgWrapUp:String?
    public var dateOfLastCall:String?

    required public init(){}
}

public class CallCenterDashboardQueue : Codable
{
    public var name:String?
    public var numAgents:Int?
    public var numCallsQueued:Int?
    public var longestWaitingCall:String?
    public var expectedWaitTime:String?
    public var expectedHoldTime:String?
    public var averageSpeedOfAnswer:String?
    public var idleAgents:Int?
    public var unavailableAgents:Int?

    required public init(){}
}

public class CallCenterDashboardCall : Codable
{
    public var id:String?
    public var customer:String?
    public var queue:String?
    public var agent:String?
    public var state:String?
    public var duration:String?
    public var hold:String?
    public var extraInfo:String?

    required public init(){}
}


Swift GetCallCenterDashboard DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .json suffix or ?format=json

To embed the response in a jsonp callback, append ?callback=myCallback

HTTP + JSON

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

GET /dashboard/call-center HTTP/1.1 
Host: evovoice.io 
Accept: application/json
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length

{"agents":[{"id":"String","name":"String","queues":["String"],"agentState":"String","callState":"String","signInTime":"String","signInDuration":"String","percentAvailable":"String","avgBusyIn":"String","avgWrapUp":"String","dateOfLastCall":"String"}],"queues":[{"name":"String","numAgents":0,"numCallsQueued":0,"longestWaitingCall":"String","expectedWaitTime":"String","expectedHoldTime":"String","averageSpeedOfAnswer":"String","idleAgents":0,"unavailableAgents":0}],"calls":[{"id":"String","customer":"String","queue":"String","agent":"String","state":"String","duration":"String","hold":"String","extraInfo":"String"}]}