- Home
- /
- Article
Understand agent states
Agent states represent agent activities during the day. They allow supervisors to manage the productivity of their teams and determines when agents can accept calls using Webex Contact Center Desktop.
Agent availability states
The agent desktop experience provides sophisticated state management capabilities across multiple communication channels. This allows agents to independently control their availability and status on telephony, chat, email, and social media channels, improving flexibility and operational efficiency in handling customer interactions.
You can select the agent state by selecting it from the drop-down menu or by entering at least 3 characters in the search bar.
Initial State Visibility
- Agents begin in an idle state, with the telephony channel state prominently displayed on the desktop.
- Other channel states (chat, email, social) are also visible, and hovering over each state reveals the current status and duration for all four channel types.
- The system uses timers and codes (for example, "lunch" as an idle state) to track how long an agent has been in a particular state per channel.
Set Availability
- Agents can set themselves to available across all channels simultaneously, which resets the timers for each channel.
- Alternatively, agents can set availability on specific channels only, for example, being available solely on telephony while remaining idle or at lunch on chat, email, and social channels.
- This selective availability ensures agents receive contacts only on the channels they are prepared to handle.
Only when your state is set to available will any communication such as voice call, chat, email, social messaging conversation, or campaign be routed to you.
When you reload Desktop while in the available state, the idle state is displayed briefly before the available state is restored and the timer is reset to 00:00. The delay is subject to network connectivity.
As part of the enhanced sign-in process, the system monitors the WebRTC service status after sign-in. If the service fails, the agent's state is automatically changed to Idle to prevent calls from being routed to an unreachable agent.
Manage channel-specific availability
You can now manage your availability for specific channels independently, at a granular level, rather than applying a single global state to all media types.
- All—Use this toggle to become available or unavailable on all assigned channels at once.
- Voice—Toggle to receive or block incoming phone calls.
- Chat, Email, Social—Toggle these switches to manage your presence for specific digital media. For example, you can be available for Chat and Email while remaining unavailable for Voice calls.
- State Status: Each channel displays its current state (example, "State: Default"). This refers to the state configured by the administrator for that specific channel. When you toggle channel to ON, you receive requests for that specific media type based on the configured default routing.
Click Apply to activate your changes. This ensures you do not accidentally toggle your state while handling an interaction.
Starting April 30, 2026, for a period of 60 days (June 30, 2026), an administrative toggle will be available within Control Hub that allows tenant administrators to enable or disable the Granular Agents state control feature at the tenant level. This admin toggle will remain available for a period of 60 days after which the Granular state control will be GA meaning available to all agents.
Handling Calls and Interactions
- When a call is connecting on the telephony channel, the agent’s state changes to reserved. Once it offers or gets connected, stated changes to engaged.
- During telephony engagement, the agent remains available on other channels, allowing concurrent handling of chat, email, or social interactions.
- After call completion, the agent enters a wrap-up state specific to telephony, during which they finalize the interaction.
- Once wrap-up is complete and a wrap code is selected, the agent returns to available status on telephony, with timers reflecting the time spent in each state.
Handling multiple chat channels
Agents can manage multiple chat sessions concurrently, with clear state transitions reflecting engagement and wrap-up phases. For example, consider an agent having a multimedia profile allowing three concurrent chat channels. This configuration enables the agent to engage with multiple chat customers simultaneously. Upon accepting the first chat, the agent’s chat channel state changes to engaged, and the system indicates that one of the three available chat sessions is in use. When a second chat request arrives and is accepted, the agent is now handling two chats concurrently, with the chat channel showing engagement and utilization of two out of three chat sessions.
- After completing chat interactions, the agent enters a wrap state on the channel where the interaction occurred. The wrap state indicates the agent is performing post-chat tasks such as logging notes or updating records.
- The system displays the predominant or rolled-up state as wrap when no other active interactions exist.
- A timer shows how long the agent has been in the wrap state, providing supervisors and agents with visibility into post-interaction processing time.
Pending Idle States and Transitions
- Agents can set themselves to pending idle states (for example, pending lunch) while still engaged or in wrap-up on a channel.
- This pending status signals the agent’s intention to move to idle after completing the current interaction.
- The agent will not receive new contacts on any channel once idle but remains visible as working on the current channel until wrap-up finishes.
- Hovering over the state shows the pending status and the elapsed time since the idle intention was set.
If you're in the available or idle state without any active conversations, your supervisor can sign you out.
WebRTC and Browser-Based Desktop
- The WXCC agent desktop is browser-based and WebRTC-enabled, supporting real-time communication across channels.
- Supported browsers include Chrome, Firefox, and Edge, ensuring broad compatibility.
- WebRTC architecture facilitates direct communication and media handling, enhancing call quality and desktop responsiveness.
RONA (Ring No Answer) Behavior Optimization
RONA occurs when you don't accept a voice call, chat, email, or social messaging conversation request within the time frame specified by your administrator. When RONA occurs, the contact request is returned to the queue, and the agent status automatically changes from Available to Idle.
RONA handling is optimized by isolating the effect to the specific channel where the no-answer occurred. For example, if an agent misses a telephony call without setting themselves idle, only the telephony channel state changes to idle. The agent remains available on other channels such as chat or email, minimizing disruption and maintaining workload balance. This channel-specific RONA behavior enhances agent efficiency and supervisor visibility.
In addition to these manually selectable idle reasons, the system may automatically set your state to Idle with specific reasons (Idle Aux Codes) due to various conditions, including non-acceptance of contacts, device issues, or system errors (example, 'Invalid_Number' or 'Channel_Failure'). For a comprehensive list of these system-assigned states and the actions you can take, refer to the System-Assigned Agent States and Error Conditions (Idle Aux Codes) section later in this article.
While interacting with a customer, you can select an idle state reason. For example, you can select this option during a chat session with the customer or when responding to an email message. To learn more about which idle state reason to use, contact your supervisor.
- The enhanced sign-in process, with input validation, reduces RONA occurrences by preventing sign-ins with invalid or unassigned dial numbers or extensions.
- The maximum time to accept a voice call request is 18 seconds, and 30 seconds for a digital channel request (chat, email, or social messaging conversation). These are configurable by your administrator. For more information, see Manage RONA timeouts.
Your administrator configures the maximum time available to accept an incoming request from any channel. If the configured maximum time is lapsed, RONA occurs, and the request is returned to the queue if you don't accept it within the specified time.
When RONA occurs, a popover appears with the following options:
-
Go To Idle —When you click this, your state changes to the default idle reason configured by your administrator.
-
Go To Available —When you click this, your state changes accordingly. The available state indicates that you are ready to accept and respond to contact requests routed to you.
You can't change your current state to RONA manually.
To accept a voice call, chat, email, or social messaging conversation request, you must change your state to Available manually.
If Desktop isn't the active browser window or tab, you're alerted with a toaster notification about a RONA. For more information, see System requirements for Webex Contact Center.
System-assigned Agent States and Error Conditions (Idle Aux Codes)
Beyond the manually selectable 'Available' and administrator-configured 'Idle' states, the system can automatically assign specific 'Idle' states, often referred to as Idle Auxiliary Codes (Aux Codes). These states are crucial for understanding why contacts may not have been delivered to you, including various error conditions, system issues (such as network failures or invalid configurations), or situations where you did not accept a contact. The table below provides a comprehensive list of these system-assigned states, their descriptions, and the immediate actions you can take to manage your availability or address the underlying issue. This section directly addresses scenarios like a Webex Calling outage affecting agent state, ensuring you know what state you're in and what steps to take.
| Idle Aux Code | Description | Popover details |
|---|---|---|
| Agent_Busy | Indicates your device was busy, preventing call delivery. | A message appears notifying the user that the device is busy. The availability status changes to Idle, and the user can choose either Set as Available or Cancel. |
| Agent_Declined | Indicates you declined a contact offered to you because you are occupied with another activity when a contact is received. | A message appears notifying the user that the contact is declined. The availability status changes to Idle, and the user can choose either Set as Available or Cancel. |
| Agent_Unavailable | Indicates the device associated with the dial number is either offline or unreachable. | A message appears notifying the user of a missed call because the dial number is not linked to the device. The availability status changes to Idle, and the user can choose either Set as Available or Cancel. |
| RONA | Indicates you did not respond when a call was delivered, causing it to time out after the configured RONA timer expired. | A message appears notifying the user of a missed call. The availability status changes to Idle, and the user can choose either Set as Available or Cancel. |
| Channel_Failure | Indicates temporary issues like network failures or unknown error prevented call delivery. In these cases, the system will try up to three more times to deliver the call. If all attempts fail, the agent is set to Idle. | A message appears to notify the user of an unexpected event. The availability status changes to Idle, and the user can choose either Set as Available or Cancel. |
| Invalid_Number | Indicates the dial number logged in with is invalid; update the dial number your profile before changing the state to Available. | A message appears to notify the user that the dial number is invalid and prompting them to update it in their profile. |
You’ll see your synchronized agent state if your administrator has set up the Microsoft Teams connector for your organization and turned on presence sync. When this feature is active, you might see a message on your Desktop stating, "Your state changed to <state name> due to state sync with your collaboration tool." This message indicates Webex Contact Center Desktop automatically updates your agent state to reflect your presence status in the integrated collaboration application (for example, Microsoft Teams). This ensures consistency across your communication platforms.
Your user profile displays the status of the Microsoft Teams connector and presence sync. For more information, see Understand your user profile.
When you sign in for the first time, there could be a delay of up to 40 minutes for the presence to start synchronizing. This delay doesn't affect agent operations. Also, there could be a delay of up to 12 seconds for the presence to synchronize across Microsoft Teams and Webex Contact Center.
If WebRTC disconnects after you sign in, a warning icon or message appears on your profile avatar to alert you of the connection issue. The system disables the Set as Available (all channels) option (or the All toggle) to prevent routing voice calls that cannot connect. The system restores your ability to set yourself as available on all channels only after WebRTC successfully reconnects.
If WebRTC disconnects during an active session, the system takes the following actions to ensure proper call routing:
- If you are currently "Available" on the Voice channel, the system automatically switches your Voice state to Idle. The system disables both the ‘Set as Available (all channels)’ option and the individual Voice toggle. These selections remain disabled until WebRTC successfully reconnects.
- If you use a multimedia profile that only includes the Voice channel, the system disables the ‘Available’ selection in the simple availability selector until WebRTC reconnects.
Some of the other available states are summarized in the table below:
| State | Description |
|---|---|
| Reserved | In this state, the system selects the agent for an interaction and offers the request (inbound or outbound). This state is temporary and lasts only until the agent accepts the request, rejects it, or the offer times out. For campaign agents reserved with a reservation call, the voice channel displays the state as 'Reserved' rather than 'Engaged.' |
| Wrap-Up | The agent performs post-interaction tasks, such as entering notes or updating customer records. Upon completing these tasks, the agent automatically transitions back to an Available state, provided they are not still handling another interaction in that same channel. In multiparty conferences, a 'Wrapup-Assist' mode exists for reporting purposes. This mode is specific to multiparty scenarios and is not considered a standard agent state. |
| Engaged Other | The agent is currently busy with an interaction on a different channel, and their multimedia profile prevents them from accepting new requests on this channel. This state behaves differently based on the agent's assigned profile:
|
If you select an Idle status while currently Engaged or in Wrap-Up, the system places you in a "Pending Idle" mode. The system then stops routing new interactions to that specific channel immediately. Once you conclude your final interaction and finish any Wrap-Up work, the system automatically transitions you to your chosen Idle state. However, for non-voice channels (Chat, Email, and Social), you can directly set your state to Not Ready even if you still have active interactions in that media type.
Agent State Transitions
The following table summarizes the different agent state transitions per channel type.
| State | Transitioned to | Description |
|---|---|---|
| Wrap-up | Available | Upon completion of the wrap-up process, the agent’s status transitions to Available. |
| Wrap-up | Idle | Upon completion of the wrap-up process, the agent’s status transitions to Idle (Pending-Idle). |
| Available | EngagedOther | The agent is currently engaged in a different channel type, which prevents them from being available in this channel type. |
| Available | Logged out | Agent logs out. |
| EngagedOther | Available | Interaction causing EngagedOther state ends. |
| Idle | Agent sets state to idle while in EngagedOther. |
Voice call states
These are the states that the system assigns to you based on the channel through which you communicate, such as voice (call control), email, or chat states. These show in the interaction control pane. For example, when you place a customer call on hold, the interaction control pane displays the state call on hold when you put a customer call on hold.
Based on your interactions with the caller (customer) or another agent, the system assigns the following voice call states:
-
Ringing—Indicates that the incoming call popover is visible.
-
Call on Hold—Indicates that you've placed the customer on hold.
-
Consult Requested—Indicates that you've initiated a consult call.
-
Consulting—Indicates that you're consulting with another agent.
-
Consult on Hold—Indicates that you've placed the agent you're consulting on hold.
-
Conference—Indicates a three-way communication between you, the customer, and another agent.
-
Wrap-Up—Indicates that you've ended your voice call with the customer.
Email and chat states
The system initiates chat and email request states, which change as you communicate.
Email state
-
Wrap-up—Indicates that you've ended your email communication with the customer.
Chat and social channel states
The following are the chat and social channel request states:
-
Conference Requested—Indicates that you started a conference chat.
-
Conference—Indicates a three-way communication between you, the customer and another agent.
-
Wrap-up—Indicates that you've ended your chat, or social messaging conversation with the customer.
State and connected timers
For all Desktop channels, the timers that are displayed are divided into the following categories: state, idle, and connected timers.
State timers
The state timer is displayed in the availability state field, and it tells how long you've been in the current state. These timers are set to run for these instances: available, RONA, and any idle states configured by your administrator.
The timer resets to 00:00 when you change states (for example, from available to any idle state in the state drop-down list).
Idle states
If you're in the idle state and switch to another idle state, the timer displays the time you're in the current idle state and the overall time you were in the idle states. For example, if you're in the idle state for 10 minutes and then take a Lunch Break (configured idle state) for 20 minutes, the timer then displays as 20:00/30:00.
Connected timers
When you accept a request for a phone, chat, email, or social messaging interaction, a timer appears in the task list window next to the request.
Along with the connected timer, the interaction control pane displays another timer dependent on the system's state and how you proceed with your discussion. For example, when you place a call on hold, the timer displays the hold time next to the Consult on Hold condition.
The agent interaction history pane shows the total duration of your connection with the customer, encompassing the time from the start of the contact until the communication concludes. For example, if you engage in a conversation with a customer and consult with another agent before ending the interaction, the connected time accounts for both the duration of your connection with the customer and the time spent consulting with the other agent.
|
Use case |
Availability state in view |
Timer |
Comments |
|---|---|---|---|
|
Idle—Default state when you sign in. |
Idle |
00:00 |
N/A |
|
Idle to Idle—When you manually change to any other idle states. For example, from Idle to Lunch Break. |
New idle state (Lunch Break) |
00:00/00:00 |
Consider that you're in the idle state for 10 minutes, and then you take a Lunch Break (configured idle state) of 20 minutes. Then, the timer displays as 20:00/30:00. |
|
Idle to Available—Manually switch to receive contact requests depending on your channel capacity. |
Available |
00:00 |
To accept any call, chat, email, or social messaging conversation requests, you must set your state to available. |
|
Available to Engaged—Switches automatically when you accept a contact request. |
Engaged |
No timer |
When you've accepted the contact request, the available state chages to the engaged label. |
|
Engaged to Idle—Manually switch to any idle state to not accept any contact requests during your interaction with the customer. |
Engaged |
No timer |
You can set your state to Idle, if you don't want any incoming call, chat, email, or social messaging conversation requests during your interaction with the customer. During your interaction with the customer, if you choose to change to any idle state, the icon of the engaged label changes from Engaged in the Available state to Engaged in the Idle state. |
|
Engaged to Available—Switches automatically when the your interaction ends. |
Available |
00:00 |
Displays the total time which includes, the available state time when you accepted the content request, the time that has elapsed since you accepted the request until the end of the interaction (connected timer), and wrap-up time. |
|
Idle to Available—Engaged |
Engaged |
No timer |
If your administrator has defined the Agent Available After Outdial as Yes, after an outdial call ends, your status is set as available even if you had made the outdial call in the idle state. |
|
Idle to Idle—Engaged |
Engaged |
No timer |
If your administrator has defined the Agent Available After Outdial as No, after an outdial call ends, your status is set as idle. |
|
Engaged to RONA—Switches automatically when you have not accepted a contact request within the specified time. |
Engaged to RONA |
Engaged—No timer RONA—00:00 |
You must take action on the Redirection on No Answer (RONA) pop over and the state timer starts from 00:00. For example, consider that you're in the available state for 2 minutes and accepted a voice call request. During your interaction with the customer around 5 minutes, you receive an email contact request. If you don't accept the email request within the specified time, the RONA pop over displays. You can choose either Go To Idle or Go To Available. If you choose either of the options, the state timer starts from 00:00. |
Your system time must be synchronized with the network time for the agent state timer, the contact request connected timer, and the contact wrap-up timer to be displayed correctly.
Mid-call monitoring states
Mid-call monitoring allows you to monitor agents who are on the phone with customers while signed in as a supervisor. The mid-call monitoring state changes depending on your actions on the call.
Mid-call monitoring isn't supported within Desktop.
The system sets the following mid-call monitoring states:
-
Monitoring—This indicates that you've either started or resumed mid-call monitoring and displays only if mid-call monitoring is successful.
-
Monitoring Paused—This indicates that you've paused mid-call monitoring and displays only if mid-call monitoring is paused and not successful.
For more information, visit Monitor agents on a call.