The Agent Request feature allows a customer to initiate a request on the web that results in a call from an agent.
Cisco SocialMiner works in a Contact Center Enterprise (CCE) solution to process the request from its inception through the delivery of the callback.
![]() Note | Unified WIM also offers callback and delayed callback. You can use either Agent Request or Unified WIM—but not both. |
The Agent Request feature can be used only if the customer or a partner develops a custom application. There is sample code on the DevNet (formerly Cisco Developer Network) that you can use to understand how to start building your custom application to submit callback requests to SocialMiner.
SocialMiner provides the Callback API used by a custom application to request a phone call from a contact center agent.
The API works in conjunction with SocialMiner callback feeds, campaigns, and notifications to pass callback requests to the contact center for routing.
The Callback API supports the use of Call variables and ECC variables for callback requests. Call variables and ECC variables send customer-specific information with the request. When you create a callback contact, the social contact associated with the callback contact includes all of the specified variables as extension fields.
Both Cisco Finesse and CTI OS support Agent Request.
You must install and configure SocialMiner before you can implement Agent Request. SocialMiner must be geographically co-located with one side of the Media Routing Peripheral Gateway (MR PG).
The customer or partner must build a custom application for the Agent Request feature. See Sample Code to Create Customer Callback Request
SocialMiner is always deployed in a DMZ. You must open the port you have configured for the MR PG. See Set up the Media Routing PG and PIM.
The flow proceeds as follows:
If | Then |
---|---|
The customer is available |
The customer receives and answers the call, and speaks to the agent |
The customer is busy when the callback occurs |
The agent receives a busy tone |
The customer does not answer when the callback occurs |
The agent hears ringing |
The customer cancels the callback before an agent is selected |
There is no impact on the agent |
The following information describes how to configure Agent Request for a Unified CCE deployment.
Configure Unified CCE before you configure SocialMiner.
Use these Configuration Manager tools and procedures to configure Agent Request.
Step 1 | From Cisco Unified CCE Tools, select Peripheral Gateway Setup. |
Step 2 | On the Components Setup screen, in the Instance Components panel, select the PG Instance component. If the PG does not exist, clickAdd. If it exists, click Edit. |
Step 3 | In the Peripheral Gateways Properties screen, click Media Routing. Then click Next. |
Step 4 | Click Yes at the prompt to stop the service. |
Step 5 | From the
Peripheral Gateway Component Properties screen, click
Add, select the next PIM, and configure with the
Client Type of Media Routing as follows.
|
Step 6 | On the Peripheral Gateway Component Properties screen, enter the Logical Controller ID that you recorded when you configured the Media Routing PG and PIM. |
Step 7 | Accept defaults and click Next until the Setup Complete screen opens. |
Step 8 | At the Setup Complete screen, check Yes to start the service. Then Click Finish. |
Step 9 | Click Exit Setup. |
Step 10 | Repeat from Step 1 for Side B. |
Step 1 | Click Administration. |
Step 2 | In the System Administration panel, click CCE Configuration for Multichannel Routing. |
Step 3 | Click Edit. |
Step 4 | Check the Enabled checkbox. |
Step 5 | Enter the hostnames or IP addresses of the Side A and Side B MR PG so that SocialMiner will only allow connections from those hosts. |
Step 6 | Update the Port (if necessary) to match the port set up on the MR PG, or leave the default. The valid range is 10000 - 65535. |
Step 7 | Click Save. |
Step 1 | Click Configuration. |
Step 2 | On the Feeds panel, click Add. |
Step 3 | For Type, select Callback. |
Step 4 | Name the feed. |
Step 5 | For Reply Template, retain the default, No reply template. |
Step 6 | Configure the feed to automatically tag all callback requests that come in on that feed. For example, autotag with 'sendtocontactcenter'. Make a note of the tag. It is used to trigger the notification to CCE. |
Step 7 | Click Save. |
Step 1 | Click Configuration. |
Step 2 | On the Campaigns panel, click Add. |
Step 3 | Name the campaign. |
Step 4 | Enter an optional description. |
Step 5 | Make no selection in the Chat Invitation Feed drop-down list. |
Step 6 | Locate the Callback feed in the Available panel and move it to Selected. |
Step 7 | Click Save. |
Step 1 | Click Administration. |
Step 2 | On the Notifications panel, click Add. |
Step 3 | For Type, select Connection to CCE. |
Step 4 | Name the notification. |
Step 5 | From the Campaigns drop-down list, select the campaign that you created for the callback. |
Step 6 | In the Tags field, enter the tag that is automatically applied to callback requests by the feed. In our example 'sendtocontactcenter'. |
Step 7 | In the Dialed Number/Script Selector field, enter the dialed number string that you have configured. |
Step 8 | In the Media Routing Domain field, accept the default, Cisco_Voice. |
Step 9 | Click
Save.
For additional SocialMiner configuration information, see the SocialMiner User Guide. |
This illustration shows a sample script. The key below explains the nodes.
Start node: Create the Start node by selecting a new Routing Script from the Script Editor.
Set Variable (Call.Calling Line ID) node: (optional). If required, you can set the CallingLineID (CLID/ ANI) variable to implement a "dial-plan," pre-pending a set of digits to the phone number provided by the customer so that it can be correctly routed. For example, it is often necessary to add 9 to the phone number to reach an outside line. In other cases, more pre-pended digits may be required to reach the end customer.
You can also set up Unified Communications Manager Route Patterns to respond to a certain set of digits by routing the call to an outside line with a specified area code. To implement a dial-plan, add a Set Variable node before the queue, as shown in this example. In this case, a 9 is pre-pended to the customer phone number using the built-in concatenate function.
Queue to Skill Group node: The Agent Request call can be queued against one or more Skill Groups, Precision Queues, or a queue-to-agent node. In the example script, the call is queued against a single skill group.
Set Variable (Call.Estimated Wait Time) node: A customer who requests a voice callback might want to know approximately how long it will be before the call is returned. You can configure voice callback to provide an estimate of the wait time back to the customer. The estimated wait time is calculated once, when the call enters the queue. The time is not updated as the position in the queue changes.
The default estimated wait time algorithm is based on a running five minute window of the rate of calls leaving the queue. Any calls that are routed or abandoned during the previous 5 minutes are taken into account as part of the rate leaving queue. For Precision Queues, the rate leaving queue represents the rate at which calls are delivered or abandoned from the entire precision queue, not any individual recision Queue steps. The algorithm computes the wait time for each of the queues against which the call is queued (Skill Groups or Precision Queues) and then returns the minimum estimated wait time. Queue to Agent is not supported.
While the queue builds, the small number of calls in the queue makes the estimated wait time less accurate and the value fluctuates rapidly. As the queue operates with more calls over time, the estimated wait time is more accurate and consistent. If CCE does not have enough data to calculate EWT, the callback API returns a value of -1. Customers must determine how their custom applications handle this situation.
Note that the built-in function also applies to inbound calls that queue.
Wait node: The wait period before an agent becomes available.
End node: The script ends if no agent becomes available.
![]() Note | You cannot copy and paste this code to achieve a working application. It is a only a guideline. |
For more information about how to use the Callback API, see the SocialMiner Developer Guide.
Step 1 | Retrieve the
feed id by entering this URL in a browser:
https://<SocialMiner_Hostname_or_Ip>/ccp-webapp/ccp/feed.
In the example output below, note that the value in the <name> field is "Callback." Look for the number of the feed id identified at the end of the refURL path (in this case, it is 100000) just before the </refURL> tag. Copy this number. <feeds> <Feed> <changeStamp>0</changeStamp> <name>Callback</name> <pushFeedURL>https://128.107.81.27/ccp/callback/feed/100000</pushFeedURL> <refURL>https://128.107.81.27/ccp-webapp/ccp/feed/100000</refURL> <status>1</status> <tags> <tag>trial</tag> </tags> <type>10</type> </Feed> </feeds> |
Step 2 | Access the sample application from DevNet: https://developer.cisco.com/web/socialminer. |
Step 3 | Enter values in the fields: |
Step 4 | Click Call me back. |
Cisco Unified Intelligence Center CCE reports include data for Agent Requests
![]() Note | Agent requests that fail before being routed to CCE will not be included in the CCE solution-level reports. The SocialMiner search function can be used to identify these requests. |
Call Type Skill Group and Skill Group metrics are not counted in the same way. The skill group metric treats each call as agent-initiated; therefore, Calls Answered and Calls Handled are not incremented. AgentOutCallsTime, AgentOutCalls, AgentOutCallsTalkTime, AgentOutCallsOnHold, and AgentOutCallsOnHoldTime are incremented.
-The direction in the Agent Real Time table is listed as Outbound.
For custom reporting, the Termination Call Detail records contain a PeripheralCallType of 41 -Voice Callback.
Calls which do not successfully connect to a customer have a call disposition of 10 - Disconnect/Drop no answer. This includes agent request calls to busy numbers.