Agent Status API

The purpose of the Agent Availability call is to determine the availability status of the agent. This value depends on the number of currently active engagements, the total number of agent slots in the queue, and the queue threshold value. (Agent slots equal the number of agents available in the relevant agent groups. Queue threshold is configured per agent group.)

You should not directly instantiate the AgentStatusAPI class. Instead use the AgentStatsuAPI builder class

  1. AgentAvailabilityBuilder
  2. AgentStatusAPI
  3. AgentStatusResponse
  4. Example
Public Methods

Use the following public builder methods to setup the parameters needed to pass the request to the Nuance Messaging Systems. You cannot invoke a builder instance method until you call all of the required fields.

Invoke the Builder instance build method to create an AgentStatusAPI object.

Public Methods
Public Methods
  • public boolean isAvailable()

    Availability is based on the request content and related program configuration and utilization. Is there an agent or queue slot available at the time of the request. Return values are true or false.

  • public boolean isInHOP()

    Hours of operation are defined at the site or agent group level. Return values are true or false.

  • public String getStatus()

    This call gets current agent status. Values are Constant.ONLINE, Constant.OFFLINE, and Constant.BUZY : When agents are active, status is online. When agents are logged in but not active, status is busy. When no agents are logged in, status is offline.

Public Methods
  • public int getStatusCode()

    getStatusCode method returns following values which denotes the status of this request.


    400: Request has incorrect parameters.

    403: The user does not have sufficient privileges to use the API or to access the requested site.

    500: Server error.



	 String siteID = "your site id";
	 String businessUnitID = "your business Unit id";
	 String agentGroupID = "your agent group id";


	 AgentStatusAPI agentAvailability = AgentStatusAPI.builder().siteID(siteID).businessUnitID(businessUnitID).agentGroupID(agentGroupID)
				.setSuccessListener(new OnSuccessListener<AgentStatusResponse>() {
					@Override
					public void onResponse(AgentStatusResponse response) {
					}
				})
				.setErrorListener(new OnErrorListener() {
					@Override
					public void onErrorResponse(Response response) {
					}
				})
				.build();
				agentAvailability.getAgentAvailabilityStatus();