Question

What is an 8x8 Contact Center platform switch?

Applies To 

  • 8x8 Contact Center
  • Platform Switch 

Answer

A platform switch occurs at our datacenter. It is an event where a tenant (the instance of the Contact Center agents log into) is moved from a primary platform to a secondary platform within the datacenter. There is no downtime associated with a platform switch since all logged-in agents are only required to log out and log back in. End customers calling/chatting/emailing to the tenant see no impact.

Why is a platform switch necessary during off-hours?

A platform switch for scheduled or emergency unscheduled maintenance during off business hours is done in order to complete software/hardware upgrades and other general system maintenance. These events are normally communicated in advance with upgrades that have a change to the user environment or to introduce new features. System maintenance can also happen during normally scheduled maintenance windows of Sunday and Thursday nights between 9:00 p.m. - 3:00 a.m. Pacific Time for general system upkeep such as adding system memory or other capacity related issues.

Why is a platform switch necessary during business hours?

In order to provide business/operational continuity, a platform switch for unscheduled maintenance during normal business hours may be inevitable and required to address an issue that cannot wait for an off-hours maintenance window. These switches are only done during business hours to proactively address an issue that could potentially disrupt services if not addressed immediately or to address issues that are alerting or reporting to be impacting ongoing services at that time.

What to expect, and what do agents need to do?

During scheduled maintenance events, logged in agents will receive a pop-up message 15 minutes prior to the maintenance event as a courtesy reminder. The pop-up message does not interrupt service and the agent should simply close the message after reading it. In addition to the notification message, a red alert bar also shows up at the top of the control panel alerting agents and reminding them to exhaust the interactions waiting in the queue. No other actions are necessary.
If the end users are not logged in at the time when the broadcast notification message is sent, they will see the message next time when they log in, advertising about the platform switch in the next 15 minutes. The time will need to be correlated with the email received 5 days prior to the platform switch.
If the end user encounters any login issues please have them clear their browser cache and try again to resolve any issues. Contact 8x8 support if you have any questions or need help with how to clear browser cache.

What happens when the switch takes place?

When a platform switch is initiated, all logged-in agents receive an on-screen pop-up message notifying them to complete any calls in queue and to log-off and back on to the system.

What will happen to interactions that are currently connected in the IVR or in Queues?

  • After the final notification, agents should complete the remaining interactions in the queue, log out and back into the system. Agents who do not log out eventually may experience a non-responsive Agent Workspace and see the status of Connection LostNote: Unattended calls in queues are abandoned at the expiry of final notification.
  • Calls and Chats that are connected to agents will not be disconnected and will continue until either party ends.
  • Calls that are in the IVR or queue will be offered to any available agent in that respective queue. Agents should accept all interactions in queue before logging out and logging back failing which those interactions will be ‘dropped’.
  • Chats, Emails and Voicemails in the queue will be automatically redirected to the new platform and will be presented upon logging in as well as any new callers that call into the queue after receiving the platform switch message.
  • Reporting is unaffected however the agent log-out and log-in activity will be reflected.

Additional Information

Monitoring and wallboards will be resetting after the platform switch.

Objective

Create a callback option for your queue in the IVR script.

Applies To

  • 8x8 Contact Center
  • Callback Options

Procedure

Ensure an Outbound Queue is already created as the Outbound Queue will need to be selected in the script steps below.
  1. Add a Label object outside of the Forward to Queue object.

    clipboard_e5a5a61224bdba8de54b6cb5525dc8acd.png

     
  2. In your desired location in your Forward to Queue script, Add a Play or Say object that will inform the customer they have an option to opt out of the queue if they no longer wish to wait. For example, "Thank you for waiting, please continue to hold or press (number selection) to leave a callback number". If a play object (music/audio) exists before your Play or Say object, set the Play object to "interruptible" to allow the caller to bypass the music if desired.

    clipboard_e07e8318ee30cdcb0f7f5a1913a50c759.png
  3. Add a Get Digit object after your Play or Say object. This will provide a number list that will include 0-9, *, and # that can be used for alternative options.

    clipboard_e6e510cea893b70c9816e5ebc43fb5148.png

     
  4. Select your desired key number and add a Go To object. Choose the Label you first added to send the caller to that label.

    clipboard_eb03a321965514fa5069294ebecf765fc.png

     
  5. Go to your Label and Add a Get Value object. The Get Value object will allow you to choose your Invite Message (audio file) that will ask for the customers 10 digits call back number.

    clipboard_e4275d87bd70755cb02a7cad0590a78ce.png
                     
Do not use a Say object before the Get Value object instead of the Invite Message. If the caller presses a digit before the Get Value object is reached in the script it is not recorded as part of the Value.
This can cause the callback to fail as the number is missing the first digit.
clipboard_e35644a41f04423a3f1f7190ca8234c87.png
The Data to collect field should be selected to customers: Phone Number and make sure Entry is mandatory is checked.

clipboard_e282153dff2c2018fbb99ee68b9826f30.png
  1. Select Contact Found and add a Callback object. Select your Outbound Queue, the Channel Number you wish to display, Dial Plan, and Callback parameters.

    clipboard_e6fb55ca3aa089e311217d085f4b987e9.png

     
  2. Select callback queued and add a Say or Play object to inform the customer they will be called back.

    clipboard_ea35187282b883ffec98b8d4f9d4c92f6.png

     
