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 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

HTTP + 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
		}
	]
}