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); }
}

/**
* Returns the call center dashboard data
*/
// @Api(Description="Returns the call center dashboard data")
export class GetCallCenterDashboard implements IPost
{
    /**
    * 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: 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
		}
	]
}