You have now completed a basic callback option in your IVR script.

Additional Information 

You can allow your caller to hear the number they entered and allow them to re-enter their phone number by following the steps below.
  1. Select Contact Found under Get Value and add a Say object. This message should say "The number you entered is (number here)". If you have an audio file, you can use a Play object instead.

    clipboard_e699af76883d8c3398373e4da7ac1e415.png

     
  2. Add another Say object. Change the Value to play to $callback phone number. This will repeat the number that was entered.

    clipboard_e9b738ca7ff598c8151225061c0037b57.png
                        
    clipboard_e6e6aebbcbf1253491d5f4708ffc4af01.png

     
  3. Add a third Say object. This message should say something like "If the number is correct, we will give you a call shortly. If the number is incorrect, please press (number key desired) to re-enter your 10 digit callback number."  You can use a Play object instead of you have an audio file.

    clipboard_e0ea1180c563f8044a9fd600cf7eeff11.png
                          
    clipboard_e167f3fc011d5ffded07798d1a3a1b4bd.png

     
  4. Add a Get Digit object.

    clipboard_e5cb07314950119818108b46136edfdb0.png

     
  5. Select your desired key number and add a Go To object. Choose the Label you first added to send the caller to that label to re-enter their phone number.

    clipboard_e03724504f0bae32395c614af6833df5e.png

Question

What phone IVR Script Objects are available in 8x8 Contact Center?

Applies To

  • 8x8 Contact Center
  • Script Objects

Answer

Phone Script Objects

Object Description
Schedule
Use the Schedule object to perform a particular sequence of script operations when the contact center is either open or closed.
Parameters:
  • In the Label text entry area, type the alphanumeric label used to uniquely identify the element in the IVR script.
  • Labels can contain a maximum of 21 characters, and must be unique within a script.
  • In the Select schedule list, choose a schedule definition.
Exit points:
The Schedule object uses the Select schedule value to transfer control to the script sequence specified within the following exit points:
  • open equals true if the phone interaction has been received within the selected schedule's open hours.
  • close equals true if the phone interaction has been received outside the selected schedule's open hours.
  • #1 through #6 equal true if the schedule specified in Select Schedule includes an exception condition, numbered 1 through 6, and today's date is within the exceptions from and to dates.
For details on creating schedules, refer to Define Business Hours and Schedules.
Check ANI
Use the Check ANI object to use the phone number of the inbound caller to perform a lookup in the customers file. If a matching phone number is found in the Customer file, the record is loaded in memory and can be used to check the value of picklist fields to determine how to route the call.
Parameters:
  • In the Label text entry area, type the alphanumeric label used to uniquely identify the element in the IVR script. Labels can contain a maximum of 21 characters, and must be unique within an IVR script.
  • In the contact found item, define the call processing steps to be performed if a Local CRM customer record was found.
  • In the contact not found item, define script call processing steps to be performed if a Local CRM customer record was not found.
Exit points:
The Check ANI object uses the value of the caller's ANI phone number to transfer control to the script sequence specified within the following exit points:
  • contact found equals true if the caller's phone number matches one in the Local CRM.
  • contact not found equals true if the caller's phone number does not match one in the customer file.
    When using the Check ANI object, both exit points should be configured. An exit point does not have any processing steps, and the object exits on that exit point the caller will be disconnected.
Get Value Use the Get Value object to request or require the caller to use their telephone's keypad to provide the following Local CRM data:
  • A Local CRM customer AccountNumber
  • A Local CRM CaseID
  • An agent's extension number: On selecting this option, the Entry is mandatory check box is checked automatically and grayed out. You are given the option to set the maximum length of the extension. By default, the maximum is eight digits.
  • A numeric Customer or Case custom field.
  • An external Variable1 or Variable2 that can then be passed to an external program for screen pops or integration with third-party or custom systems.
    For details on screen pop, refer to Define Screen Pop Settings for External CRM.
Parameters:
  • In the Label text entry area, type the alphanumeric label used to uniquely identify the element in the IVR Script.
    Labels can contain a maximum of 21 characters, and must be unique within an IVR script.
  • In the Invite message list, choose the audio file the IVR script plays to prompt the caller to enter specific numerical information.
  • In the Invalid message list, choose the audio file the IVR script plays if the caller responds to the invite message prompt with an invalid entry.
  • In the Empty message list, choose the audio file the IVR script plays if the caller does not respond to the invite message prompt within 10 seconds.
  • In the Data to collect list, select the CRM data to request or require from the user.
  • Select Entry is mandatory to require that the user supply a valid response to the prompt before enabling them to proceed beyond the Get Value object.
Exit points:
The Get Value object uses the value of the caller's response to transfer control to the script sequence specified within the following exit points:
  • found equals true if the caller's numerical entry matches the CRM data that was specified in the Data to Collect list.
    If Entry is Mandatory is disabled, or the value to be matched is stored in an external variable, the script exits.
  • empty equals true if Entry is Mandatory is enabled, and the caller does not supply a value.
  • too many invalid equals true if Entry is Mandatory is enabled and the caller made three incorrect attempts to supply a valid response.
