Amazon Connect Emergency Notification System

Emergency Notification?

There are a number of use cases for an application that can process a list of contacts to be notified by voice message of an impending event.  The event may be an emergency or  a notification of a community activity of interest to the list subscribers.   Even an appointment reminder falls into this category, so it is not necessary to have an actual ’emergency’ to have a requirement to mass notify a subscriber or customer group.

Basic Functional Spec

We had need of a “campaign dialer” like a solution and we found that all the parts we needed were available in AWS and Amazon Connect.   We hammered out a basic functional statement that had the following features:

  • The application requires the admin to authenticate;
  • A facility exists to record a new message to be played by the dialer;
  • The Dialer had to be able to simultaneously dial a large number of list members by contact group code;
  • The called individuals could enter a response code  to enable a transfer or follow up action (press 1 to transfer to an agent, Press 2 to reschedule,  etc.)
  • All contacts would be coded as notified even if they hung up, to eliminate redials.
  • A facility exists to reset the database in preparation of a new campaign.

The resulting solution contained the following modules:

  • Dialer Setup Module: (Authorization to use the notification system; Menu to reset database,  record new outbound voice message and initiate outbound campaign
  • DynamoDB table to contain the subscriber or customer list with associated fields to support the application (subscriber name, zip code, result code, etc.)
  • Lambda functions to read/write subscriber database and record audio to prompt file
  • Administrator notification of campaign dialer status through SNS

The solution is coded with four contact flows that enable group alerts to be sent simultaneously.  The AWS services used include Amazon Connect, DynamoDB, Lambda, Kinesis and optionally SNS. Depending on your contact center soft limits, the dialer will contact a minimum of 50 subscribers per phone call.  The following video details the configuration and the entire application is available in the DrVoIP.com store including the lambda functions and sample DB configurations.

 

 

Powerful Amazon Connect Call Back from Queue Configuration Strategies!

The Amazon Connect Call Back from Queue Dilemma!

Assume you have a call center that follows the sun from coast to coast!  You team starts in NY at 7AM EST and ends in California at 7PM PST.    You offer call back options to callers waiting to speak with an agent.   A caller enters the queue at about 6PM PST and leaves a request of a call back when an agent becomes available.   The call center closes at 7PM PST but the call was not yet handled by your contact center.  The next morning, at 7AM,  Agents start the new day and the first call presented to an Agent is from the call back queue, the call left over from last night.  The outbound call is dialed, and your Agent is now speaking to a very angry Customer in San Francisco where the time is no 4AM PST!

The Call Back Queue Problem

Once a caller is sent to the call back queue, there is nothing you can do about this!   Let’s look at some options that we might apply to better control this call back activity:

Call Back From Queue Configuration Options

First, let’s create a switch to turn off call back requests during times outside a 10AM-4PM window.    This is a simple “check hours of operation” step in your queue hold flow.  Check the current time, and if it is outside the window, your contact flow will not offer the  call back option to callers.    This will keep callers from being left in the call back queue over night at the end of the working day.

Optionally, we can still offer the call back, but use the time window to determine if we should route the caller to the call back queue.  We can still offer the call back, but if check the time and find it is outside of the window, we do NOT want to send the caller to the call back queue.  Remember once the caller is in the call back queue, we lose control of the call back!   Using Lambda and DynamoDB, we can write the callers request to a call back list for later processing,  rather than putting them in the call back queue.    We can then develop a watch dog timer, that scans the call back list and when the call back window reopens, we can stuff the caller request into the call back queue.

These options will offer a greater degree of control over the call back process, but what about that San Francisco caller?  How do we make sure we are not calling folks back in the wee hours of the morning?   We need to add additional logic to our function and additional attributes to our database items.   We can look at the area code of the caller requesting the call back, then compare the area code to a time zone map.

 

How can we improve these configuration options?

Clearly you can ask the caller what time they would like to be called back.  That would work and can be an additional attribute in your database items.  You would still use the above configuration options, but also take note of the time range the caller wants to be called back.

Check for existing call back requests!

Your call back configuration should also check to see if this caller has already made a request to be called back?  If you run a call center,  you know folks call in and request a call back, hang up, wait a few minutes and then call right back in and impatiently request another call back as if that might speed up the process.   We need to check our database of call backs and make sure this caller is not already subscribed to a call back request.

Check the caller’s phone number?

After requesting a call back, your configuration should note “I see you are calling from 1-844-4DrVoIP, is that the number you want us to call you back at”?    We can then confirm that number, or ask them to answer another number.

How to get to an Extension number?

The standard call back strategy is to dial the number and hope the target caller is reached.  Unfortunately, more times than not, a receptionist or voice mail IVR answers and wants to know how to complete your call.   Your configuration may need to not only ask for the number to call back on, but an extension number of name of an individual to ask for when the call back is dialed and answered by other than the person who requested the call back!

These are simple but powerful ways of taking the Amazon Connect call back engine and adding features and functionality to achieve a level of control over the call back function.  They distinguish a call center configured with little though to the call back strategy form a call center configured to maximize customer interaction success!

If you would like some help configuring these options, give us a call at 844-4DrVoIP or email and we would be eager to help you! – DrVoIP@DrVoIP.com

 

 

Amazon Connect – Play Pre-Recorded messages to remote Voice Mail?

Recorded Message Use Case

In an outbound  call center an agent may make several hundred phone calls each and every working day.     When the person they dialed does not answer and the call is forwarded to voice mail, the Agent leaves a message requesting a call back indicating who to call and at what number?    The message is most likely very similar for each called party, requiring the Agent to be enthusiastic and engaging for each message left!

Is there a better way?

There is a cheap and dirty way to do this!   Each Amazon Connect Instance has a “Default Outbound” contact flow.   This contact flow is used for all outbound calls even if you do not specify it.  In fact you cant specify it, or an alternative.  Usually in contact flows, you can do a “save as” on any of the sample or default contact flows and then reference them in your own contact flow designs.   The Default Outbound contact flow however can not easily be used n this way.

What you can do is modify the outbound contact flow and add a “set disconnect” step in that contact flow.    This step is activated when the Agent hangs up and the outbound line is still up.   In this use case, the “set disconnect flow” point to a simple contact flow that has  “play prompt” which contains the message you want to leave in the called parties voice mail box.  The agent, hearing the call has been forwarded to a voice mail, simply hangs up!  The contact flow then plays the prompt asking for a call back!  Cheap but very workable!   (This is a video clip that reviews this configuration).

Note: The Lambda function in this configuration is to support a different function, that of selecting the Caller ID the agent wants to display to the called party.  You can see the details of that configuration at this link.

How about multiple message play options?

What about enabling the Agent to select from multiple messages?  Can each Agent have their own pre-recorded messages? The use case would be the same as configuration as above, but with a couple of changes.  The first change is we need to create a custom CCP that would have the buttons we need to indicate which message the Agent wants published to the called party.  This might be individual buttons or it might be a drop down list of available numbers.    Secondly, we would need a lambda function to retrieve the messages from a Dynamodb table prepared for this purpose.

The following video reviews how this configuration might work with a customized CCP.

Give us a call or email DrVoIP@DrVoIP.com if we can help you with this function!

 

Amazon Connect “Auto Post Call Customer Survey”?

Most frequently asked Question about Amazon Connect this week!

At a time when we are buried building “work at home” solutions a question has surfaced as being the most asked question of the week!  Can you write a script that provides “after call” customer evaluations?   The challenge with after call surveys is that they need to be automated with no Agent transfer required.  Why would an Agent transfer an obviously unhappy customer to a post call survey?  The only callers the Agent will transfer are callers who are obviously happy with the manner in which the Agent handled the call.   The requirement is that after the Agent hangs up, the customer previously selected for a survey, is automatically transferred to the survey solution!  (Special thanks to Gordon Campbell Dextr.Cloud CSO for bringing this issue to the table)!

Can we automate the after call survey?

The fact is, using Amazon Connect it is very possible to automate the after call survey.   We have created a solution in which some percentage of inbound callers are auto magically transferred to the post call survey dialog.   The solution can be very simple or implemented with more complex options.  In any case the solution will most certainly involve several other services from the AWS pantheon of technology infrastructure solutions:

  1. Clearly you need an Amazon Connect Instance configured with the DrVoIP Post Call Survey script
  2. A decision needs to be made as to how many calls should be transferred to the survey as a percentage of the total call volume.  From 1-100% are possible.
  3. A decision needs to be made as to the customer answer collection technology.  Are we going to use LEX as a Speech Bot to collect the callers survey response, or is a good old “press 0-9” input acceptable?
  4. The actual survey questions have to be scripted and need to map to either a LEX Intent/Slot or a Touch Tone value.
  5. A lambda function(s) will need to be created to write the results to a database.
  6. A database for the results needs to be available to host the responses by caller.  Left to our own design we would make use of DynamoDB but you can make use of any database you prefer.
  7. A report generation and administration resource needs to be created.

As it turns out the automation of the post call survey transfer was solved and we can do this with little modification, if any, to your Amazon Connect existing contact flow scripts.   The above list, however, determines how much time and effort is required to do provide this facility.   In fact, some folks already have a survey solution and the only requirement is to transfer the caller to that solution.    If we have to create a solution then the complexity of the solution is determined by the answers to the questions and decisions posted above.  For example, using LEX is certainly a real possibility with real benefits. Speaking is always better than hunting and pecking a touch tone input device.   Reading and writing to a database is also not that demanding of a task, though it does  take some time to create reusable functions that are not restricted by the number of questions asked.

The Report Generator!

Actually, the last item is the big expense.  You can have a simple and utilitarian GUI interface to setup the survey questions and report the results.  Using S3 and simple static HTML interface works just fine, but is not as fancy as having a GUI with all the latest flashing and dynamically changing “on click” options.

Survey Options

We have been able to randomize the questions asked, which is a nice feature.   Noting if the caller has already taken the survey in a previous call is also doable.  We are always learning new requirements and when we think we have heard them all, someone comes up with another request!    We actually enjoy the “stump the vendor” game, so please do not hesitate to ask us for features that you dream up!   Post Call automated customer surveys  are most certainly within the scope of what you can do with Amazon Connect!  Just give us a call and we can scope it out in no time!  – DrVoIP@DrVoIP.com

 

 

Give Amazon Connect Phone system features with “Dial by Name” functionality

Press 1 for…. Why?

It is the 21st Century and there are two technologies that are still in use: Fax and DTMF Call Trees!   Why, I am not sure as there are so many more effective technologies available to replace them.  Why we still have caller “self navigation” by “Press 1 for this and Press 2 for that” is one of the great mysteries of life in the 21st Century  (the other is why are folks still sending faxes)?   I get that Speech Recognition used to be so very expensive that it could not be adopted by but the largest enterprise organizations.  Today however, thanks to services like LEX in the AWS ecosystem, there is no longer any economic deterrent to the rapid adaptation of Speech recognition to the basic IVR based call tree.

Phone System or Call Router?

Amazon Connect is not a phone system in the way that Ring Central or 8X8 is a phone system.  Amazon Connect is a call routing solution with telephony functionality that enables call answering, screening, routing and queuing services to be applied using “rules” and “contact flows”.   You can configure a variety of AWS services to significantly enhance the basic call routing engine to achieve superior functionality within a reliable, resilient and elastic cloud based architecture.  Now instead of saying “Press 1 for this and Press 2 for that” we can say “Hello, tell me how I can route your call”?

Amazon Connect Dial By Name Contact Flow

One of our most popular configurations is a “Dial by Name” functionality that we enable on our LEX based, Speech fired automated attendant.   “Thank you for calling DrVoIP, my name is LEX and I can route your call if you speak the name of a function like sales or support, or say dial by name”.    Now that is a powerful caller experience and significantly functional while providing a memorialized  customer experience that differentiates your enterprise from those companies stuck in the 1980’s with DTMF IVR automated attendants.

Building LEX solutions into your Amazon Connect instance is not that complex though it will require a considerable amount of trial and refinement.  If you want to do a dial by name IVR you will also need to be a competent software engineer and have an understanding of both lambda functions and dynamoDB data structures.  (Better yet, contact DrVoIP and we will do it for you)! LEX will prompt your callers to provide spoken input like someones last name, but you will need a lambda function to take that input and use it to index a database structure.  The database will contain the target information you will transfer your caller to.

Interestingly enough,  you can transfer a call to a phone number or the ARN of a Queue, Contact Flow and Prompt.  This makes it very possible to route calls to individual agents within the contact center or to a service in your call center.  The processes requires:

DynamoDB – Table to hold endpoint contact data

Lambda Function – Interaction between Contact Center and LEX

LEX – Speech recogntion BOT to ask callers who or what they want

The new Contact Flow will greet the caller and prompt them to “speak” the name or function they are calling for.    The Lambda function will take the Intent from LEX and pass it to DynamoDB which will return the endPointID that the caller should be transferred.    Not only does this functionality increase the personalization of the customer experience, it significantly reduces the complexity of constructing contact flows by using a dynamic configuration end point ID.

The DrVoIP.com Youtube Channel has a great deal of material on these subjects including a basic configuration and advanced configuration tutorial updated for 2020.   This site also has training materials.

Contact DrVoIP@DrVoIP.com

 

 

 

Amazon Connect Tips, Tricks and Trouble Shooting!

What no Delete for Contact Flows?

One of the first discoveries you will make while configuring contact flows is that you can NOT delete a contact flow.   Once it is created, you can “save as” but you cannot delete it.  There is a good reason for this and hopefully by the end of this blog it will make sense to you.   Out of the Box, Amazon Connect comes pre-configured with a wide variety of contact flows and system parameters.  You will see this listed as sample and default in a newly created instance.  If you poke around you will also see that a schedule of basic hours has been configured along with a basic queue.  There are preconfigured security profiles and preconfigured routing profiles along with a small library of professionally recorded voice and music  prompts.


This pre-configuration and population of basic and default parameters is done for a reason that also helps explain why you cannot delete anything after you create it!   Assume you open a new Amazon Connect instance and following the setup menu, add a telephone number.  Assign that number in the drop down window in the phone number configuration to point to the “Sample inbound flow (first call experience”.   Then call the number.  This Call flow will make use of most if not all of the default and sample contact flow listed in a fresh out of the box, unmodified Contact instance.  Since we did not configure an agent or queue it draws on several preconfigured parameters including the “Default Customer Queue” which describes what a caller hears while waiting for an Agent to become available and the “Basic Queue” along with the “Basic Hours”.

How Amazon Connect stages Default Contact Flows

If you open the “Sample inbound flow (first customer experience)”  note that it does NOT make use the “Default customer queue” step.  How is that we hear it if it is not in the contact flow?  When the call is transferred to an Agent we did not even configure yet (we are logged in as the Instance Administrator on a CCP softphone), we even hear the “Default agent whisper”.   Nor did we configure a Queue?  Likewise if we put the caller on hold we are tapping the “Default customer hold” contact flow.  If we are in Call Wrap up, the caller would be hearing the “Default customer queue” contact flow while awaiting for an agent to become available.

This is the key reason you can not delete anything!  To do so would jeopardize the stability of the Connect Instance.  These defaults assure that configuration newbies cannot stray materially from the experience they intended to configure.   While the Connect instance is setting up an outbound connection to the agent CCP softphone, and even longer if dialing an agent’s hard phone.   The caller will hear the “Default customer queue” experience.  We recommend that you get a “ring back” audio prompt and use that in either the default customer queue or the customer queue you create.  We think it is a bit confusing for a caller to call in and hear music while being transferred.  You should also note the possible impact on your inbound call statistics.   Additionally, note that billing started the moment your caller hit the phone number regardless of the fact that they are not yet connected to an agent.

Creating and Modifying Contact Flows using “Save As”

Each of the Contact flows in an Amazon Connect instance has an Amazon Resource Number or ARN. This is a globally unique identification number and defines every contact flow in the instance.  Generally, you will build a new contact flow from an existing one.  To do this, you first open the contact flow you want to copy and do a save as.    You have to pay attention here, or you will have a big problem!   Some folks open a contact flow,  change the name and make some modifications and then publish it!  It will show up in your list of contact flows, but it will still have the ARN of the original contact flow even though you renamed it!   This means that other contact flows that call on that original contact flow will now get all your changes!   What you want to do is rename the contact flow and do a “save as” in this way you create a new ARN and will not be over writing the original contact flow.

 

Not all Contact flows have all contact flow Options?

There are about 9 different types of contact flows that you can create to meet your call flow requirements.  If you create a new Contact Flow you need to understand that not all contact flow types will have all the contact flow options.  For example if you are describing the experience you want a customer to have while in queue waiting for an agent to become available, you will  open the “Default Customer Queue ” and do a “save as” to create your experience.   Do not expect to find a “Transfer to Flow” option in the list of possible steps as that option is not available in this type of contact flow.  The list of step options changes based on the type of contact flow you are creating, so keep this in mind!

 

Error Handling

Generally, every step in a Contact Flow has an error exit.   We have found that it is best to create a Contact Flow named “error handling” and to use this as the solution to all of the options that you must provide an error exit.

 

Use Speech Markup Language for Text to Speech prompts!

As a consultant deploying call center and IVR solutions, one of the most frustrating aspects of the implementation is waiting for clients to get their voice prompts together!   Generally we will not start an implementation until we have the prompts!  Text to Speech is a life saver for deployment engineers.  You can create prompts on the fly and let people test them, suggest modifications and really fine tune the prompts to achieve the desired level of customer care.   When the prompts are all agreed to, you can then get them professionally voiced or not!  We find that Amazon Polly is an excellent option for prompts but we also suggest that you use the Speech Synthesis Markup Language option.  In all of the prompt areas you can choose between loading a Wave file, or using Text to Speech. When using Text to Speech you have the option of interpreting the text as text or as SSML.     SSML enables you to add tags that can control the various components of speech including tone, pitch, speed and format.   You may want a number read as a phone number for example, rather than a long integer.   SSML is simple to configure and it very powerful.  Learn to use it always and you will have very excellent results.

Don’t forget to assign outbound phone numbers to your Queues

In Queues in which Agents are expected to make out bound calls you must associate a phone number to that queue for outbound dialing.  The Agent will not be allowed to make outbound calls if they do not have a phone number assigned to the queue.  You can also try to put an outbound name in the same configuration area, but there is no guarantee that this name will be displayed to the CallED party.  The phone number will most likely display to the CallED party, however names are provided by multiple options at both the carrier level and the end device level.

Trouble Shooting 101

When trouble shooting Amazon Connect contact flows your best friend is CloudWatch and Contact Flow Filters!   Lets take a look at each of these tools to better understand how they work together to provide a history of how a specific call behaves.    First while in the Connect dashboard you will find under “Metrics and Quality” you will find a  TAB for “Contact Search” .  Selecting this option will enable you to set search filters for the contact record you are trouble shooting.  You can filter on the usual date and time parameters, but also by queue, and by call type and direction (Inbound, Outbound, Transfer, API, Call Back and Queue Transfer).   The goal is to obtain the “ContactId” the key to all activity in the Connect Instance.  If you know this ContactId you can just search for it and skip the filters.  Optionally you can just “Search” and you will see a list of ContactId’ based on the default filter.

Now that you have the Contact ID you can move over to CloudWatch (this assumes you have enabled logging) and you can search for this ContactId record and follow the entire call flow from start to finish,  Go to the CloudWatch service, click on Logs and then locate the “Log group” for your Amazon Connect Instance.  This will pop a list of “Log streams” and “last event time”.  Find a row that closely matches the date and time of your target ContactID and open that log stream by clicking on it.

Note that the time in the even stream is in UTC and matching log times is always interesting.  In this example we searched for a particular Contact ID in the Connect dashboard and it shows that the call we are interested in had a “Initiation TimeStamp” of *7:46 PM”  GMT/UTC  or Zulu  time (if you are military, which all mean the same time reference regardless of where you are located on the globe).

 

The Contact ID is a clickable link, and will bring up some information of interest as contained in the Contact Trace Record.  There will be a Contact Summary, A recording if enabled with the location of the recording and a playback button, Connection Endpoint pairing and Queue information.

Heading over to CloudWatch and checking the respective Log Stream in the instance log group, we find that the time is being adjusted to the GMT offset of the time zone the Instance time reference, which in our case is GMT -7 hours!  S o the Contact Filter Search in the Amazon Connect dashboard is being Time Stamped for GMT/UTC but the log is offset (Terminate at 7:46 PM in dashboard is listed at 12:48 in the CloudWatch logs).   Keeping track of this time offset will drive you a bit nuts, but if you are aware of it, you can figure it out.  SUMMARY – Look in Cloudwatch for the UTC offset in your Connect Instance and NOT the time stamped in the Contact Filter of your Amazon Connect dashboard!

 

 

When searching for records in the CloudWatch logs you will note that you can set it for ROWS or TEXT and you can also select to search by specific times and choose between UTC time or Local Time zone>

When you set your search by ROW you will get an orderly list of multiple Contact ID’s within the event range reported.  Logs are posted about every minute or so.  In an instance with a heavy call flow you are going to find many different Contact ID’s in that event range and will have to search for a specific record using a search filter in the format of “ContactId” = “ca822db4-98aa-4de3-9254-461177a6d259”.   In Text mode you can also search using the CTRL F feature of your browser.

When you use the ROW mode you will get a list of Contact Flow steps that, by pushing the down arrow will open each step for inspection.  This is necessary to see each step of your call flow, what Contact FlowId  was used by ARN.

Selecting the TEXT mode will generate the same list of JSON objects but they will be fully expanded:

CCP Trouble Shooting

There is a very useful tool for testing the connectivity of a specific desktop call control (CCP) to your Amazon Connect instance.  It provides useful information about the latency, resource, reachability and connectivity that are essential base lines for trouble shooting.   Click here!

CCP LOGS

On the CCP you will find the little GEAR symbol and if you click on that you will be able to download the logs for this Agent Desktop.

 

You can open the logs with any text editor and the content often spells out the issue pronto quick!

 

(to be continued)

 

A Call Center for Cheap, Penny Pinching, Tightwads on a budget!

We Design, Deploy, Service and Customize Amazon Connect!

Since 2008 DrVoIP had been working  in the support of VoIP based call centers from CISCO, Avaya and Mitel/ShoreTel solutions.   Since 2017 we have focused exclusively on AWS services with a particular focus on ‘Amazon Connect” call centers.   From Recording and Voice Mail solutions, through Workforce Management and Voice analytics we have provided custom software  integrations on time, on budget and with the highest customer satisfaction scores.  Our references are public, verifiable and serve as a guide to our abilities and commitment to excellence.

We are not here to run up your professional service bill.  We are here to help you realize your call center vision an always work on a “fixed fee” basis.

We deploy “virtually” and “globally” so just click or call! – DrVoIP@DrVoIP.com

DrVoIP fixed cost deployment packages

  • Complete design, deployment and training base package includes:
    • Amazon Connect instance setup in customer AWS Account, with usage billing direct from AWS;
      •  Up to 10 inbound toll or DID numbers
        • DNIS direct to queue routing or 1 IVR DTMF Options Menu
      •  Up to  5 Customer Service Queues
      • English Language support (option for Spanish, French)
      • Unlimited Agents
        • We configure 5 Agents for your use as a template and you configure all the others you may want
      • Up to 5 Routing Profiles
        • Routing profiles bind Agents to the CSQ they are assigned to work in.
      • Voice Mail with Email and SMS delivery
      • Queue Hold  with options for “call back”, voice mail, transfer or continue to hold for Agent
      • Website Chat
        • a single queue connector that enables website visitor to “chat” with call center Agent
      • Dextr Dashboard integration
        • Dextr can provide email routing, text routing, real time and historical reporting
      • Fixed Price Deployment $2995
        • Larger call centers quickly quoted!
    • OPTION PACKAGES
      • Multiple Language support
      • DIAL by Extension
        • Each agent has faux Extension number that can be used for direct call to agent
      • Dial by Name
        • Speech Recognition enables caller to speak a name (i.e. Tom) or function (i.e. Sales)
      • CRM Integration
        • Standard Publish Connector for Salesforce, Zendesk, Freshdesk, ZoHo, ServiceNow and others
          • Functionality defined by the CRM provider and author of the connector
      • CHAT BOT
        • FAQ, or Data acquisition before escalation to a Call Center Agent.
  • Free Trial of Dextr Dashboard is included!

To order an Initial Basic Configuration package and receive a detailed planing guide click here .  Contact DrVoIP@DrVoIP.com or Better yet,  Call 800-946-6127 ask LEX for the the Doctor!

Amazon Connect Call Center build strategy

We offer qualified companies a no cost “Proof of Concept “ (POC) Amazon Call Center Instance built in our portal for your use and testing with your agents able to log in and take phone calls on a number we provide.  A POC can be set up within a few hours!  From the POC, we design and deploy a solution that meets your requirements in your Amazon Connect portal.  We make use of our discovery process and planning guides.   We also build our solutions with our own Agent dashboard, named Dextr.   Dextr  provides the core feature set  that all call center professionals expect including voice, text and email routing to the ‘next available agent’.   We can also provide outbound “auto campaign dialers” to increase agent productivity for notifications, recorded announcements and appointment reminders.

Your TCO is further reduced, when compared to the cost of the  software engineering or professional services required to obtain the same feature set as that available to Dextr subscribers.    Dextr is a UCaaS solution that front ends Amazon Connect Instances with a custom agent dashboard and supervisor display.  Any enterprise with an Amazon Connect instance can onboard themselves at https://Dextr.cloud.  We deploy “virtually” and “globally” so just click or call!

DrVoIP Amazon Connect for the Business Manager

  1. What makes up a Basic Amazon Connect Call Center?
  2. Amazon Connect Discover Questions for Call Center Planning
  3. Amazon Connect Planning Guide
  4. Amazon Connect Historical Reporting Options
  5. The ROI and TCO when using the Dextr Dashboard
  6. Amazon Connect Check List
  7. Amazon Reporting Elements
  8. Understanding Amazon Connect Billing
  9. Amazon Connect & Dextr.Cloud Agent Dashboard
  10. Three Minute Video Overview of the Dextr Dashboard for Amazon Connect 
  11. What are “soft limitations” on new accounts?
  12. Advanced Post Call Survey strategies 
  13. Speech Analytics now a standard part of Amazon Connect and Dextr!

DrVoIP Amazon Connect for the Technical Manager

  1. Amazon Connect Basic Configuration Tutorial
  2. Amazon Connect Custom integration Tools
  3. Amazon Connect Configuration “tips and tricks”
  4. Tech Tip – Understanding LEX BOT Versioning and Alias 
  5. Deep Call Back from Queue without losing your place in Queue 
  6. Simple, Cheap and useful Voice Mail Solution 
  7. Is Today a Holiday Check?
  8. Amazon Connect “Forced Release” Options 
  9. Amazon Connect building prompts with Polly
  10. Building Conversational LEX Solutions
  11. Amazon Connect Call Back from Queue Options
  12. Email Routing in Amazon Connect
  13. What are “Soft Limits”
  14. Building Custom CCP for CRM Integrations
  15. SMS Inbound request for call back 

DrVoIP YouTube Channel – Complete Amazon Connect Configuration training!

Amazon Connect Email Routing using Dextr.Cloud

The Dextr Dashboard for Amazon Connect Agents has added email routing to its existing voice and SMS/MMS channels.   Similar to a voice call, an incoming email message is routed to the next available in the queue assigned for email.   Dextr will collect emails, provide auto responders.   The email is “sticky” and the email conversation will stay with the first Agent to respond to the email until the conversation is ended.  Similar to the Dextr SMS channel, if the original agent is not available to handle the follow on conversations, the entire conversation will be forwarded to the next available agent.

Setup is easy, in the Channels tab of a Dextr user with Administrator permissions, simply enter the appropriate email user, password, imap and smtp host address!  Then configure the queue that should be the target of an inbound email along with the initial email auto responder and the end of conversation auto responder.  Multiple emails can be established and can point to different customer service queues!

Email setup and queue selection!

Agents can manage email and voice calls depending on the permissions and queue assignments.  Creating an email named CustomerCare@yourcompanyname.com can be routed to the customer service team.  Email is an asynchronous yet powerful customer tools and many folks prefer it to waiting on hold for the next available agent!  When an incoming email is routed to an available agent, they accept the mail exactly as they do a voice or sms call.   Opening the ENGAGE EMAIL tab displays the content of the incoming email.  As the email conversations ping pongs back and forth, the agent will see the entire email conversation in the ENGAGE portal.

The Agent will find the accepted email in the email client registered for that agent’s email box.   The agent will then respond to the email and Dextr will assure that the recipient of the email sees that it is from the address of the origitanl email TO: filed.   There is a button to END the conversation and when clicked, the final auto responder defined during the email channel setup, is sent to the author of the original incoming email.  (Those familiar with ShoreTel ECC routing will be very comfortable with this email implementation which has the additional benefit of being “sticky”.  If the agent who originally responded to the incoming email is unavailable, the entire email conversation is forwarded to the next available agent for follow up.

Dextr email routing is a bundled feature in your subscription and you should give it a try!  Price is what you pay, value is what you receive.   DrVoIP@DrVoiP.com

Amazon Connect Call Center Planning

Basic Amazon Connect Configuration  Overview

Creating an Amazon Connect cloud based call center is relatively easy for a non-technical business process manager to implement.  You do not have to be a software engineer to get a basic inbound call center operational in a remarkably short time, often less than an hour.   Setting up a basic inbound call center however, is generally not going to meet your over all call center functional requirements and you will need some software engineering assistance from not only experience call center professionals, but from engineers who are certified and experienced in all Amazon Web Services!  A Call Center will generally require some integration with CRM solutions, or databases that can provide custom routing based on customer historical interactions.     You may also want to replace old world phone trees or Interactive Voice Response (IVR) systems with modern Chat Bot options!   Why “press 1 for this, or press 2 for that” when the natural language speech processing is available.

What Information do we need to setup our Call Center?

Generally a basic startup inbound call center deployment starts with a Call Flow Plan.   To help you better understand the concept of “Call flow”, lets walk through a basic Amazon Connect configuration:

  1. First you will need to create an Amazon Web Service Account.  This is very simple and though there is a free tier, you will need to put in a valid credit card to open the account.
  2. Once you create the account as the root owner, you will then need to go to IAM and create a user account that has permissions to create an Amazon Connect instance and also to access the various other services your call center may need.
  3. This new user should then login and find Amazon Connect and launch a new instance in the Region you want to make use of (i.e. US-East)
  4. Once the Instance is created you will do the following in this order:
  • Claim a Phone Number – You claim a number through Amazon and it can be either toll free, or a direct dial local number of your choice
  • Establish your Business Hours of Operation – When are you open and when are you closed?  Global or by Customer Service Queues
  • Create Customer Service Queues (CSQ) – Technical Support, Customer Service and Sales are typical examples
  • Create Prompts – What does a caller hear at each step through the call flow?  You can do these in TEXT format for conversion to speech and then later, when firm, record with human voice
  • Create Contact flows (Call Flows) – Answer Call, Play Prompt 1, Get caller input, route to caller choice, queue if no agent available. Here is a short video we created on the importance of good call flows.
  • Create Routing Profiles – Queues are placed in these profiles. Users are put in Queues together they determine who handles what callers
  • Create Users and assign them to Routing Profiles

This information will be the basic configuration required to build a very basic Inbound call center.  With this information complete, Agents will be able to log into the customer service queue they are assigned to handle.   You should be able to call your claimed number and be routed through your flow to an available agent.  If not agent is available, callers will queue and listen to the care prompts you have provided.   All this is captured in both real time metrics and historical reporting.

Moving from a Basic to an Intermediate Call Center

You basic call  center will have many additional requirements that will generally require a more experienced design and implementation engineer to become involved!  So lets revisit the items under step 4 above and look at the options that might exist beyond that basic configuration:

Claim a Phone number – Generally you will call forward your existing number to this new call center number.  Optionally, you can “port” or move your current number directly to Amazon.   More importantly, you will generally have more than one phone number.   Phone numbers generally terminate in either an IVR or directly into a CSQ.   Ideally if you can assign a phone number directly to a CSQ you can avoid prompting callers to select from a menu and this is always a better solution.   Why “Press 1” for Spanish, if you could publish a number that is always speaking Spanish.   If the Caller is going to be prompted by an IVR, the question is what does that menu of options include?  Someone has to write this out so that the various outputs can be mapped to required call flows.  The next question is should this be a “Press X” type of IVR or would a natural language speech interface be more appropriate?  What would you prefer to have your callers hear? “Please press 1 for sales and 2 for service” or “Thank you for calling, how can I direct your call”?   Amazon has a service named LEX (you may have heard of his sister Alexa) that can be added to replace or augment the old “Press” option menu!

Business Hours – Seems straight forward, you list out your work days and your closed days.   The real question is do all CSQ’s fall under the same time calendar? Or is Technical Support open on days and times when the Sales line might be closed?  If so you will need to create a business hours time/calendar for each CSQ in your deployment.   You might also want to create a business hours schedule for when we stop offering callers the call back option.  For example, we are open from 9-5 Monday through Friday.  However, at 4:30 we do not want customers holding for an Agent to be offered the option of a call back.  This would require a dedicated business hour schedule for that function.

Create CSQ’s – Clearly each queue has to have a unique personality, schedule and agent pool.  The call flow for each queue may be different.  Some options offered callers to Technical support may not be offered to callers to the Sales line!  Just create a list of queue names to become part of your call center call flow.

Create Prompts – Generally we encourage the creation of prompts to be among the first items on your “to do list”.  Thinking through the message your callers hear as they self navigate your call center can help you plan  your call flows more effectively.    Amazon offers a service that is build into Amazon Connect named Polly!  Polly is a “text to speech” engine and a great tool for developing prompts.  We prefer to use this solution until we debug your call center call flow and everyone agrees the prompts are exactly as required. Then, even though Polly has many excellent voices to choose from, you can then have these scripts professionally recorded.   We can help you with that as well!

Contact Flows – This is the basic blue print for how your call center works!   It is a series of building blocks that define the customer experience from the first incoming ring, until the last interaction and call termination.   Each Phone number that enters the call center needs to have a diagramed “call flow” that shows the various steps the caller is to navigate.  It might look something like:

  • Call is received after business hours and hears “You have reached us outside of our normal business hour M-F 5-9.  Please hold and we will transfer you to the message center”.
  • Caller is answered with prompt “thank you for calling, you call will be recorded for service improvement”;
  • Caller is routed to IVR Tree: “Please Press 1 for Sales and 2 for Service”
  • Caller that Presses 1:  Capture the Caller ID and use that to look up the caller in Salesforce.Com and then transfer the caller to the next Available Agent in the Sales CSQ along with the SalesForce screen pop.
  • Caller that Presses 2; Is transferred to another IVR menu: “Please Press 1 for new order, or press 2 to check the status of an existing order”.   Caller that Press 1 is sent to SalesNewOrders CSQ.  Caller who presses 2 is transferred to another IVR: Press 1 if you know your order number”

Clearly this would be better drawn as a “organizational chart” but we think you get the  basic requirements of a call flow.  When working in Amazon Connect your call flows will be graphically constructed and look something like this:

 

Create Routing  Profiles – Call profiles are used to match callers to a queue or a list of queues.   So a phone number might point to a contact flow that offers the caller a choice between Sales and Service.   Choosing Sales, for example will route the caller to a profile that contains a list of Sales Queues and priorities.  You might say route the caller to Sales and if they are not answered within 60 seconds route them to customer service priority queue for handling.  Call profiles enable the list of queues, the order of queues and the priority of queues for this reason.

Major Functional Feature Enhancements

It is rare to find a call center that does not have a requirement to integrate with a CRM package like Salesforce.com,  SugarCRM or EPIC.    Often enterprises will have a custom database on their internal network that contains customer specific information that can be used to assist in routing callers, or providing additional screen pops to agents.   Chat Bots are also becoming important in off loading typical requests to an automation process that speaks natural language!   Did you know that Amazon Web Services has a range of services that include transcription, language translation and language comprehend?  You can run your voice recordings through a transcribe utility that you can then “key word search” to help improve agent productivity.  Or run that same recording through a language translation service that can take input in one language and create out put in another language.  How about TEXT messaging and Email Options?    Not all customers want to call, some may want to send an email or text message to the next available agent.  The functionality of your call center is shaped only by your imagination!  If you can envision it, Amazon Connect can implement it!

Other Useful DrVoIP Amazon Connect Subject Matter Posts and FAQ page!

We have yet to find a Call Center requirement we could not implement with Amazon Connect and the every growing library of Amazon Web Service solutions!  If you can imagine it, we can implement it.   Let’s put our heads together and construct a call center that meets and exceeds your call center requirements!   Contact DrVoIP@DrVoIP.com, or Call 844-4-DrVoIP – and ask for the Doctor!

 

 

 

 

 

 

 

 

 

 

 

The ROI of the Dextr Dashboard for Amazon Connect Call Centers!

Amazon Connect the Call Center!

Amazon Connect allows you to tap the very rich library of AWS Services including AI, Natural Language Processing, text to speech, transcriptions and translations!   Your Amazon Connect instance is scalable, resilient and fully redundant in the most widely respect cloud on the planet.  If you can “dream”  it, you can create a call center that meets your exact requirements.   Amazon Connect enables even a non-technical professional the simplicity of configuring an inbound call flow, attaching a phone number, defining agents and operating hours and in less than an hour, you are taking phone calls. Given that every call center has some kind of database integration required to pop screens, or route callers, you do need some software engineering and consulting services to get to the next level of feature sets and functionality.

That is why we think the Dextr Dashboard, at less than a penny a minute all but pays for itself.

Lets look at some feature examples:

Assume you would like to add “Holiday Schedules” and “Ad-hoc closings” to your Amazon Connect feature set.  Out of the box, Amazon Connect does not have Holiday schedules.   This is not a very complex feature set to implement if your are a software engineer.  Add Amazon DynamoDB as the database engine to store you Holiday list and Amazon Lambda to be the code that checks  to see if “Today Is a Holiday” is a TRUE value, returning that result to to your Amazon Connect Contact Flow.  If it is true that today is in fact a holiday, we want to route you to some options for handling your call while we the call center is closed!

As a Supervisor you may want to close your Customer Service Queue (CSQ) to hold a team meeting.    You will want to do this yourself without having to fill out a service request for the Admin team.   Ideally you will want to identify the meeting as “technical support team weekly update”, set the date and time of the meeting and even create a custom prompt to be played to the caller if they reach this CSQ during the time the meeting is taking place.   Again, given the library of AWS services available this is relatively straight forward for an implementation engineer.  You will use the same tools as the above Holiday schedule but you will need to add in Poly for text to speech to get that custom prompt.

AgentUser Interface or “dashboard”?

Then again there is the issue of how do you interface with Amazon Connect to implement those simple features?   You are going to have to create some user friendly graphical interface that simplifies this magic and makes it easy for the Supervisor to do this on their own without technical support from the IT or Admin team.    In fact, you will most likely want to have a user interface that can stand the test of time as you continue to enhance your Amazon Connect feature set!   This graphical user interface should also work on multiple devices in addition to your desktop computer.  Devices like smart phones and pads for mobile supervisors and remote agents!

How much does feature development cost?

So using the two features above as an example, Holiday Schedules and Ad-hoc closings, let’ look at the cost of design, deployment, training and ongoing support.    First, you would contract with a competent, experienced and Amazon certified development resource.    Let’s assume that you contracted with DrVoIP, a certified Amazon Connect Service Delivery partner.    You would expect a written statement of work (SOW) and a budget.   This might look something like this:

  1. Holiday Schedule – Enables the creation of a holiday list that indicates the date and time during which specific customer service queues may be closed.   The application should enable both full day and half day closings.   The application should allow for different schedules to be applied to different customer service queues.   The contact flows for each of the affected customer service queues will be modified to incorporate this functionality. – 40 hours
  2. Ad-hoc  closing with custom prompt- Enables an individual with Supervisor permissions to configure and close a customer service queue.  The Supervisor must be able to set the time and date. the date must also be able to be for multiple days.  Additionally, the Supervisor should be able to create a new prompt to be played to the caller during the closed period.The contact flows for each of the affected customer service queues will be modified to incorporate this functionality. 40 hours
  3. Front End GUI – Develop a simple administrative user interface to enable the configuration and management of the above  two features.  Assure that the interface has growth potential to enable the addition of new functionality as it is developed. – 40 hours
  4. User Training and “go live” support.  – 5 hours
  5. Project budget for DrVoIP Virtual Implementation model  125  hours at the already ridiculously low price of $135 an hour = $16,875

Why Dextr is “almost free”!

The Dextr Dashboard includes this basic functionality.   Dextr has a price of less than 1 penny a logged in minute (e.g. .007).   This means you could drive a Dextr Dashboard for 2,410,714.29 or 5,035 days!  Given an agent day of 480 minute, you could drive a 20 agent call center for a year!

Now Consider that full range of Dextr Dashboard features and the value proposition sky rockets!

  • Nothing to install! Instant Access via https://go.dextr.com which has video instructions for on-boarding;
  • Customizable Logo and YourCompany custom log-in URL;
  • Role based Login (supervisor, agent, administrator)
  • SAML support;
  • Agent Team Status Display;
  • Agent to Agent Chat
  • Agent Call Activity with (click to return call);
  • Directory System with Click to call;
  • Help Button – Alert Supervisor;
  • Queue Monitor – including calls in queue, max waiting time; optional red, yellow tags)
  • Personal Recording; (permission option);
  • Supervisor Permissions add: Login/Logout (change agent state) Monitor, coach and Barge in;
  • All Recording search and play (see note 1 below);
  • Real Time Metric review Report Generation
  • Ability to set Holiday Schedules and “ad hoc” closings with new close prompt (think team meeting).
  • Push Announcement String out to Agent Dashboard for alerts and other notices.
  • Omni-Channel SMS/MMS enables test and pics to the next available agent
  • Omni-Channel email routing to the next available agent
  • “no headset” audible alert options for softphone

Head over to https://Dextr.Cloud and sign up for a “free trial”.   What?  You do not have an Amazon Connect call center?  Then give us a call and we will build you a proof of concept and then migrate you to the cloud based call center of your dreams!  – DrVoIP@DrVoOIP.com