dcurrier

David Currier

dcurrier@commprod.com

4 Tips for Creating Great Prompts

Posted by David Currier
Oct22
dcurrier

In many cases, the first thing a customer hears when calling into your phone system is a recorded prompt – perhaps something like “Thank you for calling XYZ! For sales, press 1. For support, press 2.” This relatively simple prompt creates a first impression of your organization that may be difficult to change. Whether it is a greeting, menu, or compliance message, the prompts a customer hears should accurately reflect your business and give them a positive impression… even if they haven’t actually spoken to an employee.

Here are 4 tips that we’ve found will dramatically increase the quality of phone system prompts:

1) Script each prompt word for word – Before any recording takes place, be sure you know exactly what the voice talent should say. This will dramatically reduce the time required to produce prompt recordings and make them sound much more confident and professional. It will also give your marketing team a chance to ensure consistent branding across the various media types a customer may encounter (phone, website, e-mail, etc.). Think carefully about what you want customers to hear when they call your organization. Read the scripts aloud as though you are the phone system playing the prompts to the caller. Do they make sense? Do they concisely and accurately convey the information needed by the caller?

2) Engage professional voice talent - Working with a professional who has recorded thousands of prompts will dramatically increase the quality of the end product… and reduce the time required to produce the recordings. Nobody is perfect, but only having to record a prompt twice instead of twenty times will save you lots of time and money. Also, don’t forget to do a bit of sleuthing within your organization. You might have some hidden talent in your employees. Perhaps consider a “Voice of XYZ” competition.

3) Use a professional recording environment - I’ve called a number of very large companies that had obviously recorded their prompts in the middle of their call center floor. Excessive background noise or poor recording equipment can result in prompts that are almost unintelligible. A very quiet room with minimal echo may be sufficient – a professional recording studio is definitely better.

4) Ensure prompt files are in the correct format - While prompts may be recorded at CD quality or higher, be sure to convert them to the format required by your phone system. While your phone system may be able to convert them on the fly, allowing this is a very bad idea. I’ve seen phone systems brought to their knees trying to convert CD quality audio to be played to calls waiting in queue. If in doubt, the most common standard is: CCITT µ-Law 8 Bit 8 kHz Mono.

Note: Depending on the application, you may also be able to find suitable libraries of professional prompts online that can be downloaded for free or purchased.

Dialing Is Harder Than It Looks…

Posted by David Currier
Oct17
dcurrier

Something important crashes to the floor from the desk in the rush to get to your phone for the executive conference call you were supposed to join three minutes ago. After looking up the number and quickly punching it into the handset, you hear “bee-Bee-BEE. Your call cannot be completed as dialed. Please check the number…”

Regardless of the reason, dialing a number that does not connect can be very frustrating. After many questions and frantic calls for support, I decided to write this post to help dispel some of the mystery that often surrounds how telephone numbers are composed and dialed.

The Basics

Virtually all telephone numbers you will encounter follow the E.164 numbering plan and are composed of three basic parts:

  1. Country code
  2. Area code
  3. Local number

How you dial each number is determined by where you are located.

Phone Numbers in the United States

The U.S. along with a couple dozen other countries participates in the North American Numbering Plan (NANP) which basically states that numbers within it will use the following

+1-NPA-NXX-xxxx

  1. + – indicates that an international access code will need to be added when this number is dialed from a country outside the NANP
  2. 1 – the country code used by the NANP
  3. NPA – an area code within the NANP
  4. NXX – central office exchange code, the first part of each local number managed by a given carrier
  5. xxxx – subscriber number, the final portion of each number assigned to a customer

While there are a variety of special classifications (emergency, information, toll free, etc.), phone numbers within the NANP will generally fall into one of three categories:

  1. Local
  2. Long distance
  3. International

Dialing Local Numbers

Unfortunately, there is no set rule for how local numbers should be dialed. Each area will have its own rules. However, they will generally allow and/or require one of the following:

  1. 7 digits – dial the exchange and the local number only to call another number within the same area code
  2. 10 digits – in a region covered by more than one area code, it may be necessary to dial both the area code and the local number
  3. 11 digits – in some cases, a one must be added to the beginning of the number followed by the area code and local number

