| Requires any of the roles: | SystemAdministrator, Manager, CallCenterDashboard |
| GET | /dashboard/call-center |
|---|
"use strict";
export class CallCenterDashboardAgent {
/** @param {{id?:string,name?:string,queues?:string[],agentState?:string,callState?:string,signInTime?:string,signInDuration?:string,percentAvailable?:string,avgBusyIn?:string,avgWrapUp?:string,dateOfLastCall?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
id;
/** @type {string} */
name;
/** @type {string[]} */
queues;
/** @type {string} */
agentState;
/** @type {string} */
callState;
/** @type {string} */
signInTime;
/** @type {string} */
signInDuration;
/** @type {string} */
percentAvailable;
/** @type {string} */
avgBusyIn;
/** @type {string} */
avgWrapUp;
/** @type {string} */
dateOfLastCall;
}
export class CallCenterDashboardQueue {
/** @param {{name?:string,numAgents?:number,numCallsQueued?:number,longestWaitingCall?:string,expectedWaitTime?:string,expectedHoldTime?:string,averageSpeedOfAnswer?:string,idleAgents?:number,unavailableAgents?:number}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
name;
/** @type {number} */
numAgents;
/** @type {number} */
numCallsQueued;
/** @type {string} */
longestWaitingCall;
/** @type {string} */
expectedWaitTime;
/** @type {string} */
expectedHoldTime;
/** @type {string} */
averageSpeedOfAnswer;
/** @type {number} */
idleAgents;
/** @type {number} */
unavailableAgents;
}
export class CallCenterDashboardCall {
/** @param {{id?:string,customer?:string,queue?:string,agent?:string,state?:string,duration?:string,hold?:string,extraInfo?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
id;
/** @type {string} */
customer;
/** @type {string} */
queue;
/** @type {string} */
agent;
/** @type {string} */
state;
/** @type {string} */
duration;
/** @type {string} */
hold;
/** @type {string} */
extraInfo;
}
export class CallCenterDashboard {
/** @param {{agents?:CallCenterDashboardAgent[],queues?:CallCenterDashboardQueue[],calls?:CallCenterDashboardCall[]}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {CallCenterDashboardAgent[]} */
agents;
/** @type {CallCenterDashboardQueue[]} */
queues;
/** @type {CallCenterDashboardCall[]} */
calls;
}
export class GetCallCenterDashboard {
/** @param {{accountId?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {string}
* @description The account ID to retrieve for */
accountId;
}
JavaScript 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: team.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
}
]
}