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


export class NodeParameterMap
{
    [key:string] : NodeParameter;

    public constructor(init?: Partial<NodeParameterMap>) { (Object as any).assign(this, init); }
}


export class CallCenterDashboardAgent
{
    public id: string;
    public name: string;
    public queues: string[];
    public agentState: string;
    public callState: string;
    public signInTime: string;
    public signInDuration: string;
    public percentAvailable: string;
    public avgBusyIn: string;
    public avgWrapUp: string;
    public dateOfLastCall: string;

    public constructor(init?: Partial<CallCenterDashboardAgent>) { (Object as any).assign(this, init); }
}

export class CallCenterDashboardQueue
{
    public name: string;
    public numAgents: number;
    public numCallsQueued: number;
    public longestWaitingCall: string;
    public expectedWaitTime: string;
    public expectedHoldTime: string;
    public averageSpeedOfAnswer: string;
    public idleAgents: number;
    public unavailableAgents: number;

    public constructor(init?: Partial<CallCenterDashboardQueue>) { (Object as any).assign(this, init); }
}

export class CallCenterDashboardCall
{
    public id: string;
    public customer: string;
    public queue: string;
    public agent: string;
    public state: string;
    public duration: string;
    public hold: string;
    public extraInfo: string;

    public constructor(init?: Partial<CallCenterDashboardCall>) { (Object as any).assign(this, init); }
}

export class CallCenterDashboard
{
    public agents: CallCenterDashboardAgent[];
    public queues: CallCenterDashboardQueue[];
    public calls: CallCenterDashboardCall[];

    public constructor(init?: Partial<CallCenterDashboard>) { (Object as any).assign(this, init); }
}

/** @description Returns the call center dashboard data */
// @Api(Description="Returns the call center dashboard data")
export class GetCallCenterDashboard implements IPost
{
    /** @description The account ID to retrieve for */
    // @ApiMember(Description="The account ID to retrieve for")
    public accountId: string;

    public constructor(init?: Partial<GetCallCenterDashboard>) { (Object as any).assign(this, init); }
}

TypeScript 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: 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
		}
	]
}