Dialing Long Distance Numbers

In most countries outside the NANP, a trunk code of zero is required before any number not within the local calling area. Within the NANP, the number one preceding the area code is generally required as the trunk code to call a number outside of the local calling area. This can be especially confusing because the NANP country code is also the number one.

If dialed from within the NANP, the number would be written as:

1 (213) 213-2134

Note: the parentheses indicate that the area code may be optional when dialed from within its local calling area. In fact, (unlike many other countries), dialing the full phone number often will not work when dialing a local number.

If dialed from a country outside of the NANP, it would be written as:

+1 213 213 2134

Dialing International Numbers

In general, dialing an international number requires an international access code. For example, to dial a number in the United Kingdom, a U.S. caller would dial:

011 + 44 + area code + number

For calls placed from within the NANP to a country outside, 011 is the access code to indicate that the call is an international call and should be routed as such.

A common mistake is to include (or even dial) the trunk code as part of the international number. For example, a London caller might dial something like the following as a local number:

020 xxxx xxxx

It should NOT be written or dialed as:

+44 (0)20 xxxx xxxx

This is because the zero immediately preceding the area code is ONLY dialed from within the United Kingdom. From the United States, this number would be dialed as:

011 44 20 xxxx xxxx

Also keep in mind that newer phone systems and many mobile phones would allow this number to be stored in the following format so that it can be dialed from anywhere in the world:

+44 20 xxxx xxxx

More Information

If you are unsure how to dial an international number, I highly recommend visiting howtocallabroad.com

The First Rule of Call Troubleshooting

Posted by David Currier
Aug10
dcurrier

A quick Google search for call troubleshooting tips returns a few possible first steps:

  • Everything is true, look for what isn’t
  • Keep an open mind
  • Maintain complete objectivity
  • Trust your data

But my favorite is “Assume nothing.”

Today, my wife called me on my cell phone just as I was climbing into the car to head home. She was calling from her cell phone and is on the same carrier/plan that I am. We talked for a couple of minutes and then both clearly heard the announcement “This call is now being recorded.” We were both very surprised, and just a bit disturbed.

I immediately hung up and called customer support to let them know what had happened. I tried to be very polite and professional about it, but could tell that the poor fellow had definitely never had a report of such an issue. Clearly, an unauthorized recording would be very serious. While he frantically contacted the technical support team, their support team, management, and probably a few other people, I got to thinking… and pealing away my assumptions.

  • At first, I thought that I may have incorrectly assumed that the message could not have been played by an application on either of our phones. However, I had previously done a fair amount of research to see if it was possible and could not find a way to do it — possible assumption, but unlikely. This message was more likely played at the “carrier” level.
  • More importantly, I realized that I had assumed that the message would have been played by our cell phone carrier. Another quick Google search reminded me that my wife not only had my mobile number, but my Google Voice number. Sure enough, there have been a number of reports of this message being played in error. I confirmed my suspicions by having my wife check her call history and then informed a very relieved support representative.

So the next time you receive a frantic call reporting that a user isn’t getting voice mail messages, “Assume nothing.” Don’t assume that their voice mail is actually broken. Don’t assume that callers are actually leaving messages. Don’t assume that the user is correctly accessing their voice mail. But, just because only one user has reported an issue, don’t also assume that everyone else’s voice mail is working correctly or that the problem may only affect voice mail delivery.

Remember: “Assume nothing.”

Avoid Unintended Consequences: Coaching for ININ Power Users

Posted by David Currier
Aug1
dcurrier

Interactive Intelligence Video Training GuideThe Interaction Center platform gives users a great degree of flexibility in configuring their personal options. Your power users may configure options for prompts played to callers, remote forward and follow-me features, call timeouts, notification preferences, and more. While this is very powerful, care must be taken when configuring these options to avoid “unintended consequences” – that’s a politically correct way of saying that it is possible to break things… badly.