If there is no input the Get Value script object will give the caller 3 attempts to enater the value repeating the Invite Message.
Get Digit
This object is used after Play and Say messages that prompt for digit tone input. Get Digit is a menu optimized for the input of a single digit. Use Get Digit to receive the caller's DTMF input after prompting the caller for input.
Parameters: None
Exit Points:
  • 0-9, *, # label the script operations performed after the caller has pressed the corresponding key on their telephone's keypad.
  • Unassigned digit: Actions defined under Unassigned digit are followed when the caller enters a digit that has no assigned action.
  • empty contains the script operations performed if the caller does not respond to an IVR menu prompt within 10 seconds, and the empty exit point is not configured.
Check Picklist
Use the Check Picklist object to evaluate the value of a particular item from the CRM database.
Perform a Check Picklist comparison after you have used the Check ANI or Get Value object to load a customer or case record into memory.
Parameters:
  • In the Label text entry area, type the alphanumeric label used to uniquely identify the element in the IVR Script.
    Labels can contain a maximum of 21 characters, and must be unique within an IVR script.
  • In the Data to test list, choose the picklist field to evaluate.
  • In the Select operator list, choose the equal to or not equal to comparison operator.
  • In the Select values list, choose the picklist values for the data element specified above by the Data to test list.
Exit points:
The Check Picklist object transfers control to the script sequence specified within the following exit points:
  • matched equals true if one of the selected values equals the value of a record in the Local CRM.
  • not matched equals true if one of the selected values does not equal the value of a record in the Local CRM.
Play
Use the Play object to play an audio file in a particular location in the IVR script.
Parameters:
  • Object Tag: Enter the alphanumeric label used to uniquely identify the element in the IVR Script.
  • Audio File: Select from the default audio files or from the choice of custom uploaded files.
  • Playback Options: The playback option can be interrupted by a DTMF input or not. Select from one of the following options:
    • Uninterruptible (Input ignored): The playback continues, ignoring the DTMF input.
    • Interruptible (Input captured): The playback is interrupted, and the DTMF input is captured.
Exit points: None
Say
This object converts programmed text and variable objects such as phone number and queue position into speech. The Say object is also interruptible or not. For details, see our content on Text To Speech.
Parameters:
  • Object Tag: Enter the alphanumeric label used to uniquely identify the element in the IVR script.
  • Language: Select the language from the available choices.
    Available Languages are:
  • Value to Play: Select to play free text or variables, such as phone number and queue position.
    • Callback phone number: Plays the call back number entered by the caller. It is retrieved via Get Value.
    • Caller phone number: Plays the calling line ID of the caller fetched automatically.
    • Queue position: Plays the queue position of the call.
  • Text to Play: Enter the text string to be played.
  • Data type: Select from the available data types: Text, Number, Phone number, Date, Time, and Currency. For example, if you select Date as the data type, the system announces the data in the date format.
  • Playback rate: Select a value: Slow, Normal, or Fast. The default rate is Normal. You can define the playback speed of IVR Text-To-Speech (TTS) prompts when using the Say object. The Say object converts programmed text and variable objects such as phone number and queue position into speech. You can play these prompts slowly, at a normal speed, or at a faster pace. Using the playback rate option, you can control the speed of the speech that reads your text so your callers do not miss the important information such as names, numbers, or account balances. The default speed is Normal. The playback speed is set per IVR Say node.
  • Playback Options: The playback option can be interrupted by a DTMF input or not. Select from one of the following options:
    • Uninterruptible (Input ignored): The playback continues, ignoring the DTMF input.
    • Interruptible (Input captured): The playback is interrupted, and the DTMF input is captured.
Menu
Use the Menu object to present a list of options to the caller.
Parameters:
  • In the Label text entry area, type the alphanumeric label used to uniquely identify the element in the IVR script.
    Labels can contain a maximum of 21 characters, and must be unique within an IVR script.
  • In the Invite message list, choose the audio file the IVR script plays to offer menu options to a caller.
  • In the Invalid message list, choose the audio file the IVR script plays if the caller responds to the prompt with an invalid entry.
  • In the Empty message list, choose the audio file the IVR script plays if the caller does not respond to an IVR menu prompt within 10 seconds.
    In a Menu script object, the Empty message parameter and the empty exit point (described below) are mutually exclusive: If you configure the empty exit point, then the Menu object will not play the audio file specified in the Empty message list.
Exit points:
The Menu object contains the following labeled exit points:
  • 0-9, *, # label the script operations performed after the caller has pressed the corresponding key on their telephone's keypad.
  • extension contains the script operations performed if the caller supplies a valid three-digit extension number.
    The Virtual Contact Center permits only agents with the Direct Agent Access Feature enabled to be directly accessed by extension number.
    Note: Extension (Obsolete) is a legacy feature that will be deprecated. We recommend using the enhanced method for direct agent routing.
  • empty contains the script operations performed if the caller does not respond to an IVR menu prompt within 10 seconds, and the empty exit point of the Menu object is not configured.
    In a Menu script object, the empty exit point and the Empty message parameter (described above) are mutually exclusive; if you configure the empty exit point, then the Menu object will not play the audio file specified in the Empty message list.
  • too many invalid labels the script operations performed if the caller makes three invalid responses to the menu prompts.
    Invalid responses include three incorrect keypad entries or no response to the menu within 10 seconds.
