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 .xml suffix or ?format=xml

HTTP + XML

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/xml
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<CallCenterDashboard xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Dashboard">
  <Agents>
    <CallCenterDashboardAgent>
      <AgentState>String</AgentState>
      <AvgBusyIn>String</AvgBusyIn>
      <AvgWrapUp>String</AvgWrapUp>
      <CallState>String</CallState>
      <DateOfLastCall>String</DateOfLastCall>
      <Id>String</Id>
      <Name>String</Name>
      <PercentAvailable>String</PercentAvailable>
      <Queues xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <d4p1:string>String</d4p1:string>
      </Queues>
      <SignInDuration>String</SignInDuration>
      <SignInTime>String</SignInTime>
    </CallCenterDashboardAgent>
  </Agents>
  <Calls>
    <CallCenterDashboardCall>
      <Agent>String</Agent>
      <Customer>String</Customer>
      <Duration>String</Duration>
      <ExtraInfo>String</ExtraInfo>
      <Hold>String</Hold>
      <Id>String</Id>
      <Queue>String</Queue>
      <State>String</State>
    </CallCenterDashboardCall>
  </Calls>
  <Queues>
    <CallCenterDashboardQueue>
      <AverageSpeedOfAnswer>String</AverageSpeedOfAnswer>
      <ExpectedHoldTime>String</ExpectedHoldTime>
      <ExpectedWaitTime>String</ExpectedWaitTime>
      <IdleAgents>0</IdleAgents>
      <LongestWaitingCall>String</LongestWaitingCall>
      <Name>String</Name>
      <NumAgents>0</NumAgents>
      <NumCallsQueued>0</NumCallsQueued>
      <UnavailableAgents>0</UnavailableAgents>
    </CallCenterDashboardQueue>
  </Queues>
</CallCenterDashboard>