Here are a couple of examples:

  1. Most often, these problems are the result of user error, or a simple lack of understanding. For example: Every few months, I get a report that a user always receives two e-mail messages when a voicemail is left. A quick look at the user’s client configuration shows that the user has turned on voicemail/fax notifications using their business e-mail address. When a voicemail message is left, IC delivers it to the user’s mailbox and then another message is sent to the same mailbox with a notification that a voicemail has just been received. If not read carefully, it can appear to the user that the message was duplicated.
  2. In some cases, the “unintended consequence” can be more severe. Let’s say the user sets a voicemail/fax alert to call a telephone number with a notification of a new message received, inputs their direct dial telephone number, and goes home for the weekend. An inbound caller then leaves a voicemail message which is delivered to the user’s inbox. IC places a notification call to the user’s DID and, because the user is not available, the call is sent to voicemail and a messages is again delivered to the user’s inbox. IC dutifully places another notification call, and the cycle continues until the user eventually shows up on Monday morning and answers a notification call… after finding over 5,000 voicemail messages in their e-mail inbox.

It gets worse…

Receiving 5,000 voicemail messages would be annoying, but hardly catastrophic. But keep in mind that while notification preferences are usually set in the Interaction Client, they can also be set remotely. If a significant number of user accounts were compromised and the notification preferences set to call their DID numbers, a malicious party could then leave each user a voicemail message and potentially fill all the phone lines with bogus voicemail notification calls – an effective denial of service attack.

Don’t panic…

Ok, so don’t be afraid to use advanced features just because they involve a certain amount of risk. Rather, be aware of the possible configuration options for a feature and its potential pitfalls or the consequences of different settings.

Managing Call Flow Schedules in ININ’s Interaction Center

Posted by David Currier
Jul18
dcurrier
Interactive Intelligence Video Training GuideThere are few things more frustrating for the person managing call flows for an organization than to find out that callers are hearing the wrong menus and being presented with the wrong options. In the Interaction Center platform, there are a number of reasons this might happen, but one of the most common is a schedule misconfiguration.

Here are a few tips to help ensure that your schedules are in good working order:

1) Schedule tab selection – An Interaction Attendant schedule includes a number of different tabs that can be selected to determine the type of schedule (Daily, Weekly, Monthly, Yearly, Unplanned, and System). One mistake is for a user to click on other tabs to see how they are configured and then publish the Attendant profile without changing the tab selection back. It is critical to remember that only the active tab is used for a given schedule.

2) Time range selection – Most schedule types include a time range that can be configured to determine the hours during each day a schedule should run. Be sure that the schedule is indeed configured for the intended time range. If, for example, a weekly schedule is configured to run 8am Monday to 5pm Friday, but no time range for each day is configured, calls would be handled by this schedule outside of regular business hours.

3) Unplanned schedules – Use unplanned schedules carefully. They allow easy schedule changes for unplanned events (severe weather outage, unplanned company meeting, etc.), but will trump all other schedules. If an unplanned schedule is accidentally left in effect, no other schedules configured for that profile will be used until it is deactivated. Also keep in mind that an unplanned schedule will immediately take effect when the checkbox is checked (without publishing).

4) System schedules – System schedules were introduced in Interaction Center 3.0 as a powerful way to centrally manage call flow schedules without requiring changes in Interaction Attendant. Once a schedule is configured in Interaction Attendant and linked to one or more system schedules, it can be managed and updated from the schedules container in Interaction Administrator. This can dramatically simplify schedule management, but should be used carefully. For each Attendant schedule where the system tab is selected, be sure that at least one system schedule is actually linked. Also be sure that linked system schedules are marked active in Interaction Administrator if they should be in effect

Securing ININ’s Interaction Center Against Toll Fraud

Posted by David Currier
Jun20
dcurrier

Interactive Intelligence Video Training Guide

While every effort can be made to secure a phone system against intrusion or abuse, there will always be methods that can be used to exploit a system. The Interaction Center platform is no different. Like all other phone systems, it has security precautions and necessary vulnerabilities. In other words, a lot of thought goes into how to secure an Interaction Center system against attack, but certain features of the system result in unavoidable insecurities or weak spots.

