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.*;

public class dtos
{

    /**
    * Returns the call center dashboard data
    */
    @Api(Description="Returns the call center dashboard data")
    public static class GetCallCenterDashboard implements IPost
    {
        /**
        * The account ID to retrieve for
        */
        @ApiMember(Description="The account ID to retrieve for")
        public String accountId = null;
        
        public String getAccountId() { return accountId; }
        public GetCallCenterDashboard setAccountId(String value) { this.accountId = value; return this; }
    }

    public static class CallCenterDashboard
    {
        public ArrayList<CallCenterDashboardAgent> agents = null;
        public ArrayList<CallCenterDashboardQueue> queues = null;
        public ArrayList<CallCenterDashboardCall> calls = null;
        
        public ArrayList<CallCenterDashboardAgent> getAgents() { return agents; }
        public CallCenterDashboard setAgents(ArrayList<CallCenterDashboardAgent> value) { this.agents = value; return this; }
        public ArrayList<CallCenterDashboardQueue> getQueues() { return queues; }
        public CallCenterDashboard setQueues(ArrayList<CallCenterDashboardQueue> value) { this.queues = value; return this; }
        public ArrayList<CallCenterDashboardCall> getCalls() { return calls; }
        public CallCenterDashboard setCalls(ArrayList<CallCenterDashboardCall> value) { this.calls = value; return this; }
    }

    public static class CallCenterDashboardAgent
    {
        public String id = null;
        public String name = null;
        public ArrayList<String> queues = null;
        public String agentState = null;
        public String callState = null;
        public String signInTime = null;
        public String signInDuration = null;
        public String percentAvailable = null;
        public String avgBusyIn = null;
        public String avgWrapUp = null;
        public String dateOfLastCall = null;
        
        public String getId() { return id; }
        public CallCenterDashboardAgent setId(String value) { this.id = value; return this; }
        public String getName() { return name; }
        public CallCenterDashboardAgent setName(String value) { this.name = value; return this; }
        public ArrayList<String> getQueues() { return queues; }
        public CallCenterDashboardAgent setQueues(ArrayList<String> value) { this.queues = value; return this; }
        public String getAgentState() { return agentState; }
        public CallCenterDashboardAgent setAgentState(String value) { this.agentState = value; return this; }
        public String getCallState() { return callState; }
        public CallCenterDashboardAgent setCallState(String value) { this.callState = value; return this; }
        public String getSignInTime() { return signInTime; }
        public CallCenterDashboardAgent setSignInTime(String value) { this.signInTime = value; return this; }
        public String getSignInDuration() { return signInDuration; }
        public CallCenterDashboardAgent setSignInDuration(String value) { this.signInDuration = value; return this; }
        public String getPercentAvailable() { return percentAvailable; }
        public CallCenterDashboardAgent setPercentAvailable(String value) { this.percentAvailable = value; return this; }
        public String getAvgBusyIn() { return avgBusyIn; }
        public CallCenterDashboardAgent setAvgBusyIn(String value) { this.avgBusyIn = value; return this; }
        public String getAvgWrapUp() { return avgWrapUp; }
        public CallCenterDashboardAgent setAvgWrapUp(String value) { this.avgWrapUp = value; return this; }
        public String getDateOfLastCall() { return dateOfLastCall; }
        public CallCenterDashboardAgent setDateOfLastCall(String value) { this.dateOfLastCall = value; return this; }
    }

    public static class CallCenterDashboardQueue
    {
        public String name = null;
        public Integer numAgents = null;
        public Integer numCallsQueued = null;
        public String longestWaitingCall = null;
        public String expectedWaitTime = null;
        public String expectedHoldTime = null;
        public String averageSpeedOfAnswer = null;
        public Integer idleAgents = null;
        public Integer unavailableAgents = null;
        
        public String getName() { return name; }
        public CallCenterDashboardQueue setName(String value) { this.name = value; return this; }
        public Integer getNumAgents() { return numAgents; }
        public CallCenterDashboardQueue setNumAgents(Integer value) { this.numAgents = value; return this; }
        public Integer getNumCallsQueued() { return numCallsQueued; }
        public CallCenterDashboardQueue setNumCallsQueued(Integer value) { this.numCallsQueued = value; return this; }
        public String getLongestWaitingCall() { return longestWaitingCall; }
        public CallCenterDashboardQueue setLongestWaitingCall(String value) { this.longestWaitingCall = value; return this; }
        public String getExpectedWaitTime() { return expectedWaitTime; }
        public CallCenterDashboardQueue setExpectedWaitTime(String value) { this.expectedWaitTime = value; return this; }
        public String getExpectedHoldTime() { return expectedHoldTime; }
        public CallCenterDashboardQueue setExpectedHoldTime(String value) { this.expectedHoldTime = value; return this; }
        public String getAverageSpeedOfAnswer() { return averageSpeedOfAnswer; }
        public CallCenterDashboardQueue setAverageSpeedOfAnswer(String value) { this.averageSpeedOfAnswer = value; return this; }
        public Integer getIdleAgents() { return idleAgents; }
        public CallCenterDashboardQueue setIdleAgents(Integer value) { this.idleAgents = value; return this; }
        public Integer getUnavailableAgents() { return unavailableAgents; }
        public CallCenterDashboardQueue setUnavailableAgents(Integer value) { this.unavailableAgents = value; return this; }
    }

    public static class CallCenterDashboardCall
    {
        public String id = null;
        public String customer = null;
        public String queue = null;
        public String agent = null;
        public String state = null;
        public String duration = null;
        public String hold = null;
        public String extraInfo = null;
        
        public String getId() { return id; }
        public CallCenterDashboardCall setId(String value) { this.id = value; return this; }
        public String getCustomer() { return customer; }
        public CallCenterDashboardCall setCustomer(String value) { this.customer = value; return this; }
        public String getQueue() { return queue; }
        public CallCenterDashboardCall setQueue(String value) { this.queue = value; return this; }
        public String getAgent() { return agent; }
        public CallCenterDashboardCall setAgent(String value) { this.agent = value; return this; }
        public String getState() { return state; }
        public CallCenterDashboardCall setState(String value) { this.state = value; return this; }
        public String getDuration() { return duration; }
        public CallCenterDashboardCall setDuration(String value) { this.duration = value; return this; }
        public String getHold() { return hold; }
        public CallCenterDashboardCall setHold(String value) { this.hold = value; return this; }
        public String getExtraInfo() { return extraInfo; }
        public CallCenterDashboardCall setExtraInfo(String value) { this.extraInfo = value; return this; }
    }

}

Java 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
		}
	]
}