Requires any of the roles: | SystemAdministrator, Manager |
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 } ] }