An example of this is remote access. It is usually desirable to allow users to remotely call into the system and access voicemail, manage their status, or perform other tasks. However, this exposes the system to the outside to any party with credentials that grant them access to the system. While this is definitely a feature worth having, it is also a potential vulnerability.

The most common attack against an IC system we have seen exploits this feature and often results in toll fraud. Here’s how it works:

1) Someone with a desire to gain access for whatever reason (and who likely knows they are calling an Interaction Center server) calls a number that reaches the target system

2) The caller navigates through menus and identifies a method to login to the system remotely (this is allowed by the Remote Access node in Interaction Attendant)

3) The caller then attempts to login using various combinations of extensions and passwords, sometimes gaining a list of extensions to try from the dial-by-name feature

4) Once a successful username and password combination has been found, the caller uses one of several methods to place outbound calls to other numbers (often international), one method is to set the user’s status to Available, Forward at an international number, then call the user directly

If remote access to the system is desired (and it almost always is), the best method to protect against this kind of attack is to enforce a solid password policy. The default password policy in IC is often sufficient, but should be evaluated to be sure that it matches your organizations security policies. As a best practice, set a secure password when creating new users and don’t use 1234 or the user’s extension. Remember, It is always possible to crack even a good password with a brute force attack, but much less likely.

The First Stop in Call Troubleshooting in Interactive Intelligence Environments

Posted by David Currier
Apr12
dcurrier

When troubleshooting issues with your Interaction Center servers, the first place to look are the server event logs. Actually, we recommend that you regularly monitor them for unexpected warnings and errors. Similarly, when troubleshooting reports of trouble with calls, the best place to start is the Call Log on the active IC server at the time of the call. While there are a number of different ways to search this log for one or more calls, the simplest is with a Call ID. Along with a report of what happened from a user, the log entry for a call will quite often be enough to determine what happened.

1) Browse to the Logs folder and open the folder for the date of the offending call

How to View the Interactive Intelligence Logs Folder

2) Open the file CallLog.ininlog (by default it will open in the ININ Log Viewer

Interactive Intelligence Log Viewer

3) From the Filter menu, select Filter Configuration – this will open the Filter Configuration dialog

4) From the Filter menu, create a new filter for a Context Attribute

Interactive Intelligence Context Attribute

5) From the Context Attribute dropdown menu, select Ctx Attrib 1

ININ Context Attribute Dropdown menu

6) Enter the Call ID of the call in question in the Search Item field and click Add, then click Ok

The Call Log will now be filtered to the entry for the specified interaction and (depending on the type of call) will provide many useful pieces of information including the calling and called party numbers, users involved in the call, start and end times, the call disconnect reason, and more. If more troubleshooting is required, the information provided in the log entry of a call will help you know where to look next.

ININ Supervisor Video Training Guide

Interaction Center 3.0 Service Update 11 Released by Interactive Intelligence

Posted by David Currier
Mar29
dcurrier

It has been nearly a year since Interactive Intelligence has release a significant set of new features for their flagship product, the Customer Interaction Center version 3.0. The release of Service Update 11 was announced yesterday and includes a number of enhancements that have been a long time in coming – literally. This includes a 64-bit fax client driver, advanced call analysis on the media server, new features for Interaction Attendant, Tracker, Process Automation, Recorder, and more.

There are a couple of critical considerations to keep in mind when planning to apply this update. First, IC 3.0 SU10 (New Patch Target) is required prior to installing SU11. If you have not already done so, I definitely recommend applying Service Update 10. It has been a very stable release with very few significant bugs. Second, apply Interactive Update 1.0 SU8 prior to installing SU11. As of Service Update 10, the update cycle for Interactive Update was separated from the main product to allow independent fixes and feature enhancements to the “updater” – this will help make deployment of Service Update 11 much smoother.

A note of caution…