Voice Recording Settings
If your Virtual Contact Center operates in jurisdictions which require seeking the caller's permission before recording a call, the caller's choice must be able to override the queue and agent level recording settings as well as the agent's record on demand capability. Use the Voice Recording Settings object to determine the circumstances under which a call may be recorded.
Parameters:
  • In the Label text entry area, type the alphanumeric label used to uniquely identify the element in the IVR script.
    Labels can contain a maximum of 21 characters, and must be unique within an IVR script.
  • In the Permission to record, select one of the four options:
    • Keep prior setting: Keep prior setting for automatic and agent-initiated recording
    • Not asked: No automatic recording, but allows an agent to initiate recording
    • Granted: Follows Agent & Queue recording settings for automatic recording, and allows an agent to initiate recording
    • Denied: No automatic recording, and does not allow an agent to initiate recording
When Record % of calls is applicable, then IVR, Queue, and Agent voice recording percentages are applied.
  • In the Automatic Call Recording, based on the settings in Permission to record, one of the following four options get automatically selected, or you can select an option to override the default:
    • Keep prior setting: Keep prior setting for automatic recording
    • Record this call: The current call is recorded
    • Do not record this call: The current call is not automatically recorded
    • Record % of calls: IVR %, Queue %, and Agent % probabilities are used to determine if the call is recorded automatically or not
  • In the Allow agent to initiate recording, based on the settings in Permission to record, one of the following three options get automatically selected, or you can select an option to override the default.
    • Keep prior setting: Keep prior setting for agent-initiated recording
    • Yes: Allow the agent to initiate recording of this call
    • No: Do not allow the agent to initiate recording of this call
Set Agent
The Set Agent object facilitates direct agent access. Set Agent checks if the ANI or case number associated with an incoming call has corresponded with an agent on previous calls, and provides call routing choices based on the search result.
Set Agent allows you to look up agents based on the following parameters:
  • Case created by: Find the agent who created the case.
  • Case last worked by: Find the agent who last worked on the case.
  • Case assigned to: Find the agent who is assigned to the case.
  • Channel linked to: Find the agent who is linked to the channel the call was channeled through.
  • None: Find an agent by name. By selecting this option, the option to Choose Agent shows up. Click the link, and select an agent from the list.
Set Agent may return empty if there is no agent associated with ANI or case number.
Exit points:
The Set Agent object uses the returning value from the search above to transfer control to the script sequence specified within the following exit points:
  • agent found equals true if the caller's phone number or the case lookup retrieves an agent who previously corresponded with the contact.
  • agent not found equals true if the caller's phone number or the case number does not retrieve any agent who worked with the contact.
Transfer to Agent The Transfer to Agent object connects the caller to the agent.
  • Use this object with Set Agent to find agents based on case lookup, and then transfer the call.
  • Use this object without Set Agent to transfer calls directly to the agent with a personal channel. The agent must be assigned with a personal channel.
Transfer to Agent object provides options which support transferring a call to an agent even if their status is:
  • busy
  • on break
  • working offline
  • logged off
If you do not select any option, then the call is transferred only if the agent status is Available. If transfer is successful, change agent status to busy: this option is enabled by default. The agent is offered the post processing state after terminating the call. The object supports separate logic as to why a call may not reach the target agent depending on the agent’s real-time state.
Exit points:
The Transfer to Agent object uses the following exit points:
  • Busy equals true if the agent status is busy.
  • on break equals true if the agent is on break.
  • working offline equals true if the agent is working offline.
  • logged off equals true if the agent is logged off.
  • rejected by agent equals true if the agent rejected the call.
  • invalid agent id equals true if the agent found from ANI or case lookup is found invalid.
  • ring no answer equals true if the agent's phone rang but the agent failed to answer.
Transfer to Agent Voice Mail
The Transfer to Agent Voicemail object allows a caller to deposit a voicemail for an agent. It assumes the agent is already set through the Set Agent object or Get Value object. The following parameters dictate the call flow.
Parameters:
  • Name: In the Name text entry area, type the alphanumeric label used to uniquely identify the element in the IVR script for the Forward to agent element. It can contain a maximum of 21 characters, and must be unique within an IVR script.
  • Personal Invite: You can set different greetings to inform the caller the available options. The options available under Personal Invite indicate the agent-specific greeting that will be played back to the caller when the call routes through this primitive. The following options act as templates for the actual prompts:
    • AgentPersonalGreeting: Plays the personal recording made by the agent through a verification call.
    • AgentPersonalrecording_1 to AgentPersonalrecording_6: An agent can also record a maximum of 10 personal recordings using the Agent Workspace and any one of the first six of these personal recordings can be played back to the caller. This is done when the administrator sets the Personal Invite to one of these options. The agent's recording functionality in Agent Workspace is accessible via Menu > My Recording. Agents can record personal greetings using the My Recording functionality.
  • Impersonal Invite: If the personal recording of the agent is not available, the IVR system falls back on the Impersonal Invite message. These are the audio prompts that are available to Virtual Contact Center through the Home > Audio Files interface.
  • Digit to opt out: A caller is forced to deposit a voice mail when the “Digit to opt out” is set to false. When it is set to true then the caller has the option of leaving a voicemail or going back to the IVR system via the “opt out exit” point. This is similar to “resume” in the “ForwardToAgent” primitive in the legacy Virtual Contact Center. When opt out is set to true, the caller can press any DTMF key to navigate to the “opt out” exit point.
Exit Points:
  • opt out: allows the caller to opt out of voicemail.
  • agent not configured for VM: If the Activate agent’s voice mail check box in the Phone tab of the Agent configuration in Configuration Manager is not checked, then the caller is directed to the agent not configured for VM exit point even when the agent ID is set.
  • invalid agent id: If the agent ID is not set before this primitive is encountered, the caller is directed to this exit point.
