ConfigurationTo configure a virtual queue (VQ) for your existing inbound voice services, follow these steps:# Select the scenario that is used for the distribution of calls to the services for which you would like to enable VQ. In the example shown, the scenario selected is called "Inbound Service."[[File:Scenarios-Voice-Inbound-Service.png|800px|thumbnail|center|Select the scenario that will be used for virtual queue]]# Using the '''Save As''' button, save this scenario under a new, unique name. This name can be anything you like.[[File:Save-Scenario-As.png|800px|thumbnail|center|Save the scenario with a new name to create a duplicate scenario with your VQ settings saved]]# Within this new scenario, select the [[scenario-builder-reference-guide/FindAgent|Find Agent]] block that is used to distribute calls to the particular service for which you would like to enable VQ.[[File:VQ-Find-Agent.png|800px|thumbnail|center|The Find Agent block is where you will specify VQ properties]]# Then specify the estimated wait time (EWT) threshold, in seconds. The VQ option will be offered only if the EWT of a given call exceeds the threshold value entered here. In the example shown, the threshold value is zero (0) seconds.[[File:virtual-queue-tutorial-image2.PNG|thumb|600px|center|Virtual Queue option in Find Agent block]]In the ''Callback button'' drop-down menu, select a number. This number is the dial pad digit that the caller will press to accept the VQ option.[[File:Callback-Button.png|800px|thumbnail|center|Select the numeric digit that the caller should press to accept the VQ option]]# In the Prompts list that appears again, select the EWT Announcement you just created, and click '''Select'''.The Virtual Queue availability announcement will be used to offer the VQ option to the caller. For example, the announcement might include ''To hang up now and have us call you back once a representative is available, press [digit] at any time'', where ''digit'' is the digit selected in Step 5. To create this announcement, follow the instructions given in Step 6 of this procedure:# In the Prompts list that appears again, select the new announcement you just created, and click '''Select'''.Your Prompts section of the Find Agent block now includes the two announcements you created.[[File:VQ-Prompts.png|800px|thumbnail|center|Find Agent > Properties > Prompts]]For the ''Callback'' exit of the Find Agent block, insert a [[scenario-builder-reference-guide/RequestCallback|Request Callback]] block and define its parameters.[[File:Find-Agent-Request-Callback.png|800px|thumbnail|center|In the Find Agent block, below the Callback exit, place a Request Callback block]]The parameters are described as follows:* '''Title text''' - The name of this block* '''Confirmation prompt''' - Confirms the callback request (e.g., “Thank you. We will call you back.”)* '''Callback phone''' - Specifies the phone number for the callback. If callbacks will always be made to the phone that was used to make the original call, you can use the ''$(item.from)'' variable here, which is the caller ID of the original call. If, however, you want to give the customer a choice of providing another phone number for callback, you should use a combination of scenario blocks [[scenario-builder-reference-guide/SetVariable|Set Variable]], [[scenario-builder-reference-guide/Menu|Menu]], and [[scenario-builder-reference-guide/CollectDigits|Collect Digits]] as illustrated in the [[virtual-queue-tutorial/ScenarioExample|example offered in this tutorial]]. In this case, set the ''Callback phone'' to the new variable that you define in the [[scenario-builder-reference-guide/SetVariable|Set Variable]] block.* '''Cancel request after''' - Specifies the amount of time (in seconds) after which the virtual calls will be terminated if no matching agents are found* '''Wait for agent to become available''' - If checked, a callback will be made after explicit agent reservation; otherwise the EWT-based callback mechanism will be used. See [[Virtual-queue-tutorial/Overview#How_It_Works|How It Works]] for more information.* '''Start dialing''' - For the EWT-based callback mechanism, this parameter specifies how far in advance (in seconds) of the EWT expiration moment the callback attempt will be made; note that if an agent becomes available earlier for the given call, the callback will be placed at that moment. * '''No Answer Timeout''' - Specifies how long (in seconds) the block will wait for the customer to answer the callback attempt before taking the ''No Answer'' exit[[File:Request-Callback-Properties-54.PNG|thumb|800px|center|Request Callback block]]The normal exit of the Request Callback block is taken when the callback attempt is answered before the specified ''No Answer Timeout'' expires. Instead of connecting the answered call directly to the Find Agent block for immediate distribution to an agent, it is good practice to use an IVR prompt to announce to the customer that this is the requested callback. This explains the purpose of the call to the customer and, more importantly, prepares the caller for a possible short waiting time in case an agent is not immediately available.In the [[virtual-queue-tutorial/ScenarioExample|Scenario Example]] given in this guide, the [[scenario-builder-reference-guide/Menu|Menu block]] is used to make such an announcement and to wait for customer’s confirmation before passing this call to the Find Agent block for distribution.Use the conditional exits of the [[scenario-builder-reference-guide/RequestCallback|Request Callback block]] to define what happens when the callback attempt meets various "abnormal" conditions, such as ''No Answer'' or ''Busy''. In the [[virtual-queue-tutorial/ScenarioExample|Scenario Example]] given in this guide, the call is terminated under any such conditions, which is shown via the [[scenario-builder-reference-guide/Exit|Exit]] blocks placed beneath each conditional exit. [[File:Request-Callback-Exits.png|800px|thumbnail|center|Exit blocks are placed beneath each conditional exit of the Request Callback block]]# Save the new scenario by clicking the '''Save''' button at the bottom of Scenario Builder.# Log in as Admin.The configured VQ will not be operational until it is explicitly activated for the desired services.# Before you activate the VQ function for all other services where it may have been configured, consider using the Virtual Queue Report to monitor VQ performance within the service where it has been activated and to adjust its parameters if necessary. See the ''Reporting Reference Guide'' for more information on reports. See also section [[virtual-queue-tutorial/Reporting|Reporting]] for more information.As with any other significant service configuration change, the new scenario should be tried in a test environment.# Pick a time when your call center is closed for business and replace your current production scenario with the VQ-enabled scenario in the [[contact-center-administrator-guide/Dial-in|dial-in scenario entries]] where the current scenario is used. (These scenario entries will appear in the Scenario Entries tab when you select your current scenario in the [[contact-center-administrator-guide/Voice|Scenarios > Voice]] list view. To make the replacement, click one of the listed dial-in scenario entries and select the new scenario from the ''Scenario'' drop-down list.)* When configured, virtual queue callback is attempted only once. If you would like to offer virtual queue during specific times, you may use an [[Scenario-builder-reference-guide/ScenarioBlocks/If|If block]] to inspect time of day. If the call occurs during a time that you would want to offer virtual queue, use a [[Scenario-builder-reference-guide/ScenarioBlocks/FindAgent|Find Agent]] block with the virtual queue option enabled. If the call time occurs outside of the desired time, use a [[Scenario-builder-reference-guide/ScenarioBlocks/FindAgent|Find Agent]] block that does not offer virtual queue.