Service Update 11 includes the first significant new features in almost a year. New features always increase the likelihood of new bugs – in fact, there are already a couple of critical bugs in SU11 impacting remote users that require patches to fix. If you do not have a business need for the new features available in SU11, I recommend the “wait-and-see” approach. If this update is critical to your organization, proceed with caution.

Troubleshooting Interaction Attendant, Part 3

Posted by David Currier
Jan14
dcurrier

ThisInteractive Intelligence troubleshooting video guide looks at several examples of problems reported by callers for an Interaction Attendant call flow and walks through the steps necessary to find and fix the cause.

How to Remotely Manage Interactive Intelligence Attendant Audio Files

Posted by David Currier
Jan12
dcurrier

Did you know that Interaction Center includes the ability to remotely manage Attendant audio files? With a bit of setup, this can be done via the Remote Access feature of Interaction Attendant.

Here are the instructions to set it up:

1) On the IC server, run dseditu

2) Browse to <Root Entry>\[Site Name]\Production\[Server Name]\AttendantData

3) Add an Attribute with Attribute name = “AttendantLanguages“, Value type = “String“, and then add the value for the language of the prompts you would like to manage (default is “en-US“)

4) Add an Attribute with Attribute name = “AttendantWaveIDs“, Value type = “String“, and then add values as a number|name group for each prompt you wish to record/manage (example: “1000|example.wav“)

5) In the …\I3\IC\Resources\InteractionAttendantWaves\[language] folder, create a .wav file where the file name matches the value created in Directory Services earlier (example: copy and rename any .wav file to “example.wav“)

6) Access the prompt management utility via the TUI (Telephone User Interface) by calling the default profile (or another profile that includes this functionality) and logging in using a Remote Access node – by default, this would be: 9, 9, [extension], [password], #, 5, 9, 2

Note: This feature can also be used to manage existing Attendant prompts. Simply create number|name string values as listed above using the .wav file name you wish to manage.

Troubleshooting Interaction Attendant, Part 2

Posted by David Currier
Jan12
dcurrier

Many configuration errors in Interactive Intelligence’s Interaction Attendant will be flagged and will prevent a call flow configuration from being published until they are resolved. This video segment looks at some of the most common errors and how to resolve them.



Troubleshooting interaction Attendant, Part 1

Posted by David Currier
Jan12
dcurrier

Interactive Intelligence’s Interaction Attendant allows the non-programmer to create complex call flows with its visual interface. It is intuitive, but can be a bit intimidating, especially if something doesn’t work as expected.

Part 1 of this video series looks at:

- The application itself

- The permissions necessary to manage call flow configurations

- Common issues accessing it.

4 Easy Steps to Backup Interaction Attendant

Posted by David Currier
Dec14
dcurrier

We are issuing a New Year’s Resolution to our Interactive Intelligence customers, a resolution, that could prevent a LOT of headaches and potentially save your organization thousands of dollars.

“I, (insert name here), pledge to back up my Interaction Attendant profile on a regular basis.

Not sure how to get that done? Interactive Intelligence has written a very helpful step by step guide that we have shared below.

4 Steps to Backing up Interaction Attendant

This wizard appears when an Export or Package command is issued.  It saves open call flow configurations as Attendant configuration (*.att) files, or the selected portion of the open call flow as an Attendant Package file (*.atp).  The wizard prompts you to select the amount of server-specific information to include in the export file.  This determines whether the file can be used as a server-specific backup, portable “full” configuration, or as an application template.


1.  The first step is to choose the type of export to perform.  Select the type of export to perform.  Then press Next to proceed.

Backup
This option appears when a configuration is exported, but not when some portion of a call flow is packaged. Backup creates a server-specific configuration file that can be imported only by the server from which it was exported.  This type of export saves server name, username, and password.  You can backup more than one server at a time.  This type of export is functionally identical to backups performed in releases of Attendant prior to release 2.3.

Full Configuration

For Exported Configurations: A full backup exports an exact copy of one server’s configuration that can be loaded onto any other server.  This saves the entire server configuration except for the server name and password.  This makes it possible to move a configuration from a test server to a production server.  The test server must be identical to the production server in terms of line names, workgroup names—everything except server name and password.