Forward to agent
Note: Due to the constraints of the Forward to Agent object, we recommend using the Set Agent and Transfer to Agent objects to set up direct access to agents. Please note the Forward to Agent object will be obsolete on new Virtual Contact Center subscriptions past the 8.1 release.
If your Virtual Contact Center uses the direct agent access feature, in the Menu script object described earlier in this table, you can use the Forward to Agent object to forward the caller to an agent's phone. The Forward to Agent object does not function unless contained in the extension exit point of a Menu object. Virtual Contact Center rings the agent's phone for the number of seconds specified in the Interaction offer timeout.
Parameters:
  • In the Label text entry area type the alphanumeric label used to uniquely identify the element in the IVR script for the Forward to agent element.
    Labels can contain a maximum of 21 characters, and must be unique within an IVR script.
  • In the Message list, if agent voicemail is activated, then choose the audio file the IVR script plays immediately before forwarding the caller to the agent's voicemail.
  • In the Invalid Extension Message list, choose the audio file the IVR script plays if the caller supplies an invalid three-digit agent extension.
Exit points:
The Forward to agent object uses the value of the extension entered by the caller to transfer control to the script sequence specified within the following exit points:
  • resume equals true if the caller enters <*> instead of leaving a voice message.
    Use the resume label to transfer a caller who does not leave a message to another location in the IVR script.
  • too many invalid equals true if the caller dials an invalid agent extension three times.
Test Condition of Queue 
Use this object to check the condition of a queue before entering a queue. Test queue provides a set of conditions which, when met, triggers specified actions. The test queue object gives the IVR designer much more routing flexibility by allowing testing queue status repeatedly.
Parameters:
  • In the Object tag text entry area, type the alphanumeric label used to uniquely identify the element in the IVR script.
    Labels can contain a maximum of 21 characters, and must be unique within an IVR script.
  • In the Queue name list, choose the phone queue to test the condition.
  • Use the Queue Conditions area to determine routing choices based on agent availability or queue performance. For Queue Conditions, select one or more options below. The following options are presented when you enable There are NO agents:
    • Available: Select this option to route the call differently, or to provide the caller with choices when there is no qualified agent available to immediately accept the interaction.
    • Available or Busy: Select this option to route the call differently, or to provide the caller with choices when there is no qualified agent available to immediately accept the interaction. The agents may be temporarily busy and cannot immediately take the call.
    • Available, busy, or working offline: Select this option to route the call differently, or to provide the caller with choices when there is no qualified agent available to immediately accept the interaction. The agents may be temporarily busy or working offline and cannot immediately take the call.
    • Available, busy, working offline, or on break: Select this option to route the call differently, or to provide the caller with choices when there is no qualified agent available to immediately accept the interaction. The agents may be temporarily busy, working offline, or on break and cannot immediately take the call.
    • Logged in (assigned but may not be enabled): Select this option to route the call differently, or to provide the caller with choices when there is no qualified agent logged in (assigned but may not be enabled) to immediately accept the interaction. Qualified agents refer to agents set up to receive interactions from the queue specified in the Queue name list.
    • To evaluate the condition of a selected queue and then route the call based on the test results of that performance, perform one or all of the following tests:
      • Select The number of calls waiting ahead of this call is greater than -----, then enter the maximum number of calls that can be ahead of the current call.
      • Select Current call has been waiting in this queue for more than --- (seconds), then enter a time the current call has spent in its queue exceeds a configurable threshold. Each incoming call gets its own copy of an IVR script to receive treatments. The call being treated is referred to as the Current call.
      • Select The longest wait time for any call in this queue is greater than --- (seconds), then enter the maximum time that a call in the queue has waited in the queue.
      • Select The instantaneous expected-wait-time calculation exceeds --- (seconds), then enter a time duration in seconds.
Exit points:
Test Queue has two exit points:
  • Condition Matched
  • Condition not Matched
The Test Queue object transfers control to the script sequence specified under the exit points based on the following test results:
  • There are no qualified agents available in the queue.
  • There are no qualified agents available or busy in the queue.
  • There are no qualified agents available, busy, or working offline in the queue.
  • There are no qualified agents available, busy, working offline, or on break in the queue.
  • There are no qualified agents logged in.
  • There are n number of calls in the queue ahead of this call, where n is the number specified in the test.
  • The current call has been waiting in this queue for more than specified time.
  • There is a call waiting longer than the specified time in the queue.
  • The instantaneous expected wait time calculation for a call exceeds the specified time.
    The expected wait-time calculation is useful only when there are more than 20 qualified agents assigned to the queue and active. Mathematical uncertainty with fewer than 20 active, similarly-skilled agents may produce unexpected results.
