Requires any of the roles: | SystemAdministrator, Manager |
GET | /dashboard/call-center |
---|
import java.math.*
import java.util.*
import net.servicestack.client.*
/**
* Returns the call center dashboard data
*/
@Api(Description="Returns the call center dashboard data")
open class GetCallCenterDashboard : IPost
{
/**
* The account ID to retrieve for
*/
@ApiMember(Description="The account ID to retrieve for")
var accountId:String? = null
}
open class CallCenterDashboard
{
var agents:ArrayList<CallCenterDashboardAgent> = ArrayList<CallCenterDashboardAgent>()
var queues:ArrayList<CallCenterDashboardQueue> = ArrayList<CallCenterDashboardQueue>()
var calls:ArrayList<CallCenterDashboardCall> = ArrayList<CallCenterDashboardCall>()
}
open class CallCenterDashboardAgent
{
var id:String? = null
var name:String? = null
var queues:ArrayList<String> = ArrayList<String>()
var agentState:String? = null
var callState:String? = null
var signInTime:String? = null
var signInDuration:String? = null
var percentAvailable:String? = null
var avgBusyIn:String? = null
var avgWrapUp:String? = null
var dateOfLastCall:String? = null
}
open class CallCenterDashboardQueue
{
var name:String? = null
var numAgents:Int? = null
var numCallsQueued:Int? = null
var longestWaitingCall:String? = null
var expectedWaitTime:String? = null
var expectedHoldTime:String? = null
var averageSpeedOfAnswer:String? = null
var idleAgents:Int? = null
var unavailableAgents:Int? = null
}
open class CallCenterDashboardCall
{
var id:String? = null
var customer:String? = null
var queue:String? = null
var agent:String? = null
var state:String? = null
var duration:String? = null
var hold:String? = null
var extraInfo:String? = null
}
Kotlin GetCallCenterDashboard DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
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: text/jsv
HTTP/1.1 200 OK Content-Type: text/jsv 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 } ] }