When the file is imported, Attendant prompts for a server to connect to, since the file does not contain any information about the origin of the data.  Attendant analyzes the configuration and flags nodes that are in error (due to missing prompt files, differences in workgroup settings, etc.).  For example, if a wave file was recorded on the test server and does not exist on the production server, Attendant would flag that node so that you can recreate the prompt on the production server.

For Packages: Creates a package file that contains an exact copy of the selected nodes’ configuration. This package option is useful for moving part of a call flow from a test environment to a production server.

Configuration Template
For Exported Configurations: exports a generic configuration that can be loaded onto any server.  This saves the general Attendant layout, but does not save server-specific information, such as workgroup names, user names, or audio files.  The resulting file can be loaded onto a server and customized to match the destination server.   This option is geared for partners and administrators who manage multiple sites.  It exports a general configuration that does not require servers to be identically configured.

For example, a workgroup might be named Support on one IC system, and Customer Support on another.  When the template is imported, Attendant recreates the call flow tree exactly, but any piece of information that could be server-specific (user names, workgroup names, audio files, skills, etc.) is left blank. Incomplete nodes are flagged as errors, so that you can customize these nodes to match the destination server.  Configuration templates allow developers to build custom solutions for customers, or to deploy an IVR interaction to many servers in an organization.

For Packages: creates a package file that contains a generic copy of the selected nodes’ configuration. The package will contain the general Attendant layout of the selected nodes, but will not contain any server specific information such as workgroup or user names, or audio files. This option can be used to create a template call flow that can be loaded onto a server and then customized.

2.     If you selected Backup, you can optionally back up more than one server at a time. Attendant prompts you to select servers to back up.  It lists the names of connected servers, and the call flow type that is open for editing.  Select server call flows to back up, and then press Next to proceed.

If you selected Full Configuration or Configuration Template back in step 1, Attendant prompts you to select a single call flow configuration.  At this time, inbound, outbound, and operator call flows must be backed up separately for those export types.  Select an item.  Then press Next to proceed.

3.     The last step is to set the destination path and filename of the export file. Select the destination path and type a meaningful file name.  Attendant adds .att to the filename, to identify it as an Attendant configuration file.

4.     Press Finish. Attendant creates the export file for you, replacing existing files with the same name, if any exist.  This file is in binary format and should not be edited manually.

Interaction Client Web Editions

Posted by David Currier
Dec1
dcurrier

The power of the Interaction Client is now mobile. For users who do not have access to the full .Net client on their computer or need to access the client from a location where it is not available, the 3.0 Interaction Client Web Edition is an excellent alternative. It provides basic client functionality including call control, directory access, and presence management… and runs entirely in a browser so that it can be accessed and used from anywhere. However, keep in mind that the web client does not include all the capabilities of the desktop client. Most notably, it supports calls only – sorry, no e-mail, chat, etc. support… yet.

Interaction Client Web Client Edition

A cousin to the Interaction Client Web Edition is the Mobile Web Client. While not including as many features as the full web client (most notably call control), it gives quick, basic functionality including status management, directory access, voicemail, call history, and the ability to place a call (Interaction Center places the call and connects it to your mobile device).

Mobile Web Client

Customizing Interaction Center

Posted by David Currier
Nov24
dcurrier

One of the most significant advantages of the Customer Interaction Center (CIC) product is its flexibility. Out of the box, it has a robust set of features just in Interaction Attendant that enables complex attendant applications without requiring knowledge of a programming language. This includes database and remote data query (SOAP) operations, combined with the ability to logically evaluate and act on the data returned.

Beyond this, CIC also enables customization of event handlers using its own graphical design interface, Interaction Designer. This allows customers to create very complex custom applications within the system while still not requiring the use of a programming language, though a basic understanding of programming concepts is helpful.

Finally, for those who need to leverage the capabilities of Interaction Center to the limit or integrate with in-house custom applications, CIC provides the Interaction Center Extension Library (IceLib), an object-based, strongly-typed, Common Language Specification (CLS) conforming API that gives incredible power to developers using modern .Net languages.