One of the many ways the condition matched and condition not matched exit points can be used is to either trigger another test, provide the caller with a choice of waiting in the queue when no agent is available, leave a voicemail, or inform the caller of an approximate waiting time, and then forward to the queue.
For example, if there is a call in the queue that has waited longer than 120 seconds, you can insert the Play object under the Condition matched exit point to play a message informing the caller of an expected waiting time for the call to be answered. You can then use the Forward to Queue object to route the call to a queue.
Forward to queue
Use the Forward to queue object to forward a phone interaction to a specific phone queue.
Parameters:
  • In the Object tag, type the alphanumeric label used to uniquely identify the element in the IVR script.
    The object tag can contain a maximum of 21 characters, and must be unique within an IVR script.
  • In the Queue name list, choose the target phone queue to receive the call.
    For more information about modifying the default queue forwarding behavior, see the information about the Take the Overload path if area below.
  • Use the Queue Conditions area to determine routing choices based on agent availability or queue performance. For Queue Conditions, select one or more options below. The following options are presented when you enable There are NO agents:
    • Available: Select this option to route the call differently, or to provide the caller with choices when there is no qualified agent available to immediately accept the interaction.
    • Available or Busy: Select this option to route the call differently, or to provide the caller with choices when there is no qualified agent available to immediately accept the interaction. The agents may be temporarily busy and cannot immediately take the call.
    • Available, busy, or working offline: Select this option to route the call differently, or to provide the caller with choices when there is no qualified agent available to immediately accept the interaction. The agents may be temporarily busy or working offline and cannot immediately take the call.
    • Available, busy, working offline, or on break: Select this option to route the call differently, or to provide the caller with choices when there is no qualified agent available to immediately accept the interaction. The agents may be temporarily busy, working offline, or on break and cannot immediately take the call.
    • Logged in (assigned but may not be enabled): Select this option to route the call differently, or to provide the caller with choices when there is no qualified agent logged in (assigned but may not be enabled) to immediately accept the interaction. Qualified agents refer to agents set up to receive interactions from the queue specified in the Queue name list.
    • To evaluate the condition of a selected queue and then route the call based on the test results of that performance, perform one or all of the following tests:
      • Select The number of calls waiting ahead of this call is greater than -----, then enter the maximum number of calls that can be ahead of the current call.
      • Select The longest wait time for any call in this queue is greater than --- (seconds), then enter the maximum time that a call in the queue has waited in the queue.
      • Select The instantaneous expected-wait-time calculation exceeds --- (seconds), then enter a time duration in seconds.
Exit points:
  • In Queue is true if a call has entered the queue. You can define the in-queue treatments for each queue. Callers are served with the treatments and options defined under each queue while waiting to be served. You can add Loop and initial action under In Queue:
    • Initial Action: Under In Queue, select to add an initial action, such as announcing the Flu clinic details. Add a Play object and select an audio file to be played to callers once they enter the queue.
    • Loop: Under In Queue, add a Loop object. Inside a loop, you can define multiple in-queue treatments using time intervals. These treatments are repeated for a specified number of times, or for a given duration.
  • Queue Timeout is true if the call waiting exceeds the timeout period set.
  • Overload is true if any of the overload paths are met.
    The Forward to Queue object transfers control to the script sequence specified under the overload exit point as follows:
    • There are no qualified agents available in the queue.
    • There are no qualified agents available or busy in the queue.
    • There are no qualified agents available, busy, or working offline in the queue.
    • There are no qualified agents available, busy, working offline, or on break in the queue.
    • There are no qualified agents logged in.
    • There are n number of calls in the queue ahead of this call, where n is the number specified in the test.
    • There is a call waiting longer than the specified time in the queue.
    • The instantaneous expected wait time calculation for a call exceeds the specified time.
      • The expected wait-time calculation is useful only when there are more than 20 qualified agents assigned to the queue and active. Mathematical uncertainty with fewer than 20 active, similarly skilled agents may produce unexpected results.
      • The overload exit point can be used to provide the caller with a choice of waiting in the queue when no agent is available, or to leave a voicemail.
        For example, in the Forward to Queue object's overload exit point, insert the Forward to voice mail object to route the call based on the caller’s response to a prompt of the form "Press 1 to leave a message or remain on the line to speak to the next available agent"; if the caller does not press 1, the script transfers the call to the queue specified in the Queue Name list.
Loop and Time Interval These new in-queue-only objects control the pattern of announcements, queue music, and conditional contact center tests while waiting in queue.
  • Loop: Under In Queue, add a Loop object. Inside a loop, you can define multiple in-queue treatments using time intervals. These treatments are repeated for a specified number of times, or for a given duration.
Parameters:
  • Object tag: Enter the alphanumeric label used to uniquely identify the element in the IVR Script.
  • Loop repeat count: Select the number of times to repeat the treatments defined in the loop.
Exit Points:
Time Interval: The Intervals inside a Loop can be used to define multiple prompts. Use a Time Interval to define the length of an in-queue action. For example, define an interval to be 60 seconds long and select to play an in-queue prompt for 20 seconds. The queue music plays for the rest of the interval duration.
Callback
The Callback object allows callers waiting in a call queue to opt out of the queue and be called back when an agent becomes available. This feature fetches the caller's phone number from the calling line ID, the absence of which requires the caller to input the callback number before exiting the queue. The system retains the queue position of the call and offers an outbound call to an available agent serving the queue. When the agent accepts the call, the call is dialed out to the caller using the callback number. The call is routed through an outbound queue.
Parameters:
  • Queue name: Select an existing outbound queue to route the call.
  • Call back CLI/CN: Select a channel number for outbound caller ID. Using the option [Current Channel], you can display the original channel number, which the caller used as the caller ID for the callback. This option is selected by default. If you wish to display any other channel number during the callback, you can select from the list of available channels.
  • Dial plan: Select from an existing dial plan.
  • In Callback parameters, select the number of callback tries, specify the delay time between tries in seconds or minutes, and enter the duration (in seconds, minutes, or hours) after which the callback request needs to be canceled.
    • Callback tries: Select the number of attempts to call back. The call failure is determined by the following factors:
      • Agent did not answer the call.
      • Agent answered, but the outbound leg dials out and experiences a busy network.
      • RNA (Ring no answer)
    • Callback retry delay: Specify the callback retry attempts in seconds or minutes.
    • Cancel callback after: Enter the duration in seconds, minutes, or hours. The requested callback remains in an outbound queue for the duration of that time (up to maximum six hours). Any callback attempt is prevented after the time expires. The callback request is removed from the outbound queue after Cancel Callback duration has expired.
Exit Points:
  • Callback Queued: Informs the caller that the callback request is queued for further processing.
  • Invalid Phone Number: Informs the caller that the number entered is invalid, and can offer options for further corrective actions.
Forward to voice mail Queue
Use the Forward to voice mail object to transfer phone interactions to a selected voicemail queue.
If the Forward to voice mail object is inserted under the overload exit point of a Forward to Queue object, the caller can choose between waiting in the queue or transferring to voicemail.
Parameters:
  • In the Object Tag text entry area, type the label used to uniquely identify the element in the IVR script.
    Labels can contain a maximum of 21 characters, and must be unique within an IVR script.
  • In the Invite Message list, choose the audio file that directs the caller to press 1 to leave a voicemail message.
    The audio file must direct the caller to press 1 to leave a voicemail; no other number will work.
    If the Access to voice mail is mandatory option, described below, is selected, then the IVR script forcibly transfers the call to voicemail.
  • In the Queue name list, choose the voicemail queue that receives calls transferred to voicemail.
  • Select Access to voice mail is mandatory to have the IVR script forcibly transfer calls to the voicemail queue.
Exit points: None
Forward to External IVR 
Use the Forward to External IVR object to forward a phone interaction to an external IVR server. This redirects an incoming call to an external SIP URI address, or a phone number, which lands on an external IVR system. You can complete a self-service authentication on an external IVR server, and resume the call as desired by the customer. The entry point for an incoming call remains the Virtual Contact Center IVR, with external IVR as an additional tree node within it.
The object allows data exchange between the external IVR server and the Virtual Contact Center server through a RESTful API interface. The data flow requires a SIP connection.
Parameters:
  • In the Label text entry area, type the alphanumeric label used to uniquely identify the element in the IVR script.
    Labels can contain a maximum of 21 characters, and must be unique within an IVR script.
  • In the Phone number text entry area, type the complete phone number the IVR script dials when transferring a phone interaction.
    The Phone number text entry area accepts only the numeric characters 0-9.
    • In the United States, phone numbers, must be of the form (1 + three-digit area code + seven-digit phone number).
      In the United States, when typing numbers into text entry areas, always preface the area code with 1.
    • Outside the United States, must be of the form (Country Code + phone number).
Exit points:
Resume: Provides the capability to resume within the Virtual Contact Center IVR tree on detecting a hang-up event on the External IVR server, and redirects a call to a predefined or assigned destination.
Forward to External Number Use the Forward to external number object to forward a phone interaction to a phone number that is not managed by Virtual Contact Center.
Parameters:
  • In the Label text entry area, type the alphanumeric label used to uniquely identify the element in the IVR script.
    Labels can contain a maximum of 21 characters, and must be unique within an IVR script.
  • In the Phone number text entry area, type the complete phone number the IVR script dials when transferring a phone interaction.
    The Phone number text entry area accepts only the numeric characters 0-9.
    • In the United States, phone numbers, must be of the form (1 + three-digit area code + seven-digit phone number).
      In the United States, when typing numbers into text entry areas, always preface the area code with 1.
    • Outside the United States, must be of the form (Country Code + phone number).
Exit points: None
Label
Use the Label object in combination with the Goto object, described later in this table, to redirect call processing to any location in the IVR script. The Goto object redirects the interaction to the parameter of a Label object.
Parameters:
  • In the Label text entry area, type the alphanumeric label used to uniquely identify the element in the IVR script. Labels can contain a maximum of 21 characters, and must be unique within an IVR script.
Exit points: None.
Goto
Use the Goto object to redirect the script to continue running at some labeled location in the script.
Parameters:
  • In the Destination list, choose a labeled script location.
Exit point: None
Set Variable The ability to set variables allows programming abilities within IVR scripts, enabling better caller experience. You can use variables to remember the user input and use them to drive the call flow. You can create variables to store values of string and number types, and reference them anywhere and any number of times in the script.
Virtual Contact Center allows two types of variables in IVR:
  • System Variables: These are predefined variables which cannot be edited:
    $QueuePosition: Returns the current position of a call within the queue.
    $callerPhoneNumber: Returns the caller's phone number based on caller ID.
    $callbackPhoneNumber: Returns the call back number input by the caller.
  • User-Defined Variables: These are variables defined by users. You can initialize these variables with a certain value, and modify them later.
Parameters:
  • Object Tag: Enter a label to uniquely identify the element in the IVR script.
  • Variable: Select a predefined variable from the drop-down list, or create a new variable.
  • Value: Select a desired value for the variable.
For example, to offer callers suitable choices based on the queue position, set a variable and check:
  • If the queue position is greater than 10, offer to call back when an agent is available.
  • If the queue position is less than 10, play promotional messages and retain callers in the queue.
Exit Points: None
Test Variable The Test Variable object allows you to test an already defined variable and test it against a set value. To test a variable, select either a system variable or a user-defined variable, and test it against a specific value. For example, test how many calls are ahead of a call using the system variable $QueuePosition. If there are more than ten calls ahead of this call, announce the position to the caller, and offer the caller to receive a call back. If there are fewer than 10 calls ahead of this call, keep the caller in the queue.
To access the Test Variable object within the script, click Add next to a node, and select the Test Variable object from the Insert Object list.
Exit Points:
  • True: equals true if it meets the condition set for the variable
  • False: equals true If it does not meet the set condition
Randomize The Randomize object allows us to randomly pick callers and offer a different treatment from the norm. For example, in a customer survey program, you may want to randomly select 50% of callers, and direct them to a survey. You will need to use the randomize object that randomly picks callers and offers a specific treatment based on the path chosen.
Parameters:
  • Object tag: Enter the alphanumeric label used to uniquely identify the element in the IVR Script.
  • Path A Percentage: Slide the pointer on the scale to indicate the percentage of callers to be directed to the Path A treatment.
Exit Points:
  • Path A: Allows you define the treatment for callers randomly directed to path A.
  • Path B: Allows you to define the treatment for callers not chosen for path A.
Hang up
Use the Hang up object to disconnect a phone interaction.
The IVR disconnects a phone interaction if the call has not been forwarded to a queue, voicemail, or an external number, and the script flow contains no further script objects.
In the Label text entry area, type the alphanumeric label used to uniquely identify the element in the IVR script.
Labels can contain a maximum of 21 characters, and must be unique within an IVR script.
Exit points: None
Default Termination   The IVR tree has two objects:
  • Main IVR
  • Default Terminating Node
The default terminating node is the last node in the IVR tree, and cannot be deleted from the tree. You can only add and remove IVR objects between the first and last nodes. The Default Terminating node catches all calls that would drop on reaching a non-terminating exit criterion, such as Play or Label in the IVR script, and routes them with four exit options:
  • Forward to Queue: Directs the call to a queue
  • Forward to Voice Mail: Directs the call to a voicemail queue
  • Forward to External Number: Forwards the call to an external phone number
  • Hang up: Terminates the call

Symptom

An agent is unable to log in, but a Supervisor can see that they are.
The agent may experience a spinning icon on logging back in that doesn't go away (see below), or a login screen that is unresponsive.
2019-01-14_11-00-13.png

Applies To

  • 8x8 Contact Center
  • 8x8 Agent Workspace

Solution

If your agent can't log in, Supervisors need to check their monitoring tab to see if they can see if the agent still is stuck in the system. This can be done by following the below.
  1. Log into 8x8 Agent Workspace.
  2. Click Menu > Monitoring.
    MenuMonitor.png
  3. Navigate to Agent Management.
  4. Click Monitor
    Monitoring1.png
  5. Search for your agent under the Agent column. 
  6. Check their status under the Status column. 
    1. If they are not Logged Off click the Door to force log the user off.
    2. Ask the agent to refresh their screen (can do this with F5) and then log in again.

Question

Why when running a number of historic reports (DTA, Queues: Transactions, Queues: Detailed entered transactions activity, Media: Accepted transactions - off line media) no calls are seen as routing to the Voicemail queue?

Applies To

  • Contact Center
  • Historic Reporting

Answer

The option "delete from queue" is misleading.  Actually if this box is checked the app doesn't send voicemail to the queue, and it will send the voicemail email to the email addresses provided.  That is why historical report doesn't show any voicemails went to the Commercial vm queue. If you uncheck delete from queue, historical report will show up those voicemail transactions, but agents need to accept those voicemails from the app one by one.
image-2021-01-20-15-14-25-293.png

Symptom

If a 8x8 Contact Center call is transferred to another 8x8 Contact Center agent that is already on another call, the call recording of the transferred call between the agent and the other party is not stored.
In Admin Console Recordings you may see a call recording with 00:00:00 duration for the call between the agent the call was transferred to and the other party.
In Admin Console Recordings you may see a recording with no audio after the call has been transferred for the recording of the whole interaction.

Applies To

  • 8x8 Contact Center
  • Call Recording

Resolution

To minimize the risk of a scenario where this can occur:
  1. Use connection mode on-demand rather than persistent. This setting is in:
    • Configuration Manager for Contact Center > Users > Edit > Properties
    • Agent Workspace > My Profile > Settings
    • Note: On-demand can not be used with progressive or predictive campaign dial modes, only preview.
  2. If an agent receives a call transfer whilst on another call they should end that call before accepting the call being transferred to them.
  3. In the Transfer to Agent object in the In the Agents PBX Number Script, which by default is the Agent Extension Script.
    • The option to Transfer to agent even if the status is Busy should be disabled.
    • The option to Change agent status to busy If transfer is successful should be enabled.

Cause

This is a known issue with one of the 8x8 Contact Center telephony core components. There is an ongoing effort to replace this component.

Additional Information

  • It is not possible for an agent's status to be set to busy if they are making an agent-to-agent call.
  • 8x8 Work Call recordings are not affected, if your agents use an 8x8 Work extension as their workplace phone you may want to consider enabling call recording on their 8x8 Work extension.